void-packages/srcpkgs/amdvlk/template

90 lines
3.6 KiB
Bash

# Template file for 'amdvlk'
pkgname=amdvlk
version=2020.Q2.1
revision=1
_llpc_commit=9889f54c9a31743b48f3dafcb8ca0c106ed15da4
_xgl_commit=1f6143fb951622e06fe7b9396957976fc9feddc7
_pal_commit=8b2381a1d05cd2c9c4e7cc2eeda053e76d8c9a4a
_llvm_project_commit=50077fcc15e5844dacd820dcdb02edb23fc00330
_spvgen_commit=a223c8636f8306697f6fdc86f742b99fbd8c5dbd
_MetroHash_commit=2b6fee002db6cc92345b02aeee963ebaaf4c0e2f
_CWPack_commit=b601c88aeca7a7b08becb3d32709de383c8ee428
archs="i686* x86_64*"
create_wrksrc=yes
build_wrksrc="xgl"
build_style=cmake
configure_args="-DBUILD_WAYLAND_SUPPORT=ON
-DXGL_METROHASH_PATH=../../metrohash
-DXGL_CWPACK_PATH=../../cwpack"
hostmakedepends="pkg-config python3 perl"
makedepends="libxml2-devel xorg-server-devel libXrandr-devel libffi-devel"
depends="vulkan-loader"
short_desc="AMD Open Source Driver For Vulkan"
maintainer="John <johnz@posteo.net>"
license="MIT"
homepage="https://github.com/GPUOpen-Drivers/AMDVLK"
distfiles="https://github.com/GPUOpen-Drivers/AMDVLK/archive/v-${version}.tar.gz
https://github.com/GPUOpen-Drivers/llpc/archive/${_llpc_commit}.tar.gz
https://github.com/GPUOpen-Drivers/xgl/archive/${_xgl_commit}.tar.gz
https://github.com/GPUOpen-Drivers/pal/archive/${_pal_commit}.tar.gz
https://github.com/GPUOpen-Drivers/llvm-project/archive/${_llvm_project_commit}.tar.gz
https://github.com/GPUOpen-Drivers/spvgen/archive/${_spvgen_commit}.tar.gz
https://github.com/GPUOpen-Drivers/MetroHash/archive/${_MetroHash_commit}.tar.gz
https://github.com/GPUOpen-Drivers/CWPack/archive/${_CWPack_commit}.tar.gz"
checksum="c12dcc0dfd7d0b30892b8f78c138792e2639584f4f838fc04584bc29409989ee
777ab95d75aabc017bd77d9bb2d6592fd95482430eeb37dfe50a11e8f943eee7
da0b501be675915ff6786a4be469038f478c28221284ae022a6dc5c58ee3ddd7
0f6253abf01e7a70e44873551c5fff9cde1d671eb4403d7902f98b6c198fd665
9bb5a4e0837e4d56dcb95e12ffea10d737b38534e72bee07d1270f00fcbf0f45
8160c3e01041cfe2a70630fd8020207973e60e71bb41fd1d364b86a1ecbb5bd4
e8ecf026584dd953e39c3abba2eb04d28b28ed4577482ee70265f0d421fef398
58ca397f33d62bcfecaecd89eb4ad466a6c33e1c619e5cf742822074f1f7d664"
nocross=yes
lib32files="/usr/share/vulkan/icd.d/amd_icd32.json"
post_extract() {
mv ${wrksrc}/AMDVLK-v-${version} ${wrksrc}/AMDVLK
mv ${wrksrc}/xgl-${_xgl_commit} ${wrksrc}/xgl
mv ${wrksrc}/pal-${_pal_commit} ${wrksrc}/pal
mv ${wrksrc}/llpc-${_llpc_commit} ${wrksrc}/llpc
mv ${wrksrc}/llvm-project-${_llvm_project_commit} ${wrksrc}/llvm-project
mv ${wrksrc}/spvgen-${_spvgen_commit} ${wrksrc}/spvgen
mv ${wrksrc}/MetroHash-${_MetroHash_commit} ${wrksrc}/metrohash
mv ${wrksrc}/CWPack-${_CWPack_commit} ${wrksrc}/cwpack
}
pre_configure() {
case "$XBPS_TARGET_MACHINE" in
i686*) _arch="X86";;
x86_64*) _arch="X86";;
esac
configure_args+=" -DLLVM_TARGET_ARCH=${_arch}"
configure_args+=" -DLLVM_DEFAULT_TARGET_TRIPLE=${XBPS_CROSS_TRIPLET:-$XBPS_TRIPLET}"
}
pre_build() {
# lower burden on build servers, llvm eats too much memory
if [ "$XBPS_MAKEJOBS" -gt 2 ]; then
echo $XBPS_MAKEJOBS
export makejobs="-j$(( $XBPS_MAKEJOBS / 2 ))"
echo $XBPS_MAKEJOBS
fi
}
do_install() {
case $XBPS_TARGET_MACHINE in
i686*|mips*|arm*|ppc|ppc-musl)
vinstall build/icd/amdvlk32.so 644 usr/lib/
vinstall ${wrksrc}/AMDVLK/json/Redhat/amd_icd32.json 644 usr/share/vulkan/icd.d/
vsed -i ${DESTDIR}/usr/share/vulkan/icd.d/amd_icd32.json -e 's#/usr/lib/#/usr/lib32/#g'
;;
*)
vinstall build/icd/amdvlk64.so 644 usr/lib/
vinstall ${wrksrc}/AMDVLK/json/Redhat/amd_icd64.json 644 usr/share/vulkan/icd.d/
vsed -i ${DESTDIR}/usr/share/vulkan/icd.d/amd_icd64.json -e 's#/usr/lib64/#/usr/lib/#g'
;;
esac
vlicense ${wrksrc}/AMDVLK/LICENSE.txt
}