commit: be252dab220a3a470576b7aba8633e4b405e4e09
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 5 07:23:37 2026 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Feb 5 08:57:06 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be252dab
dev-lang/ispc: Bump to 1.30.0
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
dev-lang/ispc/Manifest | 1 +
dev-lang/ispc/ispc-1.30.0.ebuild | 97 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 98 insertions(+)
diff --git a/dev-lang/ispc/Manifest b/dev-lang/ispc/Manifest
index 8252a60ed117..2dd5905c2454 100644
--- a/dev-lang/ispc/Manifest
+++ b/dev-lang/ispc/Manifest
@@ -1 +1,2 @@
DIST ispc-1.29.1.gh.tar.gz 20082526 BLAKE2B
168ece8ac27198db2c0bbd8701607a80c183b7e053a8af10e93fb7694702829241583654ab8eb668497a55185cd3f3580c0bd777709243a3720153f8ce108c1f
SHA512
eaee3dbac16494213d96a75afb42a369e6a07a43f45b002cdffe0eeb7e9165cf7f139efa2f77afa1c1701c2b23151b4b5cb674cf860eeb31620510827f79bfb3
+DIST ispc-1.30.0.gh.tar.gz 20116734 BLAKE2B
1bf584d580e0b9f75bfbdf0f8a762625dcd0b645495996685c0af4d040c40c5f239a4f5d8d8a5c7c693ffafd4c8194d3a6a802ad7fc23df713eec56ecd12766e
SHA512
984c9880eed8b1fdbc5c9a86146aa1655d630532915aef286409b9b4e43727d7ae43d7e9f9b6786efec34f98f91730c8df283ef71cb1e8f99a74600935c86401
diff --git a/dev-lang/ispc/ispc-1.30.0.ebuild b/dev-lang/ispc/ispc-1.30.0.ebuild
new file mode 100644
index 000000000000..fabdad3f91f0
--- /dev/null
+++ b/dev-lang/ispc/ispc-1.30.0.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {18..21} )
+PYTHON_COMPAT=( python3_{11..14} )
+
+inherit cmake dot-a llvm-r1 multiprocessing python-any-r1 toolchain-funcs
+
+DESCRIPTION="Intel SPMD Program Compiler"
+HOMEPAGE="
+ https://ispc.github.io/
+ https://github.com/ispc/ispc/
+"
+SRC_URI="
+ https://github.com/ispc/ispc/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD BSD-2 UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="examples gpu openmp test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ ')
+ sys-libs/ncurses:=
+ gpu? ( dev-libs/level-zero:= )
+ !openmp? ( dev-cpp/tbb:= )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ app-alternatives/yacc
+ app-alternatives/lex
+ ${PYTHON_DEPS}
+"
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ llvm-r1_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # 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
+}
+
+src_configure() {
+ lto-guarantee-fat
+ local mycmakeargs=(
+ -DARM_ENABLED=$(usex arm)
+ -DCMAKE_SKIP_RPATH=ON
+ -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)
+ # prevent it from trying to find the git repo
+ -DGIT_BINARY=GIT_BINARY-NOTFOUND
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ # Inject path to prevent using system ispc
+ local -x PATH="${BUILD_DIR}/bin:${PATH}"
+ "${EPYTHON}" ./scripts/run_tests.py "-j$(makeopts_jobs)" -v ||
+ die "Testing failed under ${EPYTHON}"
+}
+
+src_install() {
+ cmake_src_install
+ strip-lto-bytecode
+
+ if use examples; then
+ docompress -x /usr/share/doc/${PF}/examples
+ dodoc -r examples
+ fi
+}