summaryrefslogtreecommitdiff
path: root/sci-libs/hipFFT
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-06-29 12:04:12 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-06-29 12:04:12 +0100
commit0f558761aa2dee1017b4751e4017205e015a9560 (patch)
tree037df795519468a25d9362b4e95cdaeb84eb1cf9 /sci-libs/hipFFT
parent752d6256e5204b958b0ef7905675a940b5e9172f (diff)
gentoo resync : 29.12.2022
Diffstat (limited to 'sci-libs/hipFFT')
-rw-r--r--sci-libs/hipFFT/Manifest5
-rw-r--r--sci-libs/hipFFT/files/hipFFT-5.0.2-gentoo-install-locations.patch28
-rw-r--r--sci-libs/hipFFT/files/hipFFT-5.0.2-remove-git-dependency.patch35
-rw-r--r--sci-libs/hipFFT/hipFFT-5.0.2.ebuild77
4 files changed, 145 insertions, 0 deletions
diff --git a/sci-libs/hipFFT/Manifest b/sci-libs/hipFFT/Manifest
index 53a3b2a4fa30..7c6df9ba6773 100644
--- a/sci-libs/hipFFT/Manifest
+++ b/sci-libs/hipFFT/Manifest
@@ -1,7 +1,12 @@
AUX hipFFT-4.3.0-add-complex-header.patch 381 BLAKE2B 962865d4dd1a38bbc4e70756d614c92a287029e5bd6d987e8adbabb4b33a83e616cc1156bfc5dc415124d25373e146178a99854972d957039654007d5d3d5122 SHA512 8dfda0eb470005b9ed4701dbf0a1022040ce6bc90f0e04ca16704083074047b5170396257c1aa8c5d0855c055e491249c63516f4f1ba7583d5214f39705433fa
AUX hipFFT-4.3.0-gentoo-install-locations.patch 1959 BLAKE2B 1f603bc411eda7aa7b999f3eb3c52822b27be51c2101562cd259d68856b019957c512add96f1c28ff0cb8ad58ab1911be3b97ffc9542758abae40f5e2e5b3d19 SHA512 4c358996e41750f938cb4997825aa00adbcda39b90bf0d3fbf180edecff57a1f7bf5d6c6e26c7b60274a1c1316858b911b69bf20e823a064d81fed498b3edf23
AUX hipFFT-4.3.0-remove-git-dependency.patch 1505 BLAKE2B e98eb5b680ef2b5e45f85af8e93e25723dceebd6c849ca65ca132dab83a0eae7933c67affbf020a604c4773147907d40ccabe6cf2df6c92e213f5cab9a3e4736 SHA512 9d3c048d6f4242499d07d3c45baffc39f1766e3411d1e106ccdbae1325543d7df883531c0d2969b67805dd75bc505a63c3d3818ca5d141bbbcf8984f8d51a418
+AUX hipFFT-5.0.2-gentoo-install-locations.patch 978 BLAKE2B 3f452b7cf2dd9286a38f94890520d3de92932acba43de60ed66c866fed3b39e56139ff51e345301b41ac7bd0deabdedb040e9a1f80504504fffe87f5bdd4a496 SHA512 2bdfa7804a5ddb7913dc43e5835e16d498e7e08a4678f0de97eafa7829d6da4197bb3bc25824c357e9dc1bdb966f279e7950e8298bd36a16c1e1c43ae09b5484
+AUX hipFFT-5.0.2-remove-git-dependency.patch 1489 BLAKE2B 800033e728c4871c9c8de797779f3c9ca0f3441e1946068e4d826aabf02d1e27145e0fc627ae583ac27eaa43abeafba271fda48c22d087eda3cdace18cd62af2 SHA512 4c0ca6282b3fccf99d7ae25c17f5961b10b0ff49e1d1e1a65055d7ff20fe4a17901b8c5e9ec78953a2de86ab9408f583eb85cc211db1e2dc339fb8e2217a9f10
DIST hipFFT-rocm-4.3.0.tar.gz 83355 BLAKE2B ee99b4cb685cbb846084d8a7c77982d75cf0d1597f9270260284bb26ae00702a31dd4d5ad9ae1885ab631c390f65c0f584f302be189701ba4f0dd9061b1bba5a SHA512 0d3100b054ff485eae06b13b8c568626b8e3a3286f36012c5a5f9bb4918e03c30c687a2714049bd797f6c3973f1730ad0936f02ad044cde1663c9c5750bbcf40
+DIST hipFFT-rocm-5.0.2.tar.gz 88405 BLAKE2B c3a2e5e029d7d91c7cdc1c4e2ddec71c17df0cf2d863c81ef263eea3734488fcc31795ea681b27dffd04c0833c99df252256c3ffacfbf29305fa1ba5b8bd4efa SHA512 4fdc080479f1094e9ce92acc0eceb630a6a6ce711ffdc5ffef58d61baf23e8ea9ec45a922d798fb17a7724425d5785451f5f114bc7db40ebbfb50359b56456a6
DIST rocFFT-4.3.0.tar.gz 840748 BLAKE2B 236a5faa930751d35e501a9a32ecc8b4075448ef21a0ffb0bb7ec04f4ed1cb67b908aa153b5b424e0823d3e306cf375d7c01a77d687220ed79de6d374037e003 SHA512 765d41e4018a04a53e847c03de80eec830d3e8766187fb8cb493624afa2673175347c16e6eeeebd4ad7d88bb866e58f7e572708f22238723c710b98565a0cd3d
+DIST rocFFT-5.0.2.tar.gz 837508 BLAKE2B b74d0c6edd7b232f775bffefbca829d88d9d7cd9108c27a0698f45d7fe2760d40463bcda8c710e923874b3bbfb1e83e0fe8622db4dfa28afb29392b3e135e9a5 SHA512 d6810a92a10a27dbcac8a04e8fcd56c7fa198f208da626d8938d5ff28b6ab8b89a058c7a56b5666464165e8f6bd7c4c031a94315625a3613eb02a9b8eccd9eb9
EBUILD hipFFT-4.3.0.ebuild 1885 BLAKE2B fd0653407acbeaaf3276535b64ddbc4ed33bebcf428b5de47561b583077e30da92314cdfa03a9f1ec1d488dbef38cadbb62087cc8181d8567b1df6aa4ae33c8f SHA512 0ebd42f6b2ae1e1719d227b96bc51023e2117751b6bf4e39ed44f46a81967d8fe9946abb4975eb7bcbad656ded7cbf5a1473e3ceb82ddb90b6546c0c2992b7cf
+EBUILD hipFFT-5.0.2.ebuild 1920 BLAKE2B 4219451958bea97b48850a26e36048486158b3c19a30702ac283c54a4f0f60cf725a5a122807c86e91348f41be293c7207e4e632224a1bab869aab49e21a6280 SHA512 8061026feaab2bb883e728a0bb064c3a31d0860aa646950ed36130dbd2b1429bb076f1b8f2b01a567c51fcf7a54e36a78765645bddb158efe9e3d69732a1f219
MISC metadata.xml 727 BLAKE2B 29e2218926627115b138fc101b5d582d4c6fd29b998bd92d23f8e2a63b33e9882d312bf5ab766d72757a4a2abb1f29357e4d95c663e3525ec536a86b325ff0b9 SHA512 e8d1501ce980d5fba12bdbbc5ef1a17c13c5cfe16cd3ae9f89d151cb8843f4ef581b2c807814e9af542ce94d9924dfade9efd1e1527444b1464132ae2601d208
diff --git a/sci-libs/hipFFT/files/hipFFT-5.0.2-gentoo-install-locations.patch b/sci-libs/hipFFT/files/hipFFT-5.0.2-gentoo-install-locations.patch
new file mode 100644
index 000000000000..eefdb2aaaaf5
--- /dev/null
+++ b/sci-libs/hipFFT/files/hipFFT-5.0.2-gentoo-install-locations.patch
@@ -0,0 +1,28 @@
+Index: hipFFT-rocm-5.0.2/library/CMakeLists.txt
+===================================================================
+--- hipFFT-rocm-5.0.2.orig/library/CMakeLists.txt
++++ hipFFT-rocm-5.0.2/library/CMakeLists.txt
+@@ -81,7 +81,7 @@ target_include_directories( hipfft
+ PUBLIC $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/library/include>
+ $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include>
+ $<BUILD_INTERFACE:${HIP_INCLUDE_DIRS}>
+- $<INSTALL_INTERFACE:include>
++ $<INSTALL_INTERFACE:include/hipfft>
+ ${HIP_INCLUDE_DIRS}
+ )
+
+@@ -142,13 +142,11 @@ if( ROCM_FOUND )
+ rocm_install_targets( TARGETS hipfft
+ INCLUDE
+ ${CMAKE_SOURCE_DIR}/library/include
+- ${CMAKE_BINARY_DIR}/include
+- PREFIX hipfft )
++ ${CMAKE_BINARY_DIR}/include )
+ rocm_export_targets( TARGETS hip::hipfft
+ PREFIX hipfft
+ DEPENDS PACKAGE hip
+ NAMESPACE hip:: )
+- rocm_install_symlink_subdir( hipfft )
+
+ # Package specific CPACK vars
+ if( NOT BUILD_WITH_LIB STREQUAL "CUDA" )
diff --git a/sci-libs/hipFFT/files/hipFFT-5.0.2-remove-git-dependency.patch b/sci-libs/hipFFT/files/hipFFT-5.0.2-remove-git-dependency.patch
new file mode 100644
index 000000000000..fb2c97936a42
--- /dev/null
+++ b/sci-libs/hipFFT/files/hipFFT-5.0.2-remove-git-dependency.patch
@@ -0,0 +1,35 @@
+Index: hipFFT-rocm-5.0.2/cmake/dependencies.cmake
+===================================================================
+--- hipFFT-rocm-5.0.2.orig/cmake/dependencies.cmake
++++ hipFFT-rocm-5.0.2/cmake/dependencies.cmake
+@@ -21,9 +21,6 @@
+ #
+ # #############################################################################
+
+-# Git
+-find_package(Git REQUIRED)
+-
+ # HIP
+ if( NOT CMAKE_CXX_COMPILER MATCHES ".*/hipcc$" )
+ if( NOT BUILD_WITH_LIB STREQUAL "CUDA" )
+Index: hipFFT-rocm-5.0.2/clients/CMakeLists.txt
+===================================================================
+--- hipFFT-rocm-5.0.2.orig/clients/CMakeLists.txt
++++ hipFFT-rocm-5.0.2/clients/CMakeLists.txt
+@@ -54,16 +54,6 @@ list( APPEND CMAKE_MODULE_PATH ${CMAKE_C
+
+ include( build-options )
+
+-if( GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git" )
+- message(STATUS "rocFFT submodule update")
+- execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive
+- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/clients/rocFFT
+- RESULT_VARIABLE GIT_SUBMOD_RESULT)
+- if( NOT GIT_SUBMOD_RESULT EQUAL "0" )
+- message(FATAL_ERROR "git submodule update --init --recursive failed with ${GIT_SUBMOD_RESULT}, please checkout submodules manually.")
+- endif( )
+-endif( )
+-
+ if( NOT EXISTS "${CMAKE_SOURCE_DIR}/clients/rocFFT/CMakeLists.txt" )
+ message(FATAL_ERROR "The rocFFT submodule is not present! Please update git submodules and try again. ${CMAKE_CURRENT_SOURCE_DIR}/clients/rocFFT/CMakeLists.txt")
+ endif( )
diff --git a/sci-libs/hipFFT/hipFFT-5.0.2.ebuild b/sci-libs/hipFFT/hipFFT-5.0.2.ebuild
new file mode 100644
index 000000000000..bf7e339f002a
--- /dev/null
+++ b/sci-libs/hipFFT/hipFFT-5.0.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="CU / ROCM agnostic hip FFT implementation"
+HOMEPAGE="https://github.com/ROCmSoftwarePlatform/hipFFT"
+SRC_URI="https://github.com/ROCmSoftwarePlatform/hipFFT/archive/refs/tags/rocm-${PV}.tar.gz -> hipFFT-rocm-${PV}.tar.gz
+ test? ( https://github.com/ROCmSoftwarePlatform/rocFFT/archive/rocm-${PV}.tar.gz -> rocFFT-${PV}.tar.gz )"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+IUSE="benchmark test"
+SLOT="0/$(ver_cut 1-2)"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-util/hip:${SLOT}
+ sci-libs/rocFFT:${SLOT}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-cpp/gtest
+ dev-libs/boost
+)"
+
+S="${WORKDIR}/hipFFT-rocm-${PV}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.0.2-gentoo-install-locations.patch"
+ "${FILESDIR}/${PN}-5.0.2-remove-git-dependency.patch"
+ "${FILESDIR}/${PN}-4.3.0-add-complex-header.patch"
+)
+
+src_prepare() {
+ use test && rmdir rocFFT && ln -s ../rocFFT-rocm-${PV} rocFFT
+ sed -e "/CMAKE_INSTALL_LIBDIR/d" -i CMakeLists.txt || die
+ CXX=hipcc cmake_src_prepare
+}
+
+src_configure() {
+ # Grant access to the device
+ addwrite /dev/kfd
+ addpredict /dev/dri/
+
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
+ -DCMAKE_INSTALL_INCLUDEDIR="include/hipfft"
+ -DCMAKE_SKIP_RPATH=ON
+ -DCMAKE_MODULE_PATH="${EPREFIX}/usr/$(get_libdir)/cmake"
+ -DHIP_ROOT_DIR="${EPREFIX}/usr"
+ -DBUILD_CLIENTS_TESTS=$(usex test ON OFF)
+ -DBUILD_CLIENTS_RIDER=$(usex benchmark ON OFF)
+ ${AMDGPU_TARGETS+-DAMDGPU_TARGETS="${AMDGPU_TARGETS}"}
+ )
+
+ export CXX=hipcc
+ cmake_src_configure
+}
+
+src_test () {
+ addwrite /dev/kfd
+ addpredict /dev/dri
+ cd "${BUILD_DIR}/clients/staging" || die
+ einfo "Running hipfft-test"
+ LD_LIBRARY_PATH=${BUILD_DIR}/library ./hipfft-test || die
+}
+
+src_install() {
+ cmake_src_install
+ if use benchmark; then
+ cd "${BUILD_DIR}/clients/staging" || die
+ dobin hipfft-rider
+ fi
+}