dev-util/DirectXShaderCompiler: add 1.8.2505

Also stop using user variable CMAKE_EXTRA_CACHE_FILE and pass additional
-C option via mycmakeargs.

Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
This commit is contained in:
Alexander Tsoy
2025-07-18 05:37:51 +03:00
parent 19c3e9b14d
commit 6881316b5b
2 changed files with 80 additions and 0 deletions

View File

@@ -0,0 +1,77 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
inherit cmake check-reqs python-any-r1
DESCRIPTION="Microsoft DirectX Shader Compiler which is based on LLVM/Clang"
HOMEPAGE="https://github.com/microsoft/DirectXShaderCompiler"
# ToDo: unbundle spirv headers/tools and directx headers
SPIRV_HEADERS_COMMIT_MAGIC="aa6cef192b8e693916eb713e7a9ccadf06062ceb"
SPIRV_TOOLS_COMMIT_MAGIC="a62abcb402009b9ca5975e6167c09f237f630e0e"
DIRECTX_HEADERS_COMMIT_MAGIC="980971e835876dc0cde415e8f9bc646e64667bf7"
SRC_URI="
https://github.com/microsoft/DirectXShaderCompiler/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${SPIRV_HEADERS_COMMIT_MAGIC}.tar.gz
-> DirectXShaderCompiler-headers-${SPIRV_HEADERS_COMMIT_MAGIC}.tar.gz
https://github.com/KhronosGroup/SPIRV-Tools/archive/${SPIRV_TOOLS_COMMIT_MAGIC}.tar.gz
-> DirectXShaderCompiler-tools-${SPIRV_TOOLS_COMMIT_MAGIC}.tar.gz
https://github.com/microsoft/DirectX-Headers/archive/${DIRECTX_HEADERS_COMMIT_MAGIC}.tar.gz
-> DirectXShaderCompiler-directxheaders-${DIRECTX_HEADERS_COMMIT_MAGIC}.tar.gz
"
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DEPEND="${PYTHON_DEPS}"
# Todo: unbundle
# dev-util/directx-headers
# dev-util/spirv-headers
# dev-util/spirv-tools
RDEPEND="
sys-libs/zlib:0=
>=dev-libs/libffi-3.4.2-r1:0=
"
BDEPEND="sys-devel/gnuconfig"
CHECKREQS_MEMORY="4G"
CHECKREQS_DISK_BUILD="4G"
src_prepare() {
rm -d "${S}"/external/SPIRV* || die
rm -d "${S}"/external/DirectX* || die
mv "${WORKDIR}/SPIRV-Headers-${SPIRV_HEADERS_COMMIT_MAGIC}" "${S}/external/SPIRV-Headers" || die "can't move headers"
mv "${WORKDIR}/SPIRV-Tools-${SPIRV_TOOLS_COMMIT_MAGIC}" "${S}/external/SPIRV-Tools"|| die "can't move tools"
mv "${WORKDIR}/DirectX-Headers-${DIRECTX_HEADERS_COMMIT_MAGIC}" "${S}/external/DirectX-Headers"|| die "can't move DXH"
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-Wno-dev
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/dxc"
-DLLVM_BUILD_DOCS=0
-DLLVM_BUILD_TOOLS=0
-DSPIRV_BUILD_TESTS=0
-DLLVM_ENABLE_WERROR=0
-DSPIRV_WERROR=0
-DSPIRV_WARN_EVERYTHING=0
-DBUILD_SHARED_LIBS=OFF
-DLLVM_VERSION_SUFFIX=dxc
-C "${S}/cmake/caches/PredefinedParams.cmake"
)
cmake_src_configure
}
src_install() {
cmake_src_install
cat > "99${PN}" <<-EOF
LDPATH="${EPREFIX}/usr/lib/llvm/dxc/lib"
EOF
doenvd "99${PN}"
dosym -r /usr/lib/llvm/dxc/bin/dxc /usr/bin/dxc
}

View File

