Diff spirv-llvm-translator-17.0.27 with a spirv-llvm-translator-21.1.3

/usr/portage/dev-util/spirv-llvm-translator/spirv-llvm-translator-21.1.3.ebuild 2026-02-19 11:18:07.394647403 +0300
3 3

  
4 4
EAPI=8
5 5

  
6
HASH_SPIRV="04fd3caa1e8267e4d95c806cad901181728e1006"
6
LLVM_COMPAT=( 21 )
7 7
MY_PN="SPIRV-LLVM-Translator"
8 8
MY_P="${MY_PN}-${PV}"
9 9

  
10
inherit cmake flag-o-matic multiprocessing
10
inherit cmake-multilib flag-o-matic llvm-r2 multiprocessing
11 11

  
12 12
DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
13 13
HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
14
SRC_URI="
15
	https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz
16
		-> ${P}.tar.gz
17
	https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV}.tar.gz
18
		-> spirv-headers-${HASH_SPIRV}.tar.gz
19
"
14
SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
20 15
S="${WORKDIR}/${MY_P}"
21 16

  
22 17
LICENSE="UoI-NCSA"
23 18
SLOT="$(ver_cut 1)"
24
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
19
KEYWORDS="amd64 arm arm64 ~loong ~riscv x86"
25 20
IUSE="test"
26
RESTRICT="
27
	!test? ( test )
21
RESTRICT="!test? ( test )
28 22
	arm? ( test )
29 23
	arm64? ( test )
30 24
	loong? ( test )
......
32 26
"
33 27

  
34 28
RDEPEND="
35
	dev-util/spirv-tools
36
	llvm-core/llvm:${SLOT}=
29
	dev-util/spirv-tools[${MULTILIB_USEDEP}]
30
	llvm-core/llvm:${SLOT}=[${MULTILIB_USEDEP}]
31
"
32
DEPEND="${RDEPEND}
33
	>=dev-util/spirv-headers-1.4.328.0
37 34
"
38
# We need to use currently newer spirv-headers, as stable release is too old..
39
# DEPEND="${RDEPEND}
40
#	>=dev-util/spirv-headers-1.4.350.0
41
# "
42 35
BDEPEND="
43 36
	virtual/pkgconfig
44 37
	test? (
......
47 40
	)
48 41
"
49 42

  
43
PATCHES=(
44
	"${FILESDIR}"/${P}-fix-DecorateUniformId.spvasm.patch
45
)
46

  
50 47
src_prepare() {
51 48
	append-flags -fPIC
52 49
	cmake_src_prepare
53 50

  
54
	# https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2555
55
	sed -i -e 's/%triple/x86_64-unknown-linux-gnu/' test/DebugInfo/X86/*.ll || die
51
	# do not force a specific LLVM version to find_package(), this only
52
	# causes issues and we force a specific path anyway
53
	sed -i -e '/find_package/s:${BASE_LLVM_VERSION}::' CMakeLists.txt || die
56 54
}
57 55

  
58
src_configure() {
56
multilib_src_configure() {
59 57
	local mycmakeargs=(
60 58
		-DCCACHE_ALLOWED="OFF"
61
		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
62
		-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${WORKDIR}/SPIRV-Headers-${HASH_SPIRV}"
63
		# -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
64
		-DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${SLOT}"
59
		-DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
60
		-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
65 61
		-DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
66 62
		-Wno-dev
67 63
	)
......
69 65
	cmake_src_configure
70 66
}
71 67

  
72
src_test() {
68
multilib_src_test() {
73 69
	lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
74 70
}
Thank you!