archrelease: copy trunk to community-x86_64
[ArchLinux/community.git] / lib32-amdvlk / trunk / PKGBUILD
blob801e6cce56af1e2ea4d42045d49f6e5e71e20a39
1 # Maintainer: Laurent Carlier <lordheavym@gmail.com>
2 # Contributor: lod <aur@cyber-anlage.de>
4 pkgname=lib32-amdvlk
5 pkgver=2023.Q2.1
6 pkgrel=1
7 pkgdesc="AMD's standalone Vulkan driver"
8 arch=(x86_64)
9 url="https://github.com/GPUOpen-Drivers"
10 license=('MIT')
11 provides=('lib32-vulkan-driver')
12 depends=('lib32-zstd')
13 makedepends=('perl-xml-xpath' 'python' 'lib32-wayland' 'lib32-libxrandr' 'xorg-server-devel' 'cmake' 'ninja' 'git')
14 options=('!lto')
15 source=("https://github.com/GPUOpen-Drivers/AMDVLK/archive/v-${pkgver}.tar.gz")
16 sha256sums=('14ebcd71f8f2be44244abd2fe7ae9446b522105b88583b13ed763a41efb6cb14')
17             
18 prepare() {
19   local nrepos path name revision
20   
21   nrepos=$(xpath -q -e //project AMDVLK-v-${pkgver}/default.xml | wc -l)
22   
23   while (($nrepos>0))
24   do
25     path=$(xpath -q -e //project[$nrepos]/@path AMDVLK-v-${pkgver}/default.xml | sed 's/ path="drivers\/\(.*\)"/\1/g')
26     name=$(xpath -q -e //project[$nrepos]/@name AMDVLK-v-${pkgver}/default.xml | sed 's/ name="\(.*\)"/\1/g')
27     revision=$(xpath -q -e //project[$nrepos]/@revision AMDVLK-v-${pkgver}/default.xml | sed 's/ revision="\(.*\)"/\1/g')
28     git clone --recurse-submodules https://github.com/GPUOpen-Drivers/$name $path
29       pushd $path
30         git checkout $revision
31         git submodule update
32       popd
33     (( nrepos-- ))
34   done
37 build() {
38   export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
40   cd ${srcdir}/xgl
41   cmake -H. -Bbuilds/Release \
42     -DCMAKE_BUILD_TYPE=Release \
43     -DCMAKE_C_FLAGS=-m32 \
44     -DCMAKE_CXX_FLAGS=-m32 \
45     -DLLVM_TARGET_ARCH:STRING=i686 \
46     -DLLVM_DEFAULT_TARGET_TRIPLE="i686-pc-linux-gnu" \
47     -DBUILD_WAYLAND_SUPPORT=On \
48     -DVKI_RAY_TRACING=Off \
49     -G Ninja
50     
51   ninja -C builds/Release
54 package() {
55   install -m755 -d "${pkgdir}"/usr/lib32
56   install -m755 -d "${pkgdir}"/usr/share/vulkan/icd.d
57   install -m755 -d "${pkgdir}"/usr/share/vulkan/implicit_layer.d
58   install -m755 -d "${pkgdir}"/usr/share/licenses/${pkgname}
60   install xgl/builds/Release/icd/amdvlk32.so "${pkgdir}"/usr/lib32/
61   install xgl/builds/Release/icd/amd_icd32.json "${pkgdir}"/usr/share/vulkan/icd.d/
62   install xgl/builds/Release/icd/amd_icd32.json "${pkgdir}"/usr/share/vulkan/implicit_layer.d/
63   install AMDVLK-v-${pkgver}/LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/
64   
65   sed -i "s/\/lib/\/lib32/g" "${pkgdir}"/usr/share/vulkan/icd.d/amd_icd32.json
66   sed -i "s/\/lib/\/lib32/g" "${pkgdir}"/usr/share/vulkan/implicit_layer.d/amd_icd32.json