# Maintainer: lod pkgname=lib32-amdvlk pkgver=2019.Q3.6 pkgrel=1 _llpc_commit=ec210a78b6a280b00fb1765dd588c3970b6dc818 _xgl_commit=2cb5558b94c5dc839e093cb439057a1802426c8e _pal_commit=88d997710b4e405f3a8e3fd60a38afee9e3e77e2 _llvm_commit=1fc1a7d4248b4749c3df21eb48f7ae97b6cddf74 _metrohash_commit=690a521d9beb2e1050cc8f273fdabc13b31bf8f6 _cwpack_commit=b601c88aeca7a7b08becb3d32709de383 pkgdesc='Open-source Vulkan driver for AMD Radeon™ graphics adapters (32 Bit)' arch=(x86_64) url='https://github.com/GPUOpen-Drivers' license=('MIT') depends=('vulkan-icd-loader') provides=('lib32-amdvlk' 'lib32-vulkan-driver') conflicts=('lib32-vulkan-amdvlk' 'lib32-amdvlk' 'lib32-amdvlk-git') makedepends=('cmake' 'dri2proto' 'gcc' 'lib32-gcc-libs' 'lib32-libdrm' 'lib32-libxml2' 'libxrandr' 'python' 'wayland' 'xorg-server-devel' 'ninja') source=(AMDVLK-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/AMDVLK/archive/v-${pkgver}.tar.gz llpc-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/llpc/archive/${_llpc_commit}.tar.gz xgl-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/xgl/archive/${_xgl_commit}.tar.gz pal-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/pal/archive/${_pal_commit}.tar.gz llvm-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/llvm/archive/${_llvm_commit}.tar.gz MetroHash-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/MetroHash/archive/${_metrohash_commit}.tar.gz CWPack-$pkgname-$pkgver.tar.gz::https://github.com/GPUOpen-Drivers/CWPack/archive/${_cwpack_commit}.tar.gz) sha256sums=('1970d7cdf31e564c7a98737442fc7ed3593da24fb7e4dabe26ec120017aa0538' '88ae1c7d465e6313c324e2802ffa024fc3e1ed588ac4b48170c736fea9181e93' 'fb9a6a497f488a3d9682b51ec9d615199b2f6770446b9cec47bd6a7c81278269' '063f3446339a42b08128b4acb5b74e846a0bb5ebd9d3aae3feec5011a1797f1d' '06104277583082701ca55c28093005919eead930fe93b8737e8e444628100535' 'a5c1e77efd593853ee93a8f168fb7826baae52ca56df1d46f9ccde3d4e1f6c12' '58ca397f33d62bcfecaecd89eb4ad466a6c33e1c619e5cf742822074f1f7d664') prepare() { ln -sf ${srcdir}/AMDVLK-v-${pkgver} ${srcdir}/AMDVLK ln -sf ${srcdir}/xgl-${_xgl_commit} ${srcdir}/xgl ln -sf ${srcdir}/pal-${_pal_commit} ${srcdir}/pal ln -sf ${srcdir}/llpc-${_llpc_commit} ${srcdir}/llpc ln -sf ${srcdir}/llvm-${_llvm_commit} ${srcdir}/llvm ln -sf ${srcdir}/MetroHash-${_metrohash_commit} ${srcdir}/MetroHash ln -sf ${srcdir}/CWPack-${_metrohash_commit} ${srcdir}/CWPack #remove -Werror to build with gcc9 sed -i "s/-Werror//g" $srcdir/pal/shared/gpuopen/cmake/AMD.cmake } build() { # Package needs -fno-plt so we'll add it in case someone uses non-default build flags.. would it be better to add !buildflags option? # -mno-avx fixes crashes that occur with some configs export CFLAGS="$CFLAGS -fno-plt -mno-avx" export CXXFLAGS="$CXXFLAGS -fno-plt -mno-avx" export LDFLAGS="$LDFLAGS -z now" export PKG_CONFIG_PATH='/usr/lib32/pkgconfig' cd xgl cmake -H. -Bbuilds/Release \ -DCMAKE_C_FLAGS=-m32 \ -DCMAKE_CXX_FLAGS=-m32 \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_TARGET_ARCH:STRING=i686 \ -DLLVM_DEFAULT_TARGET_TRIPLE="i686-pc-linux-gnu" \ -DBUILD_WAYLAND_SUPPORT=On \ -DXGL_METROHASH_PATH=${srcdir}/MetroHash \ -DXGL_CWPACK_PATH=${srcdir}/CWPack \ -G Ninja ninja -C builds/Release } package() { install -m755 -d ${pkgdir}/usr/lib32 install -m755 -d ${pkgdir}/usr/share/vulkan/icd.d install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname} install xgl/builds/Release/icd/amdvlk32.so ${pkgdir}/usr/lib32/ install AMDVLK/json/Redhat/amd_icd32.json ${pkgdir}/usr/share/vulkan/icd.d/ install AMDVLK/LICENSE.txt ${pkgdir}/usr/share/licenses/${pkgname}/ sed -i "s/\/lib/\/lib32/g" ${pkgdir}/usr/share/vulkan/icd.d/amd_icd32.json }