commit: ae66ecc10ba5290e0a30df1a34029f3c47589dd9 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Thu Feb 3 07:59:07 2022 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Thu Feb 3 08:27:49 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae66ecc1
sys-libs/libomp: Pass offload-specific flags w/ USE=offload only Closes: https://bugs.gentoo.org/832596 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> sys-libs/libomp/libomp-13.0.1.9999.ebuild | 38 +++++++++++++++++-------------- sys-libs/libomp/libomp-13.0.1.ebuild | 38 +++++++++++++++++-------------- sys-libs/libomp/libomp-14.0.0.9999.ebuild | 38 +++++++++++++++++-------------- 3 files changed, 63 insertions(+), 51 deletions(-) diff --git a/sys-libs/libomp/libomp-13.0.1.9999.ebuild b/sys-libs/libomp/libomp-13.0.1.9999.ebuild index 81e776270450..dbee89f1997c 100644 --- a/sys-libs/libomp/libomp-13.0.1.9999.ebuild +++ b/sys-libs/libomp/libomp-13.0.1.9999.ebuild @@ -92,24 +92,28 @@ multilib_src_configure() { # disable unnecessary hack copying stuff back to srcdir -DLIBOMP_COPY_EXPORTS=OFF ) - if use offload && has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) - # a cheap hack to force clang - -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" - # upstream defaults to looking for it in clang dir - # this fails when ccache is being used - -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" - ) - else - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF - ) + + if use offload; then + if has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) + -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) + -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) + # a cheap hack to force clang + -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" + # upstream defaults to looking for it in clang dir + # this fails when ccache is being used + -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" + ) + else + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON + -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF + -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF + ) + fi fi + use test && mycmakeargs+=( # this project does not use standard LLVM cmake macros -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" diff --git a/sys-libs/libomp/libomp-13.0.1.ebuild b/sys-libs/libomp/libomp-13.0.1.ebuild index dd1eef719c90..06eeabf9fc22 100644 --- a/sys-libs/libomp/libomp-13.0.1.ebuild +++ b/sys-libs/libomp/libomp-13.0.1.ebuild @@ -93,24 +93,28 @@ multilib_src_configure() { # disable unnecessary hack copying stuff back to srcdir -DLIBOMP_COPY_EXPORTS=OFF ) - if use offload && has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) - # a cheap hack to force clang - -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" - # upstream defaults to looking for it in clang dir - # this fails when ccache is being used - -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" - ) - else - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF - ) + + if use offload; then + if has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) + -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) + -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) + # a cheap hack to force clang + -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" + # upstream defaults to looking for it in clang dir + # this fails when ccache is being used + -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" + ) + else + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON + -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF + -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF + ) + fi fi + use test && mycmakeargs+=( # this project does not use standard LLVM cmake macros -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" diff --git a/sys-libs/libomp/libomp-14.0.0.9999.ebuild b/sys-libs/libomp/libomp-14.0.0.9999.ebuild index 81e776270450..dbee89f1997c 100644 --- a/sys-libs/libomp/libomp-14.0.0.9999.ebuild +++ b/sys-libs/libomp/libomp-14.0.0.9999.ebuild @@ -92,24 +92,28 @@ multilib_src_configure() { # disable unnecessary hack copying stuff back to srcdir -DLIBOMP_COPY_EXPORTS=OFF ) - if use offload && has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) - # a cheap hack to force clang - -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" - # upstream defaults to looking for it in clang dir - # this fails when ccache is being used - -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" - ) - else - mycmakeargs+=( - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON - -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF - -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF - ) + + if use offload; then + if has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) + -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU) + -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX) + # a cheap hack to force clang + -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")" + # upstream defaults to looking for it in clang dir + # this fails when ccache is being used + -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)" + ) + else + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON + -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF + -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF + ) + fi fi + use test && mycmakeargs+=( # this project does not use standard LLVM cmake macros -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit"
