summaryrefslogtreecommitdiff
path: root/dev-util/intel-graphics-compiler
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/intel-graphics-compiler')
-rw-r--r--dev-util/intel-graphics-compiler/Manifest6
-rw-r--r--dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-fix-missing-limits.patch23
-rw-r--r--dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-opencl-clang_version.patch31
-rw-r--r--dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.8173.ebuild74
-rw-r--r--dev-util/intel-graphics-compiler/metadata.xml9
5 files changed, 141 insertions, 2 deletions
diff --git a/dev-util/intel-graphics-compiler/Manifest b/dev-util/intel-graphics-compiler/Manifest
index f6f1a54f453e..3f73f5701cef 100644
--- a/dev-util/intel-graphics-compiler/Manifest
+++ b/dev-util/intel-graphics-compiler/Manifest
@@ -1,9 +1,13 @@
AUX intel-graphics-compiler-1.0.4111-opencl-clang_version.patch 1567 BLAKE2B cef900deb559e251e7fce91b8b8558e5eff846d5bab0153edb6d01ee29bdd0fd4c8dfcf3f3d732a23c357eebb119a4b833205f6e8526ef612069cec165395bf6 SHA512 984a3f26bd16d2d2db0608338f498ebefbbadb6b75552d3c3eaa0fea3456bf52e5ed0c57bedbd144e1d72bf6dea132fb21fe0d8cbca008ddd6b5456352143942
+AUX intel-graphics-compiler-1.0.8173-fix-missing-limits.patch 744 BLAKE2B 61e7fc376d7e5aa197794f8cc7f9cd4fc469ca4a7f0e9463c4d066ad119869da7ce6501d542e3c660326bd6131769534339fbedc18e954c49eb471243c48059c SHA512 c1ca22cb158c2c83e9bc355cc9c9aa4d710877c2431c0d769013e91fe15f6c4245e529de08b889548dcdecec34ce3708a2b976fb9ccd7b4b69e11c066878582d
+AUX intel-graphics-compiler-1.0.8173-opencl-clang_version.patch 1807 BLAKE2B ec6aac8c78d7584e043a258585cbae6218fd8aa167d853e1eea96313298df7347ab7652ec2bf83199129e07e534d52fcd200858036e3d0af2c4f79ff249104f2 SHA512 1a0db341aab280aa205965dfc82d17b29f681bde76932f8291243afad985523f601c7279b1fb772ebc4d9197e5016941a1ad07cea2b6d7199710a7ee22fd81dc
AUX intel-graphics-compiler-1.0.9-no_Werror.patch 272 BLAKE2B 079fe334413dfddb7681940f2a8920a365e8e72526cfc09ea1c7d218e8b19468f80ea9a215be125b441ee5238d7856b8dec02ebfc4bfd76b1850aa9917da35ef SHA512 d3d27943e84e228b480172b4fe91ba9aed8bb1c98700eb8c8beebafb7f1cc6265279031f56181e67eff74f55e1bbc8ee24bdc4d14fc1200c5aff670ef019410d
DIST intel-graphics-compiler-1.0.4111.tar.gz 5781246 BLAKE2B 6fe47422b31b0c73d24c3cef1265772927a57751bf5648f862f7c73528f2174268fdb2271c30c49ab038b4dfbe530bc088fe727e66babc5db0a41759e7212733 SHA512 8f589ee83a27b7a8f5abcd008e36a73fb704c20c1ae17e1ef265c59641768b75a0a08f2d6f80355442fff7625154603db3ebe9be0a4ba702b45e85db434f8110
DIST intel-graphics-compiler-1.0.4944.tar.gz 6632351 BLAKE2B a3d72730b8c10fd3810fdb8206d9d92da325a094627b678bb9f8d0941e29c1697994a2d98a1b49780fae62dc421e623dea4c3a7e3061347de5f5b644cfb5e105 SHA512 34fafd5387f3b86bef17511015ff1e8daef75ebdff5d1d14ff2000b58968bb502a9ec1aee988858a2992414f6cdb222e7de19c2d877f7fc8cd84a79417e9a85e
DIST intel-graphics-compiler-1.0.5353.tar.gz 6642256 BLAKE2B 34b80b30f33dbd57bcea15852c80cdf8bdbf4630a7904946c7ce84481789e7db42f5216ba14140d445e9b0adbfcfe224468e462ea27768f0e8d31525ce56cde1 SHA512 e9f20e2261c5cb79d365d5d8257e8f4830b2364962c48413cc80154469db34c1c844ae5d576cbce2e3c5e5cbe22c7c3710ebd0a7fe7208e5412e81ce20077c80
+DIST intel-graphics-compiler-1.0.8173.tar.gz 7471884 BLAKE2B 2248a8d5f23d4578c5bd04a799af65767916b3705e16a8145149794a2cf16e5a0e16c21669336151a241cc52e7672b05eb892ac4925f2c2d0b22673af4ebf67f SHA512 bebccee0699dea48e98ddcdb320cacacda0cdcd36b68e51d932791756b0a8e2171a78cc1921ca2a092b9fe7dbd7a783d4898ada08c58bf856dd29bfc08334fa0
EBUILD intel-graphics-compiler-1.0.4111.ebuild 1948 BLAKE2B b94c41a2657cb985065ef195ae06d62d53db8a02d30f48fdd37014b8209382d459cec5da6bfc4f1a2ded793a60adf736ea4d43f6511aecde9614c2b6aac42c49 SHA512 0abfecf61f289b258909da53e3edae8eea31577a3b57108043b7e8d6902d53153d55d8f635bc3146e71e986e9f12bfebf280ead5f58196e3f36abaeeda7411a0
EBUILD intel-graphics-compiler-1.0.4944.ebuild 2492 BLAKE2B 2a41f64fb5ab688815cbfb29c4454eabd645cfa4ae0e852ff6fe41511726dd380843a561ebe4b594971093c51f5ceab8b132d9ac766d980bd6b4a254979f996c SHA512 feaaad5029246bff1faff06c3ba9d7c4afb15be0c31656ebfcb1a9dee7127271599144d5fb118625b034f8bb86970aed83f2acc0822eff01f2791ea74c671785
EBUILD intel-graphics-compiler-1.0.5353.ebuild 2559 BLAKE2B 16d24827231f286999542377531e90d89599ca7c70674be8200c47bc6270412cf6aa548b5a1a0a23968375f3a25060011edd2655a1522b16abf07765ae79763c SHA512 f3d195649693fd25cff7f34762f0b18ab1e5f0c2072b5ebd0bab9b1a69a1f9dcc5bd0ed482010bf7a1b50515dda122343a6dabda464c6ce61ea08511099d1041
-MISC metadata.xml 261 BLAKE2B fb9fbab5069434d85556da8c100fe4fd6f92aea5909300e58766c1df329317b0c7ac692479aac7e579a994a0c215aa2a87743fdab1e85dec9a120f6a6fa79fa2 SHA512 45a7c84c8dd3ef024aee1d481df406cf4cf47e57ad1205e23874e897b49fd84dfe2adfe0c1738c94e9f6a45c4eef611117b24f63b5191b777dffc63ebb330768
+EBUILD intel-graphics-compiler-1.0.8173.ebuild 2578 BLAKE2B 65fd7700ebc866e3b8057a8508a052c53b5c2d3902af391378bcbed257cb2ed7ef1120ad8d0f6d708354457983cb9260aa0f4fcb7fed57fbd65fc36c103a03b3 SHA512 e0879fd7e50d11aba0dd3cffc29d9a37676a54fb6272b2b9c74800f3d80768d72c6948902bf211a9eadeabd9fa557b830c23978a30045e7ce9c9fdf2337d9c84
+MISC metadata.xml 482 BLAKE2B 64e21a016d408cd17239a204f6b004c09de3784c5a68815143e7f1019fdd52950e64402fc4480956a14e5c4a644b33ac47d99a7929fd3fd9afe667b946ae1e8b SHA512 3f004dfd8bad391c2fe144cdc003b8094b99fa189b0233c855071e6913a828983b6123600dd25c7c24d49132cb045ff258ca792fcc1a234b5fc7269e9871a161
diff --git a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-fix-missing-limits.patch b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-fix-missing-limits.patch
new file mode 100644
index 000000000000..406262d2d914
--- /dev/null
+++ b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-fix-missing-limits.patch
@@ -0,0 +1,23 @@
+Fix compilation with >=gcc-11, taken from upstream:
+https://github.com/intel/intel-graphics-compiler/pull/190
+
+From 8e1a461d3e6b85a6cf018caf6abf4a3ba9a1758d Mon Sep 17 00:00:00 2001
+From: Bruno Pagani <bruno.n.pagani@gmail.com>
+Date: Wed, 4 Aug 2021 20:54:21 +0200
+Subject: [PATCH] Fix missing include
+
+---
+ visa/iga/IGALibrary/IR/RegDeps.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/visa/iga/IGALibrary/IR/RegDeps.cpp b/visa/iga/IGALibrary/IR/RegDeps.cpp
+index 83c226a316..585896631e 100644
+--- a/visa/iga/IGALibrary/IR/RegDeps.cpp
++++ b/visa/iga/IGALibrary/IR/RegDeps.cpp
+@@ -10,6 +10,7 @@ SPDX-License-Identifier: MIT
+ #include "../asserts.hpp"
+ #include "../bits.hpp"
+
++#include <limits>
+ #include <sstream>
+ #include <cstring>
diff --git a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-opencl-clang_version.patch b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-opencl-clang_version.patch
new file mode 100644
index 000000000000..54a3364e7c66
--- /dev/null
+++ b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.8173-opencl-clang_version.patch
@@ -0,0 +1,31 @@
+--- a/IGC/BiFModule/CMakeLists.txt
++++ b/IGC/BiFModule/CMakeLists.txt
+@@ -19,24 +19,10 @@
+
+ if(UNIX)
+ if(NOT ${CCLANG_BUILD_INTREE_LLVM})
+- # Get common clang library soname
+- get_target_property(CCLANG_LIB_PATH opencl-clang-lib "IMPORTED_LOCATION")
+- execute_process(
+- COMMAND readelf -d ${CCLANG_LIB_PATH}
+- RESULT_VARIABLE CCLANG_READELF_RESULT
+- OUTPUT_VARIABLE CCLANG_READELF_CALL)
+- if(CCLANG_READELF_RESULT AND NOT CCLANG_READELF_RESULT EQUAL 0)
+- message(FATAL_ERROR "[IGC\\BiFModule] : Error occurred while executing readelf: ${CCLANG_READELF_RESULT}")
+- endif()
+- string(REGEX MATCH "\\[${COMMON_CLANG_LIB_FULL_NAME}\\.([0-9](\\.[0-9]*)*[a-zA-Z0-9]*)\\]" CCLANG_SONAME_VERSION "${CCLANG_READELF_CALL}")
+- set(CCLANG_SONAME_VERSION "${CMAKE_MATCH_1}")
+-
+- # Check if common clang library is newer than 5.0.0 version on which we have SPIR-V support
+- if("${CCLANG_SONAME_VERSION}" VERSION_GREATER "5.0.0")
+- set_property(TARGET opencl-clang-lib PROPERTY "IMPORTED_SONAME" "${COMMON_CLANG_LIB_FULL_NAME}.${CCLANG_SONAME_VERSION}")
+- else()
+- message(FATAL_ERROR "[IGC\\BiFModule] : Version ${CCLANG_SONAME_VERSION} of library ${COMMON_CLANG_LIB_FULL_NAME} is below version 5.0.0 (where it's starts support of SPIR-V), please upgrade this library at least to version 5.0.0")
+- endif()
++ # Workaround for https://bugs.gentoo.org/739138 : instead of checking
++ # the version of opencl-clang, have ebuilds set CCLANG_SONAME_VERSION
++ # for us.
++ set_property(TARGET opencl-clang-lib PROPERTY "IMPORTED_SONAME" "${COMMON_CLANG_LIB_FULL_NAME}.${CCLANG_SONAME_VERSION}")
+ endif()
+ if (NOT CCLANG_FROM_SYSTEM)
+ install(FILES $<TARGET_FILE:opencl-clang-lib> DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR} COMPONENT igc-opencl)
diff --git a/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.8173.ebuild b/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.8173.ebuild
new file mode 100644
index 000000000000..dd493717301b
--- /dev/null
+++ b/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.8173.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+PYTHON_COMPAT=( python{3_9,3_10} )
+LLVM_MAX_SLOT=10
+
+inherit cmake flag-o-matic llvm python-any-r1
+
+DESCRIPTION="LLVM-based OpenCL compiler targetting Intel Gen graphics hardware"
+HOMEPAGE="https://github.com/intel/intel-graphics-compiler"
+SRC_URI="https://github.com/intel/${PN}/archive/igc-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}-igc-${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug"
+
+BDEPEND="${PYTHON_DEPS}
+ >=sys-devel/lld-${LLVM_MAX_SLOT}"
+# Yes, the last dependency does effectively force the use of llvm-10
+# - there are currently no SLOT=9 ebuilds of opencl-clang with mem2reg
+# support. Of course with there being no SLOT=9 ebuilds of vc-intrinsics
+# (which we'll need soon as well) at all either we are limited to llvm-10 anyway.
+DEPEND="<=sys-devel/llvm-${LLVM_MAX_SLOT}.9999:=
+ <=dev-libs/opencl-clang-${LLVM_MAX_SLOT}.9999:=
+ >=dev-libs/opencl-clang-12.0.0:="
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.0.9-no_Werror.patch"
+ "${FILESDIR}/${PN}-1.0.8173-opencl-clang_version.patch"
+ "${FILESDIR}/${PN}-1.0.8173-fix-missing-limits.patch"
+)
+
+find_best_llvm_slot() {
+ local candidate_slot
+
+ # Select the same slot as the best opencl-clang
+ local ocl_clang_ver="$(best_version -d dev-libs/opencl-clang:=)"
+ einfo "Selecting ${ocl_clang_ver}"
+ candidate_slot=$(ver_cut 5 ${ocl_clang_ver})
+
+ # Sanity check - opencl-clang brings the right LLVM slot as its
+ # dependency so if this is missing, something is very wrong.
+ has_version -d sys-devel/llvm:${candidate_slot} || die "LLVM slot matching ${ocl_clang_ver} not found (${candidate_slot})"
+
+ echo ${candidate_slot}
+}
+
+src_configure() {
+ local llvm_slot=$(find_best_llvm_slot)
+ einfo "Selecting LLVM slot ${llvm_slot}: $(best_version -d sys-devel/llvm:${llvm_slot})"
+ local llvm_prefix=$(get_llvm_prefix ${llvm_slot})
+ local llvm_ver=$(best_version -d sys-devel/llvm:${llvm_slot})
+ llvm_ver=${llvm_ver##*-}
+
+ # Since late March 2020 cmake.eclass does not set -DNDEBUG any more, and the way
+ # IGC uses this definition causes problems for some users (see Bug #718824).
+ use debug || append-cppflags -DNDEBUG
+
+ # VectorCompiler needs work, at the moment upstream only supports building vc-intrinsics in place.
+ local mycmakeargs=(
+ -DCCLANG_SONAME_VERSION=${llvm_slot}
+ -DCMAKE_LIBRARY_PATH="${llvm_prefix}"/$(get_libdir)
+ -DIGC_OPTION__FORCE_SYSTEM_LLVM=ON
+ -DIGC_PREFERRED_LLVM_VERSION=${llvm_ver}
+ -DIGC_BUILD__VC_ENABLED=no
+ )
+ cmake_src_configure
+}
diff --git a/dev-util/intel-graphics-compiler/metadata.xml b/dev-util/intel-graphics-compiler/metadata.xml
index 36d27b8681c7..c1144ffebb0c 100644
--- a/dev-util/intel-graphics-compiler/metadata.xml
+++ b/dev-util/intel-graphics-compiler/metadata.xml
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>gentoo@taujhe.de</email>
+ <name>Jan Henke</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="github">intel/intel-graphics-compiler</remote-id>
</upstream>