void-packages/srcpkgs/amdvlk/template

90 lines
3.6 KiB
Bash

# Template file for 'amdvlk'
pkgname=amdvlk
version=2020.Q2.3
revision=1
_llpc_commit=61b5d58e8891dc37e473064d429f0496d5254e52
_xgl_commit=877b773000248dffa025c42d9c4074d1a07b9e47
_pal_commit=a83f67db9f0d2f16bbc698aeefa9c5e9476c993a
_llvm_project_commit=53692d985a53a336e07907c2d4b86bf2deb66908
_spvgen_commit=d4817ab957f79762da83b7fc1d3f2816dbdc13fd
_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="3c0bf95b11bb38fbc8aa3cf620c07117473ca8f99e0c1534db4fa5ae03b8a9ac
419869a796b0c75e06f477d388d3755c5632bda52843059e46977c625146bd95
90e97318fc56a90799d0434a88e3cf70b60f53fae7399ddafa9baeadee75ff26
274ef004dda749dd8deec94436c1f34bba9e0a866fbbce8dbcb2be999b386688
4a37b7f827b42d8812a552cde3743d0e3220101a4f0c6679df65c4271d5783fd
fc13a42980efc55ca6aec36bd60b5c621207468a0c5c22f44538260cf46542c5
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
}