@@ -1,4 +1,7 @@
DIST DirectXShaderCompiler-1.8.2502.tar.gz 24454816 BLAKE2B f4d06d19ef97fe66251603c135739bfa11d83265f89e939df04ec967c0a82c6622994c8ba70720d59f2ad460e250753b705be30927ac5d4a5994416a41fc8b46 SHA512 4af052df2abce24295ab33b14de309de1c2aa0f2f57a6e78c41b2a64c9c65fc39097e340c1fbf78958472269cd85d34ab6aa377166e363c12fdc61a20e0a4757
DIST DirectXShaderCompiler-1.8.2505.tar.gz 24709880 BLAKE2B 1f030335bf0f3185f1410aacfc373de3f2758c21480ef56e4d09632f63cecd76f3384bb91b67c9bfd6ec65aa4b851095b6ebb18ae8c0bfa382fee89d74e0dd8a SHA512 daf24096341f8cc7a67f41dd9de20a7908044f4c1fd4c1b07606b47bb6ccb180f7c3a787c00b72284b810a66cc29c80a60f70bfc0c3edbb0d224d21c8adf10ea
DIST DirectXShaderCompiler-directxheaders-980971e835876dc0cde415e8f9bc646e64667bf7.tar.gz 326310 BLAKE2B 8ea4bbae290926c08d02d1a1262e813bb188c62a6deb81ed03954c500473581dc2430d09ca0742c42c5d8bfc2e232c999531ec5ad139aa791b7e8b06dfacd61d SHA512 a570068d3c25c68eba34a2653108e2019f888a7392a803f97da9a401713b14bf4235520f0adc37c2f6ffb27cfb118ca7bb0fc8e446b342a7393c9c64afd84ed8
DIST DirectXShaderCompiler-headers-3f17b2af6784bfa2c5aa5dbb8e0e74a607dd8b3b.tar.gz 532355 BLAKE2B 6ccbc10e5de56c2eb089209b81372a991728c98ba4c19ea894a65cac9f2e234c2e94c4d6fc34e3f8eaf1c3afaae6eb21986d79d91e9a9526359c1b9920b528dd SHA512 0e9d0acdc1f1d390b230e6edc7ce05783084fa2d951e7d7aa666fdf16c7b83dedcdf564290ed63ab1bc405ad8b4a53a22fe1d283f689d1e549afe745c02f0958
DIST DirectXShaderCompiler-headers-aa6cef192b8e693916eb713e7a9ccadf06062ceb.tar.gz 547754 BLAKE2B cc01b7846f107b541f0733d478bb322bdd5d95ecbd78f85901f9232e4be31c8ceb4cbc1395b2a57c85adc5ec932d409752e050cbab2b032cfb17dc569c47d0b6 SHA512 b68e111dbc57d957d062b4cbbf6ef9e7aa47ac03c68b543fd3d38d71ea333437165339f6e910d930e4e243b18d34eac800bb20b2f739a4fbdd3700f38152f39c
DIST DirectXShaderCompiler-tools-4d2f0b40bfe290dea6c6904dafdf7fd8328ba346.tar.gz 3206156 BLAKE2B 0874d1cb0f234f6d26009290a36aef406893d4591ec0c64e66449b7a0bc9c9987b2fee69a98e0a667eecfc9c93561347b6e6d1921a41cb0acc3de84e0d3e1676 SHA512 1d2368a290c1cb003db98289405f2cca479c5bb0175441f4243a25b9d810d6071bd639343f46c081efa6ab701662a59c8587c1a1016922dda61e1611ae0f8d26
DIST DirectXShaderCompiler-tools-a62abcb402009b9ca5975e6167c09f237f630e0e.tar.gz 3289276 BLAKE2B 999a2aa84394f6b2494a35e24ff5c4b09cb05564370a427d5409e30e6c9c9ff85a32515b9b7f454f1352c3e6b863ab7078beff0a1f37adb34d6f6f779dd58e38 SHA512 e1cadd124b9a2d47119008c1bdf986518b4df36f7dc5136ed0abd3731cd6b9e123efeb5f8d267b243117b89fd107aca14f3a0622920b5a02e45e4d708a9496ad