PKGBUILDs/extra/vulkan-tools/PKGBUILD

104 lines
3.4 KiB
Bash
Raw Normal View History

2016-09-02 00:36:46 +00:00
# $Id$
# Maintainer: Laurent Carlier <lordheavym@gmail.com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - use suffix=32 in packaging for 32-bit ARM architectures
2018-03-10 14:08:44 +00:00
# - strip -m32 from CMakeLists
2016-09-02 00:36:46 +00:00
pkgbase=vulkan-tools
pkgname=(vulkan-trace vulkan-extra-layers)
2018-03-10 13:16:05 +00:00
pkgver=1.1.70.1
2016-12-03 15:51:36 +00:00
pkgrel=1
2018-02-11 16:57:40 +00:00
arch=(x86_64)
2016-09-02 00:36:46 +00:00
url="http://lunarg.com/"
license=('custom')
depends=()
2017-04-16 14:39:01 +00:00
makedepends=(git cmake wget python-lxml libxcb libxrandr imagemagick qt5-svg)
2018-02-11 16:57:40 +00:00
source=("vulkanTools-sdk-${pkgver}::https://github.com/LunarG/VulkanTools/archive/sdk-${pkgver}.tar.gz"
2018-03-10 13:16:05 +00:00
'git://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git#commit=1fede1a6b8d6103cc9fcacb567747aa2af167849'
2018-02-11 16:57:40 +00:00
'git://github.com/open-source-parsers/jsoncpp.git#commit=f700fe455940d4d325c088b9174a173e130e0fa8')
2018-03-10 13:16:05 +00:00
sha256sums=('7e8c9bad6932a795d1dd330e9710a38c9d0157189b2656df91264dbd051653b9'
2018-02-11 16:57:40 +00:00
'SKIP'
'SKIP')
2016-09-02 00:36:46 +00:00
2018-03-10 14:08:44 +00:00
prepare() {
cd "${srcdir}/VulkanTools-sdk-${pkgver}"
sed -i 's/-m32//g' vktrace/CMakeLists.txt
}
2016-09-02 00:36:46 +00:00
build() {
cd "${srcdir}/VulkanTools-sdk-${pkgver}"
2018-02-11 16:57:40 +00:00
# broken with 1.0.68.0 release
pushd submodules
git clone ${srcdir}/Vulkan-LoaderAndValidationLayers
git clone ${srcdir}/jsoncpp
cd "${srcdir}/VulkanTools-sdk-${pkgver}"/submodules/jsoncpp
python amalgamate.py
cd "${srcdir}/VulkanTools-sdk-${pkgver}"/submodules/Vulkan-LoaderAndValidationLayers
./update_external_sources.sh "$@"
popd
2016-09-02 00:36:46 +00:00
rm -rf build ; mkdir build ; cd build
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
-DCMAKE_INSTALL_DATADIR=/usr/share \
-DCMAKE_SKIP_RPATH=True \
2016-12-20 00:19:17 +00:00
-DBUILD_WSI_XCB_SUPPORT=On \
-DBUILD_WSI_XLIB_SUPPORT=On \
-DBUILD_WSI_WAYLAND_SUPPORT=On \
-DBUILD_WSI_MIR_SUPPORT=Off \
2016-09-02 00:36:46 +00:00
-DBUILD_TESTS=OFF \
-DBUILD_DEMOS=OFF \
2016-12-03 15:51:36 +00:00
-DBUILD_VIA=OFF \
2016-09-02 00:36:46 +00:00
-DCMAKE_BUILD_TYPE=Release \
..
make
}
package_vulkan-trace() {
pkgdesc="Vulkan tracing and replaying tools"
2016-12-03 15:51:36 +00:00
depends=(vulkan-icd-loader qt5-svg)
2016-09-02 00:36:46 +00:00
groups=('vulkan-devel')
cd "${srcdir}/VulkanTools-sdk-${pkgver}"
[[ $CARCH == i686 || $CARCH == arm || $CARCH == armv6h || $CARCH == armv7h ]] && suffix=32
install -dm755 ${pkgdir}/usr/{bin,lib}
install -dm755 ${pkgdir}/usr/share/licenses/${pkgname}
2017-09-04 16:48:34 +00:00
install -dm755 ${pkgdir}/usr/share/vulkan/explicit_layer.d
2016-09-02 00:36:46 +00:00
install -m755 build/vktrace/{vkreplay,vktrace}${suffix} ${pkgdir}/usr/bin/
2016-12-03 15:51:36 +00:00
install -m755 build/vktrace/vktraceviewer${suffix} ${pkgdir}/usr/bin/
2016-09-02 00:36:46 +00:00
install -m755 build/vktrace/libVkLayer_vktrace_layer${suffix}.so ${pkgdir}/usr/lib/
2017-09-04 16:48:34 +00:00
sed 's@../vktrace/libVkLayer_vktrace_layer.so@libVkLayer_vktrace_layer'${suffix}'.so@'\
vktrace/vktrace_layer/linux/VkLayer_vktrace_layer.json \
> ${pkgdir}/usr/share/vulkan/explicit_layer.d/VkLayer_vktrace_layer.json
2016-09-02 00:36:46 +00:00
install -m644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/
}
package_vulkan-extra-layers() {
pkgdesc="Extra layers for Vulkan development"
depends=(vulkan-validation-layers)
groups=('vulkan-devel')
cd "${srcdir}/VulkanTools-sdk-${pkgver}"
install -dm755 ${pkgdir}/usr/lib
install -dm755 ${pkgdir}/usr/share/licenses/${pkgname}
install -dm755 ${pkgdir}/usr/share/vulkan/explicit_layer.d
install -m644 build/layersvt/*.so ${pkgdir}/usr/lib
# fix library paths
for i in layersvt/linux/*.json ; do
sed 's@./@@' $i > ${pkgdir}/usr/share/vulkan/explicit_layer.d/$(basename $i)
done
install -m644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/
}