summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-lang/ispc/ispc-1.22.0-r1.ebuild12
-rw-r--r--dev-lang/ispc/metadata.xml3
-rw-r--r--profiles/arch/amd64/package.use.mask4
-rw-r--r--profiles/arch/base/package.use.mask4
-rw-r--r--profiles/features/musl/package.use.mask4
5 files changed, 26 insertions, 1 deletions
diff --git a/dev-lang/ispc/ispc-1.22.0-r1.ebuild b/dev-lang/ispc/ispc-1.22.0-r1.ebuild
index 7b18a7303e8a..d05fa1f7195e 100644
--- a/dev-lang/ispc/ispc-1.22.0-r1.ebuild
+++ b/dev-lang/ispc/ispc-1.22.0-r1.ebuild
@@ -21,12 +21,13 @@ SRC_URI="
LICENSE="BSD BSD-2 UoI-NCSA"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-IUSE="examples openmp test"
+IUSE="examples gpu openmp test"
RESTRICT="!test? ( test )"
DEPEND="
<sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
sys-libs/ncurses:=
+ gpu? ( dev-libs/level-zero:= )
!openmp? ( dev-cpp/tbb:= )
"
RDEPEND="
@@ -57,6 +58,14 @@ src_prepare() {
sed -i -e 's:set(target_arch "i686"):return():' cmake/GenerateBuiltins.cmake || die
fi
+ # do not require bundled gtest
+ mkdir -p ispcrt/tests/vendor/google/googletest || die
+ cat > ispcrt/tests/vendor/google/googletest/CMakeLists.txt <<-EOF || die
+ find_package(GTest)
+ EOF
+ # remove hacks that break unbundling
+ sed -i -e '/gmock/d' -e '/install/,$d' ispcrt/tests/CMakeLists.txt || die
+
cmake_src_prepare
}
@@ -67,6 +76,7 @@ src_configure() {
-DISPC_INCLUDE_EXAMPLES=OFF
-DISPC_INCLUDE_TESTS=$(usex test)
-DISPC_INCLUDE_UTILS=OFF
+ -DISPCRT_BUILD_GPU=$(usex gpu)
-DISPCRT_BUILD_TASK_MODEL=$(usex openmp OpenMP TBB)
)
cmake_src_configure
diff --git a/dev-lang/ispc/metadata.xml b/dev-lang/ispc/metadata.xml
index eb96ff15c20a..1ac64e1abb82 100644
--- a/dev-lang/ispc/metadata.xml
+++ b/dev-lang/ispc/metadata.xml
@@ -9,6 +9,9 @@
<remote-id type="github">ispc/ispc</remote-id>
</upstream>
<use>
+ <flag name="gpu">
+ Enable Level0 GPU support in ispcrt.
+ </flag>
<flag name="openmp">
Build with OpenMP task model (otherwise, TBB task model is used).
</flag>
diff --git a/profiles/arch/amd64/package.use.mask b/profiles/arch/amd64/package.use.mask
index 9d39b1452131..1a2f77a0990a 100644
--- a/profiles/arch/amd64/package.use.mask
+++ b/profiles/arch/amd64/package.use.mask
@@ -17,6 +17,10 @@
#--- END OF EXAMPLES ---
+# Michał Górny <mgorny@gentoo.org> (2023-12-31)
+# Requires dev-libs/level-zero.
+dev-lang/ispc -gpu
+
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2023-12-18)
# Experimental and only available on a subset of architectures
sys-kernel/gentoo-kernel -generic-uki
diff --git a/profiles/arch/base/package.use.mask b/profiles/arch/base/package.use.mask
index bf4429181727..65c07619a41a 100644
--- a/profiles/arch/base/package.use.mask
+++ b/profiles/arch/base/package.use.mask
@@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Michał Górny <mgorny@gentoo.org> (2023-12-31)
+# Requires dev-libs/level-zero.
+dev-lang/ispc gpu
+
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2023-12-18)
# Experimental and only available on a subset of architectures
sys-kernel/gentoo-kernel generic-uki
diff --git a/profiles/features/musl/package.use.mask b/profiles/features/musl/package.use.mask
index 7e616368e822..c9b7d23aaca6 100644
--- a/profiles/features/musl/package.use.mask
+++ b/profiles/features/musl/package.use.mask
@@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Michał Górny <mgorny@gentoo.org> (2023-12-31)
+# Requires dev-libs/level-zero.
+dev-lang/ispc gpu
+
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2023-12-18)
# Requires systemd
sys-kernel/gentoo-kernel generic-uki