Gentoo Archives: gentoo-commits

From: Conrad Kostecki <conikost@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/intel-graphics-compiler/, dev-util/intel-graphics-compiler/files/
Date: Sun, 27 Mar 2022 22:23:17
Message-Id: 1648419664.eb7a87df42143a54309e6c16ec23dccaa430cfc9.conikost@gentoo
1 commit: eb7a87df42143a54309e6c16ec23dccaa430cfc9
2 Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
3 AuthorDate: Sun Mar 27 01:17:54 2022 +0000
4 Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
5 CommitDate: Sun Mar 27 22:21:04 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb7a87df
7
8 dev-util/intel-graphics-compiler: add 1.0.10713
9
10 Bug: https://bugs.gentoo.org/817146
11 Closes: https://bugs.gentoo.org/822438
12 Closes: https://github.com/gentoo/gentoo/pull/24731
13 Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>
14
15 dev-util/intel-graphics-compiler/Manifest | 1 +
16 ...713-allow-external-spirv-tools-fix-static.patch | 23 ++++++
17 ...10713-allow-external-spirv-tools-last-fix.patch | 40 ++++++++++
18 .../intel-graphics-compiler-1.0.10713.ebuild | 87 ++++++++++++++++++++++
19 4 files changed, 151 insertions(+)
20
21 diff --git a/dev-util/intel-graphics-compiler/Manifest b/dev-util/intel-graphics-compiler/Manifest
22 index a656665cd26a..a84e31babec5 100644
23 --- a/dev-util/intel-graphics-compiler/Manifest
24 +++ b/dev-util/intel-graphics-compiler/Manifest
25 @@ -1,2 +1,3 @@
26 +DIST intel-graphics-compiler-1.0.10713.tar.gz 8489446 BLAKE2B 063b938ae6d32f3a64decf943215c54ea45eafdb828fdec467941f9e4288977332a3e5e0703193c95412c287f20944b5c2951310c6eb678233cd16dfdd3377b0 SHA512 a6c568d339c0316400f88e318a290a92f842eeb2ab92abd0c23ff155e6b90e2d8e012ac8714a9695a66a509ffef66574919d92bc03ff06b773a79896546fe1a6
27 DIST intel-graphics-compiler-1.0.8744.tar.gz 7586378 BLAKE2B 0f20f99a2659f733521af35c1dd63c2b1398bf4fc5745a217b96ad62cfa53f105d4c9a34eba09651d0f0679d6957820011446f5657170f5ad07d110372b8b1f3 SHA512 dbbe6c08f32b80be305add570187df883aacefbf90b252c70b5705ecc7732f25873732a85558f0aed2ee8db5bcd1a59aec4d7ba110774922dbb19d4d3522a539
28 DIST intel-graphics-compiler-1.0.9441.tar.gz 7893557 BLAKE2B f050df0eddf63f880757fb04dded4ddc133c11fd7a7c8ceab152ac233ba9953b7efbe948433056654b2b43db2254a1edc15e5aada24fd3873face6f43d1307f9 SHA512 eaccec4213ea7af7deeaf8772784065839bb2f1dc98fb88b49acfcfc2b299f7e6ecb48c5df854448fa7db79f738654db722fcf684e9bbc94051d3bcfe449e20f
29
30 diff --git a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.10713-allow-external-spirv-tools-fix-static.patch b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.10713-allow-external-spirv-tools-fix-static.patch
31 new file mode 100644
32 index 000000000000..6abfdfe60d53
33 --- /dev/null
34 +++ b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.10713-allow-external-spirv-tools-fix-static.patch
35 @@ -0,0 +1,23 @@
36 +From 7e6b78d1ccf5afb4080795aa87029e55b9e5499c Mon Sep 17 00:00:00 2001
37 +From: Andrey Agrachev <andrey.agrachev@×××××.com>
38 +Date: Thu, 10 Mar 2022 12:51:37 +0000
39 +Subject: [PATCH] Remove 'static' suffix
40 +
41 +Remove 'static' suffix to enable shared lib usage
42 +---
43 + external/SPIRV-Tools/CMakeLists.txt | 2 +-
44 + 1 file changed, 1 insertion(+), 1 deletion(-)
45 +
46 +diff --git a/external/SPIRV-Tools/CMakeLists.txt b/external/SPIRV-Tools/CMakeLists.txt
47 +index f46a6988683..f40605c4b36 100644
48 +--- a/external/SPIRV-Tools/CMakeLists.txt
49 ++++ b/external/SPIRV-Tools/CMakeLists.txt
50 +@@ -34,7 +34,7 @@ if(IGC_OPTION__SPIRV_TOOLS_MODE STREQUAL PREBUILDS_MODE_NAME)
51 +
52 + set(INCLUDE_DIRS_LIST "${SPIRV-Tools_ROOT_DIR}/include" "${SPIRV-Headers_INCLUDE_DIR}")
53 + set_target_properties(SPIRV-Tools-static PROPERTIES INCLUDE_DIRECTORIES "${INCLUDE_DIRS_LIST}")
54 +- set(IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools-static)
55 ++ set(IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools)
56 +
57 + else() #By default use build from sources
58 + message(STATUS "[SPIRV-Tools] : IGC_OPTION__SPIRV_TOOLS_MODE set to Source")
59
60 diff --git a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.10713-allow-external-spirv-tools-last-fix.patch b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.10713-allow-external-spirv-tools-last-fix.patch
61 new file mode 100644
62 index 000000000000..5959a514004c
63 --- /dev/null
64 +++ b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.10713-allow-external-spirv-tools-last-fix.patch
65 @@ -0,0 +1,40 @@
66 +From acfa99b5aefbebf037e4c939f5a8e592dfaed04e Mon Sep 17 00:00:00 2001
67 +From: Andrey Agrachev <andrey.agrachev@×××××.com>
68 +Date: Tue, 22 Mar 2022 09:15:54 +0000
69 +Subject: [PATCH] Fix missprints
70 +
71 +Fix misspints in Spirv-Tools CMakeList
72 +---
73 + external/SPIRV-Tools/CMakeLists.txt | 8 ++++----
74 + 1 file changed, 4 insertions(+), 4 deletions(-)
75 +
76 +diff --git a/external/SPIRV-Tools/CMakeLists.txt b/external/SPIRV-Tools/CMakeLists.txt
77 +index f40605c4b36..076079f7c86 100644
78 +--- a/external/SPIRV-Tools/CMakeLists.txt
79 ++++ b/external/SPIRV-Tools/CMakeLists.txt
80 +@@ -16,7 +16,7 @@ if(IGC_OPTION__SPIRV_TOOLS_MODE STREQUAL PREBUILDS_MODE_NAME)
81 + OPTION(IGC__OPTION_USE_PREINSTALLED_SPRIV_HEADERS OFF)
82 +
83 + if(IGC_OPTION__USE_PREINSTALLED_SPRIV_HEADERS)
84 +- message(STATUS "[SPIRV-Tools] : IGC__OPTION_USE_PREINSTALLED_SPRIV_HEADERS set to OFF, using preinstalled SPIRV-Headers")
85 ++ message(STATUS "[SPIRV-Tools] : IGC__OPTION_USE_PREINSTALLED_SPRIV_HEADERS set to ON, using preinstalled SPIRV-Headers")
86 + message(STATUS "[SPIRV-Tools] : Using preinstalled SPIRV-Headers")
87 + set(SPIRV-Headers_INCLUDE_DIR "/usr/include")
88 + else()
89 +@@ -33,13 +33,13 @@ if(IGC_OPTION__SPIRV_TOOLS_MODE STREQUAL PREBUILDS_MODE_NAME)
90 + set(IGC_BUILD__SPIRV-Tools_DIR "${SPIRV-Tools_ROOT_DIR}")
91 +
92 + set(INCLUDE_DIRS_LIST "${SPIRV-Tools_ROOT_DIR}/include" "${SPIRV-Headers_INCLUDE_DIR}")
93 +- set_target_properties(SPIRV-Tools-static PROPERTIES INCLUDE_DIRECTORIES "${INCLUDE_DIRS_LIST}")
94 ++ set_target_properties(SPIRV-Tools PROPERTIES INCLUDE_DIRECTORIES "${INCLUDE_DIRS_LIST}")
95 + set(IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools)
96 +
97 + else() #By default use build from sources
98 + message(STATUS "[SPIRV-Tools] : IGC_OPTION__SPIRV_TOOLS_MODE set to Source")
99 +- message(STATUS "[SPIRV-Tools] : IGC_OPTION__USE_PREINSTALLED_SPRIV_HEADERS set to ON")
100 +- message(STATUS "[SPIRV-Tools] : Using preinstalled packages")
101 ++ message(STATUS "[SPIRV-Tools] : IGC_OPTION__USE_PREINSTALLED_SPRIV_HEADERS set to OFF")
102 ++ message(STATUS "[SPIRV-Tools] : Building from source")
103 + message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}")
104 +
105 + set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Headers") # used in subdirectory
106
107 diff --git a/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.10713.ebuild b/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.10713.ebuild
108 new file mode 100644
109 index 000000000000..906d7de597c5
110 --- /dev/null
111 +++ b/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.10713.ebuild
112 @@ -0,0 +1,87 @@
113 +# Copyright 1999-2022 Gentoo Authors
114 +# Distributed under the terms of the GNU General Public License v2
115 +
116 +EAPI=8
117 +
118 +CMAKE_BUILD_TYPE="Release"
119 +LLVM_MAX_SLOT="13"
120 +MY_PN="igc"
121 +MY_P="${MY_PN}-${PV}"
122 +PYTHON_COMPAT=( python3_{8..10} )
123 +
124 +inherit cmake flag-o-matic llvm python-any-r1
125 +
126 +DESCRIPTION="LLVM-based OpenCL compiler for OpenCL targetting Intel Gen graphics hardware"
127 +HOMEPAGE="https://github.com/intel/intel-graphics-compiler"
128 +SRC_URI="https://github.com/intel/${PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
129 +S="${WORKDIR}/${PN}-${MY_P}"
130 +
131 +LICENSE="MIT"
132 +SLOT="0"
133 +KEYWORDS="~amd64"
134 +IUSE="debug"
135 +
136 +DEPEND="
137 + dev-libs/opencl-clang:${LLVM_MAX_SLOT}=
138 + dev-util/spirv-tools
139 + sys-devel/llvm:${LLVM_MAX_SLOT}=
140 +"
141 +
142 +RDEPEND="${DEPEND}"
143 +
144 +BDEPEND="
145 + ${PYTHON_DEPS}
146 + >=sys-devel/lld-${LLVM_MAX_SLOT}
147 +"
148 +
149 +PATCHES=(
150 + "${FILESDIR}/${PN}-1.0.9-no_Werror.patch"
151 + "${FILESDIR}/${PN}-1.0.8173-opencl-clang_version.patch"
152 + "${FILESDIR}/${PN}-1.0.8365-disable-git.patch"
153 + "${FILESDIR}/${PN}-1.0.10713-allow-external-spirv-tools-fix-static.patch"
154 + "${FILESDIR}/${PN}-1.0.10713-allow-external-spirv-tools-last-fix.patch"
155 +)
156 +
157 +pkg_setup() {
158 + llvm_pkg_setup
159 + python-any-r1_pkg_setup
160 +}
161 +
162 +src_configure() {
163 + # Get LLVM version
164 + local llvm_version="$(best_version -d sys-devel/llvm:${LLVM_MAX_SLOT})"
165 +
166 + # See https://github.com/intel/intel-graphics-compiler/issues/212
167 + append-ldflags -Wl,-z,undefs
168 +
169 + # See https://bugs.gentoo.org/718824
170 + ! use debug && append-cppflags -DNDEBUG
171 +
172 + local mycmakeargs=(
173 + -DCCLANG_SONAME_VERSION="${LLVM_MAX_SLOT}"
174 + -DCMAKE_LIBRARY_PATH="$(get_llvm_prefix ${LLVM_MAX_SLOT})/$(get_libdir)"
175 + -DIGC_OPTION__ARCHITECTURE_TARGET="Linux64"
176 + -DIGC_OPTION__CLANG_MODE="Prebuilds"
177 + -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR="ON"
178 + -DIGC_OPTION__LLD_MODE="Prebuilds"
179 + -DIGC_OPTION__LLDELF_H_DIR="${EPREFIX}/usr/include/lld/Common"
180 + -DIGC_OPTION__LLVM_MODE="Prebuilds"
181 + -DIGC_OPTION__LLVM_PREFERRED_VERSION="${llvm_version##*-}"
182 + -DIGC_OPTION__SPIRV_TOOLS_MODE="Prebuilds"
183 + -DIGC_OPTION__SPIRV_TRANSLATOR_MODE="Prebuilds"
184 + -DIGC_OPTION__USE_PREINSTALLED_SPRIV_HEADERS="ON"
185 + -DINSTALL_GENX_IR="ON"
186 + -DSPIRVLLVMTranslator_INCLUDE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAX_SLOT}/include/LLVMSPIRVLib"
187 +
188 + # VectorCompiler needs work, as at the moment upstream
189 + # only supports building vc-intrinsics in place.
190 + -DIGC_BUILD__VC_ENABLED="OFF"
191 + # -DIGC_OPTION__VC_INTRINSICS_MODE="Prebuilds"
192 +
193 + # This will suspress some CMake warnings,
194 + # which cannot be fixed at the moment.
195 + -Wno-dev
196 + )
197 +
198 + cmake_src_configure
199 +}