diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d74cf5a54..46be75af4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -43,7 +43,7 @@ variables: FDO_UPSTREAM_REPO: wayland/weston FDO_REPO_SUFFIX: "$BUILD_OS-$FDO_DISTRIBUTION_VERSION/$BUILD_ARCH" - FDO_DISTRIBUTION_TAG: '2025-07-4-v6.14' + FDO_DISTRIBUTION_TAG: '2025-07-17-vulkan-headers' include: diff --git a/.gitlab-ci/build-deps.sh b/.gitlab-ci/build-deps.sh index d975a4cbc..13dae4902 100755 --- a/.gitlab-ci/build-deps.sh +++ b/.gitlab-ci/build-deps.sh @@ -151,6 +151,15 @@ cd .. rm -rf drm fdo_log_section_end install_libdrm +# Build and install Vulkan-Headers with a defined version, mostly because +# the version in Debian 11 (bullseye) is too old to build vulkan-renderer. +git clone --branch sdk-1.3.239.0 --depth=1 https://github.com/KhronosGroup/Vulkan-Headers +cd Vulkan-Headers +cmake -G Ninja -B build +ninja ${NINJAFLAGS} -C build install +cd .. +rm -rf Vulkan-Headers + # Build and install our own version of Mesa. Debian provides a perfectly usable # Mesa, however llvmpipe's rendering behaviour can change subtly over time. # This doesn't work for our tests which expect pixel-precise reproduction, so diff --git a/.gitlab-ci/debian-install.sh b/.gitlab-ci/debian-install.sh index 1fe7d57f3..ad143d1b8 100644 --- a/.gitlab-ci/debian-install.sh +++ b/.gitlab-ci/debian-install.sh @@ -26,6 +26,13 @@ MESA_DEV_PKGS=" python3-mako " +# These get temporarily installed for other build dependencies and then +# force-removed. +# cmake is used by Vulkan-Headers +BUILD_DEV_PKGS=" + cmake +" + # Needed for running the custom-built mesa MESA_RUNTIME_PKGS=" libllvm${LLVM_VERSION} @@ -125,6 +132,7 @@ apt-get -y --no-install-recommends install \ cargo rustc \ iproute2 udev \ $MESA_DEV_PKGS \ + $BUILD_DEV_PKGS \ $MESA_RUNTIME_PKGS \ $LINUX_DEV_PKGS \ @@ -138,4 +146,4 @@ fi # And remove packages which are only required for our build dependencies, # which we don't need bloating the image whilst we build and run Weston. -apt-get -y --autoremove purge $LINUX_DEV_PKGS $MESA_DEV_PKGS +apt-get -y --autoremove purge $LINUX_DEV_PKGS $MESA_DEV_PKGS $BUILD_DEV_PKGS