diff options
| -rw-r--r-- | sci-ml/kineto/Manifest | 1 | ||||
| -rw-r--r-- | sci-ml/kineto/files/kineto-0.4.0_p20250617-gentoo.patch | 74 | ||||
| -rw-r--r-- | sci-ml/kineto/kineto-0.4.0_p20250617.ebuild | 51 |
3 files changed, 126 insertions, 0 deletions
diff --git a/sci-ml/kineto/Manifest b/sci-ml/kineto/Manifest index d09e4e3bc2c0..b18d0acfc144 100644 --- a/sci-ml/kineto/Manifest +++ b/sci-ml/kineto/Manifest @@ -1 +1,2 @@ DIST kineto-0.4.0_p20250214.tar.gz 8276188 BLAKE2B 45a07fe6dbfb68dcba4c637851404fbea7e15642b97e30baf8dbce3a9b80a6e0662ce684027aa5a00da0ff86daf028e2ea173451857264e8a5f5800629bdc767 SHA512 614f7ec7e0bcbd816d01b704a85efadd6340a322ebf60920b72717c65034b1ea60cab65243833b651482465fc145211bed25de83592801e4b9e955839f404b20 +DIST kineto-0.4.0_p20250617.tar.gz 8282683 BLAKE2B 91993fef72e04da98ba6443e164876ec475daf5fc3ce34851f2ae968fce00a3650278eac3cb96b940705c4a58aba3b296c0bc2cc9edc54f3a01891d473f07ee8 SHA512 921b96a56e01d69895b79e67582d8977ed6f873573ab41557c5d026ada5d1f6365e4ed0a0c6804057c52e92510749fc58619f554a164c1ba9d8cd13e789bebd0 diff --git a/sci-ml/kineto/files/kineto-0.4.0_p20250617-gentoo.patch b/sci-ml/kineto/files/kineto-0.4.0_p20250617-gentoo.patch new file mode 100644 index 000000000000..f16f436f0eff --- /dev/null +++ b/sci-ml/kineto/files/kineto-0.4.0_p20250617-gentoo.patch @@ -0,0 +1,74 @@ +--- a/CMakeLists.txt 2022-05-24 11:16:18.537610972 +0200 ++++ b/CMakeLists.txt 2022-05-24 11:19:15.011073535 +0200 +@@ -169,7 +169,8 @@ + CXX_STANDARD_REQUIRED YES + CXX_EXTENSIONS NO) + +-set(KINETO_COMPILE_OPTIONS "-DKINETO_NAMESPACE=libkineto") ++set(KINETO_COMPILE_OPTIONS "-DKINETO_NAMESPACE=libkineto" ++ ${CMAKE_SHARED_LIBRARY_C_FLAGS}) + list(APPEND KINETO_COMPILE_OPTIONS "-DFMT_HEADER_ONLY") + list(APPEND KINETO_COMPILE_OPTIONS "-DENABLE_IPC_FABRIC") + list(APPEND KINETO_COMPILE_OPTIONS) +@@ -198,7 +200,7 @@ + target_compile_options(kineto_base PRIVATE "${KINETO_COMPILE_OPTIONS}") + target_compile_options(kineto_api PRIVATE "${KINETO_COMPILE_OPTIONS}") + +-if(NOT TARGET fmt) ++if(FALSE) + if(NOT FMT_SOURCE_DIR) + set(FMT_SOURCE_DIR "${LIBKINETO_THIRDPARTY_DIR}/fmt" + CACHE STRING "fmt source directory from submodules") +@@ -216,9 +218,7 @@ + set(BUILD_SHARED_LIBS ${TEMP_BUILD_SHARED_LIBS} CACHE BOOL "Build shared libs" FORCE) + endif() + +-set(FMT_INCLUDE_DIR "${FMT_SOURCE_DIR}/include") + message(STATUS "Kineto: FMT_SOURCE_DIR = ${FMT_SOURCE_DIR}") +-message(STATUS "Kineto: FMT_INCLUDE_DIR = ${FMT_INCLUDE_DIR}") + if (NOT CUPTI_INCLUDE_DIR) + set(CUPTI_INCLUDE_DIR "${CUDA_SOURCE_DIR}/extras/CUPTI/include") + endif() +@@ -232,15 +232,14 @@ + set(ROCM_INCLUDE_DIRS "${ROCM_SOURCE_DIR}/include") + endif() + +-set(DYNOLOG_INCLUDE_DIR "${LIBKINETO_THIRDPARTY_DIR}/dynolog/") +-set(IPCFABRIC_INCLUDE_DIR "${DYNOLOG_INCLUDE_DIR}/dynolog/src/ipcfabric/") ++set(DYNOLOG_INCLUDE_DIR "@GENTOO_PORTAGE_EPREFIX@/usr/include/dynolog/") ++set(IPCFABRIC_INCLUDE_DIR "@GENTOO_PORTAGE_EPREFIX@/usr/include/dynolog/src/ipcfabric/") + + message(STATUS " CUPTI_INCLUDE_DIR = ${CUPTI_INCLUDE_DIR}") + message(STATUS " ROCTRACER_INCLUDE_DIR = ${ROCTRACER_INCLUDE_DIR}") + message(STATUS " DYNOLOG_INCLUDE_DIR = ${DYNOLOG_INCLUDE_DIR}") + message(STATUS " IPCFABRIC_INCLUDE_DIR = ${IPCFABRIC_INCLUDE_DIR}") + +-add_subdirectory("${IPCFABRIC_INCLUDE_DIR}") + target_link_libraries(kineto_base PRIVATE dynolog_ipcfabric_lib) + + target_include_directories(kineto_base PUBLIC +@@ -247,7 +246,6 @@ + $<BUILD_INTERFACE:${LIBKINETO_INCLUDE_DIR}> + $<BUILD_INTERFACE:${LIBKINETO_SOURCE_DIR}> + $<BUILD_INTERFACE:${DYNOLOG_INCLUDE_DIR}> +- $<BUILD_INTERFACE:${FMT_INCLUDE_DIR}> + $<BUILD_INTERFACE:${IPCFABRIC_INCLUDE_DIR}> + $<BUILD_INTERFACE:${CUPTI_INCLUDE_DIR}> + $<BUILD_INTERFACE:${CUDA_INCLUDE_DIRS}> +@@ -259,7 +259,6 @@ + endif() + + target_include_directories(kineto_api PUBLIC +- $<BUILD_INTERFACE:${FMT_INCLUDE_DIR}> + $<BUILD_INTERFACE:${LIBKINETO_INCLUDE_DIR}>) + + if(KINETO_LIBRARY_TYPE STREQUAL "static") +@@ -300,8 +297,6 @@ + if(DEFINED LIBKINETO_NOXPUPTI AND NOT LIBKINETO_NOXPUPTI) + target_link_libraries(kineto "${XPU_xpupti_LIBRARY}") + endif() +-target_link_libraries(kineto $<BUILD_INTERFACE:fmt::fmt-header-only>) +-add_dependencies(kineto fmt::fmt-header-only) + + install(TARGETS kineto EXPORT kinetoLibraryConfig + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} diff --git a/sci-ml/kineto/kineto-0.4.0_p20250617.ebuild b/sci-ml/kineto/kineto-0.4.0_p20250617.ebuild new file mode 100644 index 000000000000..64e7ec8a5f0d --- /dev/null +++ b/sci-ml/kineto/kineto-0.4.0_p20250617.ebuild @@ -0,0 +1,51 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..14} ) +inherit python-any-r1 cmake prefix + +CommitId=5e7501833f1021ce6f618572d3baf657b6319658 + +DESCRIPTION="part of the PyTorch Profiler" +HOMEPAGE="https://github.com/pytorch/kineto" +SRC_URI="https://github.com/pytorch/${PN}/archive/${CommitId}.tar.gz + -> ${P}.tar.gz" +S="${WORKDIR}"/${PN}-${CommitId}/libkineto + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="test" + +RDEPEND=" + dev-libs/libfmt + dev-libs/dynolog +" +DEPEND="${RDEPEND}" +BDEPEND=" + test? ( dev-cpp/gtest ) + ${PYTHON_DEPS} +" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-0.4.0_p20250418-AppxClock.patch +) + +src_prepare() { + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DLIBKINETO_THIRDPARTY_DIR="${EPREFIX}"/usr/include/ + -DKINETO_BUILD_TESTS=OFF # tests require cuda toolkit + -DCUDA_SOURCE_DIR=/opt/cuda + -DLIBKINETO_NOXPUPTI=Yes + ) + eapply $(prefixify_ro "${FILESDIR}"/${P}-gentoo.patch) + + cmake_src_configure +} |
