diff options
author | V3n3RiX <venerix@koprulu.sector> | 2021-10-20 10:22:14 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2021-10-20 10:22:14 +0100 |
commit | 46eedbedafdb0040c37884982d4c775ce277fb7b (patch) | |
tree | db33a91259730be84999e13a8d8168c799f50ac0 /dev-libs/pocl | |
parent | e23a08d0c97a0cc415aaa165da840b056f93c997 (diff) |
gentoo resync : 20.10.2021
Diffstat (limited to 'dev-libs/pocl')
-rw-r--r-- | dev-libs/pocl/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/pocl/pocl-1.8.ebuild | 126 |
2 files changed, 128 insertions, 0 deletions
diff --git a/dev-libs/pocl/Manifest b/dev-libs/pocl/Manifest index 408e746b4f44..6daca253b2aa 100644 --- a/dev-libs/pocl/Manifest +++ b/dev-libs/pocl/Manifest @@ -1,4 +1,6 @@ AUX vendor_opencl_libs_location.patch 962 BLAKE2B 6d0e3f070fa2022d95d35fb1563f72f5dc1b544c7f83417dbb5e3d100dad07bdf3365a48ee92e856de4edc4b7c25674b45efd6d0ace1ac559273641ca175a269 SHA512 2ae144e7590049cc1eac8fa30e360cd511331abba0dfe683867d6a089742ea12cc3bc48dafe41a1c1c9b891fdf35aaac8b14cc1e10a78d2ab49b5e14635bb258 DIST pocl-1.7.tar.gz 1577676 BLAKE2B 50d4f50236b1c81f319b5559ca2b1df529209f07899acf51c487820d97cc6766c5130a55afca910517c7db63d8041ac8306062880c3a821cbc1bf9108bf13d65 SHA512 23bb82b25a222186c001b2ed413f26253e1e0e16518e98c95173f51491e15d107e6ab1b334ffd490b41199743267d9ad64882a22fea327e17ec9604f9847fc38 +DIST pocl-1.8.tar.gz 1614545 BLAKE2B b0ccc08d1f899719f5def731c61727440035a879ebeebae89dd406423eba6c12b866f34cd47dd0e0f944b7f0c4569c57c44a9a62bf02552de5c4c3b8c9fb3b48 SHA512 bcbb3fa3d2234d4c5b0c17863eba0bc4c8f13f863cc58cfd1de49e21fa7bf0aec82b81aec143c81885e3a39274c8ae783b2f03b9a12846e024204d6ed0e59a9d EBUILD pocl-1.7-r2.ebuild 2862 BLAKE2B 23f201f50ac726297c8bfdc3408c3f1741989f78d8dfdccf566759fa3fd362127c28f524f6752f0f2fe882aeb431352af1f0fbc891a297c26fd66edfd44f04d4 SHA512 e7587d0f337b12e22e408b30f55b2a5ca887697529a1be5f734edf2ff37ea10c671002b7ef6e17569cd7deacfa8d37a097ff3b86f8538b47fab7f25446483d34 +EBUILD pocl-1.8.ebuild 3117 BLAKE2B 4b1cbf0f14995f0e7c77d1df60735cdd13b23d5b6b5cd60eedcd98fb9ed1fae892f860199da19706ce89b8830fecf45012876a33ecf132eb136fe4dac32f1761 SHA512 64f564f725f281d70ebf47309a1bb294877cce08028d2dab9f3f524ce8b2d6c7faca8670934a02ec1e7ec8fb8bc60858a4ec6ed4975a57f683a4c218160d8827 MISC metadata.xml 1199 BLAKE2B 90d31048bcc33a76837977547ba818b2d2a268c408e7ad40eb157864d7c561d0bbc8ad40a013e28c74092f27f7fc3d23ae52322a2ca2d681c109ace154e29214 SHA512 98341aa0795cf9439ed4c0b8e2575657eaa5898e21b64d7d73592badac0b2a82fe061005a6adcf4e9d3318a4f20b80c62bd379f587dd4fcf993a95017f8ce867 diff --git a/dev-libs/pocl/pocl-1.8.ebuild b/dev-libs/pocl/pocl-1.8.ebuild new file mode 100644 index 000000000000..6f112bf49132 --- /dev/null +++ b/dev-libs/pocl/pocl-1.8.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DOCS_AUTODOC=0 +DOCS_BUILDER="sphinx" +DOCS_DIR="doc/sphinx/source" +PYTHON_COMPAT=( python3_{8..10} pypy3 ) +LLVM_MAX_SLOT=13 + +inherit cmake llvm python-any-r1 docs + +DESCRIPTION="Portable Computing Language (an implementation of OpenCL)" +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" +SLOT="0" +KEYWORDS="~amd64" +# TODO: hsa tce +IUSE="accel cl20 +conformance cuda debug examples float-conversion hardening +hwloc memmanager test" +# Tests not yet passing, fragile in Portage environment(?) +RESTRICT="!test? ( test ) test" + +# 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} + 1)):* + virtual/opencl + + ${CLANG_DEPS} + debug? ( dev-util/lttng-ust ) + hwloc? ( sys-apps/hwloc[cuda?] ) +" +DEPEND="${RDEPEND}" +BDEPEND="${CLANG_DEPS} + virtual/pkgconfig + doc? ( + $(python_gen_any_dep '<dev-python/markupsafe-2.0[${PYTHON_USEDEP}]') + )" + +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() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DENABLE_HSA=OFF + -DENABLE_ICD=ON + -DENABLE_POCL_BUILDING=ON + -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) + -DENABLE_CUDA=$(usex cuda) + -DENABLE_HOST_CPU_DEVICE_CL20=$(usex cl20) + -DENABLE_HWLOC=$(usex hwloc) + -DENABLE_POCL_FLOAT_CONVERSION=$(usex float-conversion) + -DHARDENING_ENABLE=$(usex hardening) + -DPOCL_DEBUG_MESSAGES=$(usex debug) + -DUSE_POCL_MEMMANAGER=$(usex memmanager) + -DENABLE_TESTS=$(usex test) + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + docs_compile +} + +src_test() { + export POCL_BUILDING=1 + export POCL_DEVICES=basic + export CTEST_OUTPUT_ON_FAILURE=1 + export TEST_VERBOSE=1 + + # Referenced https://github.com/pocl/pocl/blob/master/.drone.yml + # But couldn't seem to get tests working yet + cmake_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 + fi + + if use examples; then + dodoc -r examples + docompress -x /usr/share/doc/${P}/examples + fi +} |