diff --git a/dev-util/intel-graphics-compiler/Manifest b/dev-util/intel-graphics-compiler/Manifest index 3cc76cc55fd5..5f546cc7a398 100644 --- a/dev-util/intel-graphics-compiler/Manifest +++ b/dev-util/intel-graphics-compiler/Manifest @@ -2,3 +2,4 @@ DIST intel-graphics-compiler-1.0.17791.18.tar.gz 10746999 BLAKE2B d85c7888e4be96 DIST intel-graphics-compiler-2.16.0.tar.gz 11187985 BLAKE2B 25b5fb30e7d8d4581312bc9a03dca86d6fabe739a273ea7288b1bdef22e11a522c80b0ece35e0f67cae07df37e978234b438e00a4cfc5edcbea589bc0fc8c0b3 SHA512 cdd4449b72fe3e28ed28062b2947b1ab799e9e540e4c94b479140d34854b2e47a439e5a03c8cf7c29718d53f0d48280d8fa77aa563d41ef85d51fc37d75a4e05 DIST intel-graphics-compiler-2.19.1.tar.gz 11253331 BLAKE2B 65b67986b3195f3848ca1813327c5860518f7ab97c7dc6514cf48dff7d74e73e60f8fa2e0f67c5b4ef7cd9ae69d11eba61d3cca1c2eaab30765bc80b1e2f5eff SHA512 d2ac6e1d2ecb9959c27bb0c380aa4a70fb79f53fb8d32df1f29721a01268abac003f0bd6314b23631057faef8749eac269282c9f1d21b6a37df9a8f52bcf000c DIST intel-graphics-compiler-2.20.1.tar.gz 11262247 BLAKE2B 7db3f01e82bb9bbce6fa2ee321aa262c9288ac601d024799ead9ab617ad9790d2d567f362755f90a821756443bc562b92201969908fee71cf20cec4b628f539c SHA512 b45a6a2710d8776777808e6714bd30b17bf29ed275ecc7ff1afd12959ae30d397b828413d9ad0d8f4ac3e4950af3a008f7022f5c03ca22de0cbc7b1da7be287d +DIST intel-graphics-compiler-2.23.0.tar.gz 11306760 BLAKE2B edecb5ae29a4cf8b8a01ab6725bb3a77b5eeca4989692d8ebeb0ee00cefc8b8260c103ce8f6e6a30e1b37d4bb04b32e58d23b3138a2cc16baab6e1a25c6fb280 SHA512 10c5772ea7868d53675ad2a1fac9b44a3c403639a34c6bc2bbe955ead7f64fef4c8fafaf20196a01c375702c7382a6f33a68b2ae2775872eea90c55ba56693e9 diff --git a/dev-util/intel-graphics-compiler/intel-graphics-compiler-2.23.0.ebuild b/dev-util/intel-graphics-compiler/intel-graphics-compiler-2.23.0.ebuild new file mode 100644 index 000000000000..a6888bf9220f --- /dev/null +++ b/dev-util/intel-graphics-compiler/intel-graphics-compiler-2.23.0.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CMAKE_BUILD_TYPE="Release" +LLVM_COMPAT=( 16 ) +PYTHON_COMPAT=( python3_{10..14} ) + +inherit cmake flag-o-matic llvm-r1 python-any-r1 + +DESCRIPTION="LLVM-based OpenCL compiler for OpenCL targetting Intel Gen graphics hardware" +HOMEPAGE="https://github.com/intel/intel-graphics-compiler" +SRC_URI="https://github.com/intel/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0/${PV}" +KEYWORDS="~amd64" +IUSE="debug vc" + +DEPEND=" + dev-libs/opencl-clang:16[${LLVM_USEDEP}] + dev-util/spirv-tools + $(llvm_gen_dep ' + llvm-core/lld:${LLVM_SLOT} + llvm-core/llvm:${LLVM_SLOT} + ') + vc? ( + >=dev-libs/intel-vc-intrinsics-0.24.1[${LLVM_USEDEP}] + dev-util/spirv-llvm-translator:16= + ) +" + +RDEPEND=" + !dev-util/intel-graphics-compiler:legacy + ${DEPEND} +" + +BDEPEND=" + $(python_gen_any_dep 'dev-python/mako[${PYTHON_USEDEP}]') + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') + ${PYTHON_DEPS} +" + +python_check_deps() { + python_has_version "dev-python/mako[${PYTHON_USEDEP}]" + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" +} + +PATCHES=( + "${FILESDIR}/${PN}-1.0.9-no_Werror.patch" + "${FILESDIR}/${PN}-1.0.8365-disable-git.patch" +) + +pkg_setup() { + llvm-r1_pkg_setup + python-any-r1_pkg_setup +} + +src_prepare() { + # Don't hardcode FORTIFY_SOURCE + sed -e '/-D_FORTIFY_SOURCE=2/d' -i IGC/CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + # Get LLVM version + local llvm_version="$(best_version -d llvm-core/llvm:${LLVM_SLOT})" + local llvm_version="${llvm_version%%-r*}" + + # See https://github.com/intel/intel-graphics-compiler/issues/212 + append-ldflags -Wl,-z,undefs + + # See bug #938519 and https://github.com/intel/intel-graphics-compiler/issues/362 + filter-lto + + # See bug #893370 and https://github.com/intel/intel-graphics-compiler/issues/282 + append-flags -U_GLIBCXX_ASSERTIONS + + # See https://bugs.gentoo.org/718824 + ! use debug && append-cppflags -DNDEBUG + + local mycmakeargs=( + -DBUILD_SHARED_LIBS="OFF" + -DCCLANG_FROM_SYSTEM="ON" + -DCMAKE_LIBRARY_PATH="$(get_llvm_prefix)/$(get_libdir)" + -DIGC_BUILD__VC_ENABLED="$(usex vc)" + -DIGC_OPTION__ARCHITECTURE_TARGET="Linux64" + -DIGC_OPTION__CLANG_MODE="Prebuilds" + -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR="ON" + -DIGC_OPTION__LLD_MODE="Prebuilds" + -DIGC_OPTION__LLDELF_H_DIR="$(get_llvm_prefix)/include/lld/Common" + -DIGC_OPTION__LLVM_MODE="Prebuilds" + -DIGC_OPTION__LLVM_PREFERRED_VERSION="${llvm_version##*-}" + -DIGC_OPTION__OPENCL_HEADER_PATH="/usr/lib/clang/${LLVM_SLOT}/include/opencl-c.h" + -DIGC_OPTION__SPIRV_TOOLS_MODE="Prebuilds" + -DIGC_OPTION__SPIRV_TRANSLATOR_MODE="Prebuilds" + -DIGC_OPTION__USE_PREINSTALLED_SPIRV_HEADERS="ON" + $(usex vc '-DIGC_OPTION__VC_INTRINSICS_MODE=Prebuilds' '') + -DPYTHON_EXECUTABLE="${PYTHON}" + -DSPIRVLLVMTranslator_INCLUDE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_SLOT}/include/LLVMSPIRVLib" + -Wno-dev + ) + + cmake_src_configure +}