From f1b7b8c0ee6b796c90dab54e713ed6d08ef98356 Mon Sep 17 00:00:00 2001 From: Andres Gomez Date: Thu, 20 Feb 2020 17:09:03 +0200 Subject: [PATCH] gitlab-ci: build VulkanTools into the Vulkan testing container In preparation for having automated testing with Vulkan traces. Signed-off-by: Andres Gomez Reviewed-by: Samuel Pitoiset Reviewed-by: Alexandros Frantzis --- .gitlab-ci.yml | 2 +- .gitlab-ci/build-vulkantools.sh | 29 +++++++++++++++++++++++++++++ .gitlab-ci/container/x86_test-vk.sh | 13 +++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 .gitlab-ci/build-vulkantools.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 41dbf0bdc92..6a69e6e853b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -131,7 +131,7 @@ x86_test-gl: x86_test-vk: extends: x86_build variables: - DEBIAN_TAG: &x86_test-vk "2020-02-02" + DEBIAN_TAG: &x86_test-vk "2020-02-03" # Can only be triggered manually on personal branches because RADV is the only # driver that does Vulkan testing at the moment. rules: diff --git a/.gitlab-ci/build-vulkantools.sh b/.gitlab-ci/build-vulkantools.sh new file mode 100644 index 00000000000..f1fc64aef4c --- /dev/null +++ b/.gitlab-ci/build-vulkantools.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +set -ex + +VULKANTOOLS_VERSION=1862c6a47b64cd09156205d7f7e6b3bfcea76390 + +git clone https://github.com/LunarG/VulkanTools.git --single-branch --no-checkout /VulkanTools +pushd /VulkanTools +git checkout "$VULKANTOOLS_VERSION" +./update_external_sources.sh +mkdir _build +./scripts/update_deps.py --dir=_build --config=release --generator=Ninja +cmake -G Ninja -B_build -H. \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/VulkanTools/build \ + -DBUILD_TESTS=OFF \ + -DBUILD_VLF=OFF \ + -DBUILD_VKTRACE=OFF \ + -DBUILD_VIA=OFF \ + -DBUILD_VKTRACE_REPLAY=OFF \ + -C_build/helper.cmake +ninja -C _build -j4 VkLayer_screenshot VkLayer_screenshot-staging-json +mkdir -p build/etc/vulkan/explicit_layer.d +mkdir build/lib +install _build/layersvt/staging-json/VkLayer_screenshot.json build/etc/vulkan/explicit_layer.d +install _build/layersvt/libVkLayer_screenshot.so build/lib +strip build/lib/* +find . -not -path './build' -not -path './build/*' -delete +popd diff --git a/.gitlab-ci/container/x86_test-vk.sh b/.gitlab-ci/container/x86_test-vk.sh index 13660481214..aeb86ab1331 100644 --- a/.gitlab-ci/container/x86_test-vk.sh +++ b/.gitlab-ci/container/x86_test-vk.sh @@ -43,10 +43,16 @@ apt-get install -y --no-remove \ libvulkan-dev \ libwayland-client0 \ libwayland-server0 \ + libxcb-ewmh2 \ + libxcb-ewmh-dev \ + libxcb-keysyms1 \ + libxcb-keysyms1-dev \ libxcb-randr0 \ libxcb-xfixes0 \ libxkbcommon0 \ libxkbcommon-dev \ + libxrandr2 \ + libxrandr-dev \ libxrender1 \ libxrender-dev \ libllvm9 \ @@ -71,6 +77,10 @@ apt-get install -y --no-remove \ . .gitlab-ci/build-gfxreconstruct.sh +############### Build VulkanTools + +. .gitlab-ci/build-vulkantools.sh + ############### Uninstall the build software apt-get purge -y \ @@ -84,7 +94,10 @@ apt-get purge -y \ liblz4-dev \ libpng-dev \ libvulkan-dev \ + libxcb-ewmh-dev \ + libxcb-keysyms1-dev \ libxkbcommon-dev \ + libxrandr-dev \ libxrender-dev \ meson \ patch \ -- 2.30.2