diff options
author | Sam James <sam@gentoo.org> | 2021-09-23 07:25:43 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-09-23 07:36:02 +0100 |
commit | a47d0fd7fd70bfdf59853f5ae4b34c9d36c9dbca (patch) | |
tree | 43a67f2601a19c0bed7594b71bc95598bb68bdf6 /dev-libs/pocl | |
parent | dev-libs/yascreen: remove static lib (diff) | |
download | gentoo-a47d0fd7fd70bfdf59853f5ae4b34c9d36c9dbca.tar.gz gentoo-a47d0fd7fd70bfdf59853f5ae4b34c9d36c9dbca.tar.bz2 gentoo-a47d0fd7fd70bfdf59853f5ae4b34c9d36c9dbca.zip |
dev-libs/pocl: various fixups
Mostly fixups I missed when importing from GURU earlier:
- LLVM deps
- General tidying
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/pocl')
-rw-r--r-- | dev-libs/pocl/pocl-1.7-r1.ebuild (renamed from dev-libs/pocl/pocl-1.7.ebuild) | 47 |
1 files changed, 32 insertions, 15 deletions
diff --git a/dev-libs/pocl/pocl-1.7.ebuild b/dev-libs/pocl/pocl-1.7-r1.ebuild index 74100b13bb3f..d5f2724b962d 100644 --- a/dev-libs/pocl/pocl-1.7.ebuild +++ b/dev-libs/pocl/pocl-1.7-r1.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="7" +EAPI=7 DOCS_AUTODOC=0 DOCS_BUILDER="sphinx" @@ -13,10 +13,7 @@ inherit cmake llvm python-any-r1 docs LLVM_MAX_SLOT=12 DESCRIPTION="Portable Computing Language (an implementation of OpenCL)" -HOMEPAGE=" - http://portablecl.org - https://github.com/pocl/pocl -" +HOMEPAGE="http://portablecl.org https://github.com/pocl/pocl" SRC_URI="https://github.com/pocl/pocl/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2" @@ -26,35 +23,51 @@ IUSE="accel cl20 +conformance cuda debug examples float-conversion hardening +hw RESTRICT="!test? ( test ) mirror" -#TODO: add dependencies for cuda +# TODO: add dependencies for cuda +# Note: No := on LLVM because it pulls in Clang +# see llvm.eclass for why +CLANG_DEPS="!cuda? ( <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):= ) + cuda? ( <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_NVPTX] )" RDEPEND=" dev-libs/libltdl - sys-devel/llvm:${LLVM_MAX_SLOT} + <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)) virtual/opencl - !cuda? ( sys-devel/clang:${LLVM_MAX_SLOT} ) - cuda? ( sys-devel/clang:${LLVM_MAX_SLOT}[llvm_targets_NVPTX] ) + ${CLANG_DEPS} debug? ( dev-util/lttng-ust ) hwloc? ( sys-apps/hwloc[cuda?] ) " DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig +BDEPEND="${CLANG_DEPS} + virtual/pkgconfig doc? ( $(python_gen_any_dep '<dev-python/markupsafe-2.0[${PYTHON_USEDEP}]') )" -PATCHES=( "${FILESDIR}/vendor_opencl_libs_location.patch" ) +PATCHES=( + "${FILESDIR}/vendor_opencl_libs_location.patch" +) python_check_deps() { has_version -b "<dev-python/markupsafe-2.0[${PYTHON_USEDEP}]" } +llvm_check_deps() { + local usedep=$(usex cuda "[llvm_targets_NVPTX]" '') + + # Clang is used at both build time (executed) and runtime + has_version -r "sys-devel/llvm:${LLVM_SLOT}${usedep}" && \ + has_version -r "sys-devel/clang:${LLVM_SLOT}${usedep}" && \ + has_version -b "sys-devel/clang:${LLVM_SLOT}${usedep}" +} + pkg_setup() { use doc && python-any-r1_pkg_setup + + llvm_pkg_setup } src_configure() { - llvm_pkg_setup local mycmakeargs=( -DBUILD_SHARED_LIBS=ON -DENABLE_HSA=OFF @@ -63,6 +76,7 @@ src_configure() { -DKERNELLIB_HOST_CPU_VARIANTS=native -DPOCL_ICD_ABSOLUTE_PATH=ON -DSTATIC_LLVM=OFF + -DWITH_LLVM_CONFIG=$(get_llvm_prefix -d "${LLVM_MAX_SLOT}")/bin/llvm-config -DENABLE_ACCEL_DEVICE=$(usex accel) -DENABLE_CONFORMANCE=$(usex conformance) @@ -73,8 +87,8 @@ src_configure() { -DHARDENING_ENABLE=$(usex hardening) -DPOCL_DEBUG_MESSAGES=$(usex debug) -DUSE_POCL_MEMMANAGER=$(usex memmanager) - -DWITH_LLVM_CONFIG=$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config ) + cmake_src_configure } @@ -91,13 +105,16 @@ src_test() { src_install() { cmake_src_install + dodoc CREDITS README CHANGES + if use doc; then dodoc -r _build/html - docompress -x "/usr/share/doc/${P}/html" + docompress -x /usr/share/doc/${P}/html fi + if use examples; then dodoc -r examples - docompress -x "/usr/share/doc/${P}/examples" + docompress -x /usr/share/doc/${P}/examples fi } |