# $Id$ # Maintainer: Laurent Carlier # ALARM: Kevin Mihelich # - use suffix=32 in packaging for 32-bit ARM architectures pkgbase=vulkan-tools pkgname=(vulkan-trace vulkan-extra-layers) pkgver=1.1.70.1 pkgrel=1 arch=(x86_64) url="http://lunarg.com/" license=('custom') depends=() makedepends=(git cmake wget python-lxml libxcb libxrandr imagemagick qt5-svg) source=("vulkanTools-sdk-${pkgver}::https://github.com/LunarG/VulkanTools/archive/sdk-${pkgver}.tar.gz" 'git://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git#commit=1fede1a6b8d6103cc9fcacb567747aa2af167849' 'git://github.com/open-source-parsers/jsoncpp.git#commit=f700fe455940d4d325c088b9174a173e130e0fa8') sha256sums=('7e8c9bad6932a795d1dd330e9710a38c9d0157189b2656df91264dbd051653b9' 'SKIP' 'SKIP') build() { cd "${srcdir}/VulkanTools-sdk-${pkgver}" # 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 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 \ -DBUILD_WSI_XCB_SUPPORT=On \ -DBUILD_WSI_XLIB_SUPPORT=On \ -DBUILD_WSI_WAYLAND_SUPPORT=On \ -DBUILD_WSI_MIR_SUPPORT=Off \ -DBUILD_TESTS=OFF \ -DBUILD_DEMOS=OFF \ -DBUILD_VIA=OFF \ -DCMAKE_BUILD_TYPE=Release \ .. make } package_vulkan-trace() { pkgdesc="Vulkan tracing and replaying tools" depends=(vulkan-icd-loader qt5-svg) 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} install -dm755 ${pkgdir}/usr/share/vulkan/explicit_layer.d install -m755 build/vktrace/{vkreplay,vktrace}${suffix} ${pkgdir}/usr/bin/ install -m755 build/vktrace/vktraceviewer${suffix} ${pkgdir}/usr/bin/ install -m755 build/vktrace/libVkLayer_vktrace_layer${suffix}.so ${pkgdir}/usr/lib/ 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 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}/ }