# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 PYTHON_COMPAT=( python3_{9..10} ) LLVM_MAX_SLOT=14 inherit cmake python-any-r1 llvm DESCRIPTION="Intel SPMD Program Compiler" HOMEPAGE="https://ispc.github.io/" if [[ ${PV} == 9999 ]]; then inherit git-r3 EGIT_REPO_URI="https://github.com/ispc/ispc.git" else SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~x86" fi LICENSE="BSD BSD-2 UoI-NCSA" SLOT="0" IUSE="examples" RDEPEND="<sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=" DEPEND="${RDEPEND}" BDEPEND=" sys-devel/bison sys-devel/flex ${PYTHON_DEPS} " PATCHES=( "${FILESDIR}/${PN}-1.18.0-llvm.patch" ) CMAKE_BUILD_TYPE="RelWithDebInfo" pkg_setup() { llvm_pkg_setup python-any-r1_pkg_setup } src_prepare() { if use amd64; then # On amd64 systems, build system enables x86/i686 build too. # This ebuild doesn't even have multilib support, nor need it. # https://bugs.gentoo.org/730062 ewarn "Removing auto-x86 build on amd64" sed -i -e 's:set(target_arch "i686"):return():' cmake/GenerateBuiltins.cmake || die fi cmake_src_prepare } src_configure() { local mycmakeargs=( -DARM_ENABLED=$(usex arm) -DCMAKE_SKIP_RPATH=ON -DISPC_NO_DUMPS=ON ) cmake_src_configure } src_test() { # Inject path to prevent using system ispc PATH="${BUILD_DIR}/bin:${PATH}" ${EPYTHON} ./run_tests.py || die "Testing failed under ${EPYTHON}" } src_install() { dobin "${BUILD_DIR}"/bin/ispc einstalldocs if use examples; then docompress -x /usr/share/doc/${PF}/examples dodoc -r examples fi }