64 lines
2.3 KiB
Bash

# Template file for 'DirectXShaderCompiler'
pkgname=DirectXShaderCompiler
version=1.8.2502
revision=1
archs="x86_64* i686*"
build_style=cmake
configure_args="-C ../cmake/caches/PredefinedParams.cmake"
hostmakedepends="python3 git"
makedepends="libxml2-devel"
short_desc="DirectX Shader Compiler based on LLVM/Clang. "
maintainer="John <me@johnnynator.dev>"
license="LLVM"
homepage="https://github.com/microsoft/DirectXShaderCompiler"
_SPIRV_Headers_commit=3f17b2af6784bfa2c5aa5dbb8e0e74a607dd8b3b
_SPIRV_Tools_commit=4d2f0b40bfe290dea6c6904dafdf7fd8328ba346
_DirectX_Headers_commit=980971e835876dc0cde415e8f9bc646e64667bf7
distfiles="https://github.com/microsoft/DirectXShaderCompiler/archive/refs/tags/v${version}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${_SPIRV_Headers_commit}.tar.gz
https://github.com/KhronosGroup/SPIRV-Tools/archive/${_SPIRV_Tools_commit}.tar.gz
https://github.com/microsoft/DirectX-Headers/archive/${_DirectX_Headers_commit}.tar.gz"
checksum="1318cbe4860d5ee82b447b12391ee7a8d881fbb286914075a099415b741e0c13
2301e11e5c77213258d6863bf4e6c607a8c6431fa8336e98ac6a2131bd6284f8
41481a45441d92b2404aa06bdecbb0302f22636335be4e19023632c83fa89aa1
b5a4b6d8806ff7f29f19879f83d015dbe8740676d4ca0b48647a789cc7773c4e"
skip_extraction="
${_SPIRV_Headers_commit}.tar.gz
${_SPIRV_Tools_commit}.tar.gz
${_DirectX_Headers_commit}.tar.gz
"
if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
# Tests on musl would require some patching to be done
# Also some fun with Mutexes. so mt is disabled for now
configure_args+=" -DLLVM_INCLUDE_TESTS=OFF -DCLANG_INCLUDE_TESTS=FALSE -DHLSL_INCLUDE_TESTS=FALSE -DLLVM_ENABLE_THREADS=OFF"
fi
nocross="fun with cmake and bunlded llvm"
post_extract() {
vsrcextract -C external/SPIRV-Headers ${_SPIRV_Headers_commit}.tar.gz
vsrcextract -C external/SPIRV-Tools ${_SPIRV_Tools_commit}.tar.gz
vsrcextract -C external/DirectX-Headers ${_DirectX_Headers_commit}.tar.gz
}
do_install() {
for f in build/lib/libdxcompiler.so*; do
vinstall $f 644 usr/lib
done
vbin build/bin/dxc
vmkdir usr/include
vcopy include/dxc usr/include/
vlicense LICENSE.TXT
vlicense ThirdPartyNotices.txt
}
DirectXShaderCompiler-devel_package() {
short_desc+="${short_desc} - development files"
depends="${sourcepkg}>=${version}_${revision}"
pkg_install() {
vmove usr/include
vmove usr/bin/dxc
}
}