From ef5d06d610dc34b072573e2ff149a0324224a41e Mon Sep 17 00:00:00 2001 From: tibequadorian Date: Fri, 25 Nov 2022 00:00:08 +0100 Subject: [PATCH 1/6] SPIRV-Headers: update to 1.3.231.1. --- srcpkgs/SPIRV-Headers/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/SPIRV-Headers/template b/srcpkgs/SPIRV-Headers/template index b3d14e16dfe8..8bb7d5f8b1ae 100644 --- a/srcpkgs/SPIRV-Headers/template +++ b/srcpkgs/SPIRV-Headers/template @@ -1,7 +1,7 @@ # Template file for 'SPIRV-Headers' pkgname=SPIRV-Headers reverts="1.5.4.raytracing.fixed_1 1.5.3_2 1.5.3_1 1.5.1_1 1.4.1_1" -version=1.3.224.1 +version=1.3.231.1 revision=1 build_style=cmake short_desc="Machine-readable files for the SPIR-V Registry" @@ -9,7 +9,7 @@ maintainer="tibequadorian " license="MIT" homepage="https://github.com/KhronosGroup/SPIRV-Headers" distfiles="https://github.com/KhronosGroup/SPIRV-Headers/archive/sdk-${version}.tar.gz" -checksum=c85714bfe62f84007286bd3b3c0471af0a7e06ab66bc2ca4623043011b28737f +checksum=fc340700b005e9a2adc98475b5afbbabd1bc931f789a2afd02d54ebc22522af3 post_install() { vlicense LICENSE From 8c9daaa957c8d003d6c3453c4fd943a379898e57 Mon Sep 17 00:00:00 2001 From: tibequadorian Date: Fri, 25 Nov 2022 00:01:34 +0100 Subject: [PATCH 2/6] SPIRV-Tools: update to 2022.4. --- srcpkgs/SPIRV-Tools/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/SPIRV-Tools/template b/srcpkgs/SPIRV-Tools/template index e12fac380ba8..6a280baa0c28 100644 --- a/srcpkgs/SPIRV-Tools/template +++ b/srcpkgs/SPIRV-Tools/template @@ -1,6 +1,6 @@ # Template file for 'SPIRV-Tools' pkgname=SPIRV-Tools -version=2022.3 +version=2022.4 revision=1 build_style=cmake configure_args="-DSPIRV_SKIP_TESTS=ON -DSPIRV_WERROR=OFF @@ -13,7 +13,7 @@ license="Apache-2.0" homepage="https://github.com/KhronosGroup/SPIRV-Tools" changelog="https://raw.githubusercontent.com/KhronosGroup/SPIRV-Tools/master/CHANGES" distfiles="https://github.com/KhronosGroup/SPIRV-Tools/archive/v${version}.tar.gz" -checksum=df6dc5ed5351f99aaaa6acc78111342d3400b27b99f18148d3be408570144a70 +checksum=a156215a2d7c6c5b267933ed691877a9a66f07d75970da33ce9ad627a71389d7 LDFLAGS="-Wl,--no-undefined" SPIRV-Tools-devel_package() { From 517b29004a18de54a03ddbf1c4caa575732f4821 Mon Sep 17 00:00:00 2001 From: tibequadorian Date: Sat, 7 May 2022 23:27:13 +0200 Subject: [PATCH 3/6] Vulkan-Headers: update to 1.3.231.1. --- srcpkgs/Vulkan-Headers/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/Vulkan-Headers/template b/srcpkgs/Vulkan-Headers/template index e20d6e72c98e..071675e44522 100644 --- a/srcpkgs/Vulkan-Headers/template +++ b/srcpkgs/Vulkan-Headers/template @@ -1,6 +1,6 @@ # Template file for 'Vulkan-Headers' pkgname=Vulkan-Headers -version=1.3.204.1 +version=1.3.231.1 revision=1 build_style=cmake short_desc="Vulkan header files" @@ -8,4 +8,4 @@ maintainer="tibequadorian " license="Apache-2.0" homepage="https://www.khronos.org/vulkan/" distfiles="https://github.com/KhronosGroup/Vulkan-Headers/archive/sdk-${version}.tar.gz" -checksum=9c4d33f71467c915749fbf48c0c3a8ee7833f15babf398e3463cd88791fb592e +checksum=6e16051ccb28821b907a08025eedb82cc73e1056924b32f75880ecae2499f7f6 From f83bf76693fcfe6b6e9f09fc9c0b7d17fab1b4f6 Mon Sep 17 00:00:00 2001 From: tibequadorian Date: Sat, 7 May 2022 23:27:54 +0200 Subject: [PATCH 4/6] Vulkan-Tools: update to 1.3.231.1. Enable cross-builds for vkcube, thanks @JamiKettunen --- .../patches/vkcube-cross-build.patch | 127 ++++++++++++++++++ srcpkgs/Vulkan-Tools/template | 18 +-- 2 files changed, 133 insertions(+), 12 deletions(-) create mode 100644 srcpkgs/Vulkan-Tools/patches/vkcube-cross-build.patch diff --git a/srcpkgs/Vulkan-Tools/patches/vkcube-cross-build.patch b/srcpkgs/Vulkan-Tools/patches/vkcube-cross-build.patch new file mode 100644 index 000000000000..13ea2747498c --- /dev/null +++ b/srcpkgs/Vulkan-Tools/patches/vkcube-cross-build.patch @@ -0,0 +1,127 @@ +From e8234991418c5b0536e342bc849d5f8ed9eb6d6f Mon Sep 17 00:00:00 2001 +From: Simon McVittie +Date: Wed, 9 Nov 2022 15:32:39 +0000 +Subject: [PATCH] build: Compile vkcube and other demos, even when + cross-compiling + +When building software for a non-x86 processor on an x86 build machine, +or building 32-bit software on a 64-bit build machine, it's still useful +to compile demo programs that can be copied into the target environment +and run there, even if they won't necessarily be runnable on the build +machine. + +This also addresses a build failure when cross-compiling and attempting +to leave the demos enabled: + + CMake Error at cube/CMakeLists.txt:274 (install): + install TARGETS given target "vkcube" which does not exist. + +(and similar for the other demos) + +Resolves: https://github.com/KhronosGroup/Vulkan-Tools/issues/592 +Signed-off-by: Simon McVittie +--- + cube/CMakeLists.txt | 76 +++++++++++++++++++++------------------------ + 1 file changed, 35 insertions(+), 41 deletions(-) + +diff --git a/cube/CMakeLists.txt b/cube/CMakeLists.txt +index 72e0ae92b..48805b3ee 100644 +--- a/cube/CMakeLists.txt ++++ b/cube/CMakeLists.txt +@@ -228,21 +228,19 @@ include_directories(${CUBE_INCLUDE_DIRS}) + if(APPLE) + include(macOS/cube/cube.cmake) + elseif(NOT WIN32) +- if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) +- add_executable(vkcube +- cube.c +- ${PROJECT_SOURCE_DIR}/cube/cube.vert +- ${PROJECT_SOURCE_DIR}/cube/cube.frag +- cube.vert.inc +- cube.frag.inc +- ${OPTIONAL_WAYLAND_DATA_FILES}) +- target_link_libraries(vkcube Vulkan::Vulkan) +- target_compile_definitions(vkcube PUBLIC ${CUBE_PLATFORM}) +- include(CheckLibraryExists) +- CHECK_LIBRARY_EXISTS("rt" clock_gettime "" NEED_RT) +- if (NEED_RT) +- target_link_libraries(vkcube rt) +- endif() ++ add_executable(vkcube ++ cube.c ++ ${PROJECT_SOURCE_DIR}/cube/cube.vert ++ ${PROJECT_SOURCE_DIR}/cube/cube.frag ++ cube.vert.inc ++ cube.frag.inc ++ ${OPTIONAL_WAYLAND_DATA_FILES}) ++ target_link_libraries(vkcube Vulkan::Vulkan) ++ target_compile_definitions(vkcube PUBLIC ${CUBE_PLATFORM}) ++ include(CheckLibraryExists) ++ CHECK_LIBRARY_EXISTS("rt" clock_gettime "" NEED_RT) ++ if (NEED_RT) ++ target_link_libraries(vkcube rt) + endif() + else() + if(CMAKE_CL_64) +@@ -280,17 +278,15 @@ endif() + if(APPLE) + include(macOS/cubepp/cubepp.cmake) + elseif(NOT WIN32) +- if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) +- add_executable(vkcubepp +- cube.cpp +- ${PROJECT_SOURCE_DIR}/cube/cube.vert +- ${PROJECT_SOURCE_DIR}/cube/cube.frag +- cube.vert.inc +- cube.frag.inc +- ${OPTIONAL_WAYLAND_DATA_FILES}) +- target_link_libraries(vkcubepp Vulkan::Vulkan) +- target_compile_definitions(vkcubepp PUBLIC ${CUBE_PLATFORM}) +- endif() ++ add_executable(vkcubepp ++ cube.cpp ++ ${PROJECT_SOURCE_DIR}/cube/cube.vert ++ ${PROJECT_SOURCE_DIR}/cube/cube.frag ++ cube.vert.inc ++ cube.frag.inc ++ ${OPTIONAL_WAYLAND_DATA_FILES}) ++ target_link_libraries(vkcubepp Vulkan::Vulkan) ++ target_compile_definitions(vkcubepp PUBLIC ${CUBE_PLATFORM}) + else() + if(CMAKE_CL_64) + set(LIB_DIR "Win64") +@@ -334,21 +330,19 @@ if(UNIX AND NOT APPLE) # i.e. Linux + ${CMAKE_CURRENT_BINARY_DIR}/xdg-decoration-code.c + ${CMAKE_CURRENT_BINARY_DIR}/xdg-decoration-client-header.h) + include_directories(${CMAKE_CURRENT_BINARY_DIR}) +- if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) +- add_executable(vkcube-wayland +- cube.c +- ${PROJECT_SOURCE_DIR}/cube/cube.vert +- ${PROJECT_SOURCE_DIR}/cube/cube.frag +- cube.vert.inc +- cube.frag.inc +- ${OPTIONAL_WAYLAND_DATA_FILES}) +- target_link_libraries(vkcube-wayland Vulkan::Vulkan) +- target_compile_definitions(vkcube-wayland PUBLIC VK_USE_PLATFORM_WAYLAND_KHR) +- include(CheckLibraryExists) +- CHECK_LIBRARY_EXISTS("rt" clock_gettime "" NEED_RT) +- if (NEED_RT) +- target_link_libraries(vkcube-wayland rt) +- endif() ++ add_executable(vkcube-wayland ++ cube.c ++ ${PROJECT_SOURCE_DIR}/cube/cube.vert ++ ${PROJECT_SOURCE_DIR}/cube/cube.frag ++ cube.vert.inc ++ cube.frag.inc ++ ${OPTIONAL_WAYLAND_DATA_FILES}) ++ target_link_libraries(vkcube-wayland Vulkan::Vulkan) ++ target_compile_definitions(vkcube-wayland PUBLIC VK_USE_PLATFORM_WAYLAND_KHR) ++ include(CheckLibraryExists) ++ CHECK_LIBRARY_EXISTS("rt" clock_gettime "" NEED_RT) ++ if (NEED_RT) ++ target_link_libraries(vkcube-wayland rt) + endif() + install(TARGETS vkcube-wayland RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + endif() diff --git a/srcpkgs/Vulkan-Tools/template b/srcpkgs/Vulkan-Tools/template index 71eb16dbb16c..88f31cc15f74 100644 --- a/srcpkgs/Vulkan-Tools/template +++ b/srcpkgs/Vulkan-Tools/template @@ -1,11 +1,12 @@ # Template file for 'Vulkan-Tools' pkgname=Vulkan-Tools -version=1.3.204.1 +version=1.3.231.1 revision=1 build_style=cmake -configure_args="-DGLSLANG_INSTALL_DIR=/usr -DBUILD_CUBE=$(vopt_if cube ON OFF) - -DVULKAN_HEADERS_INSTALL_DIR=${XBPS_CROSS_BASE}/usr -Wno-dev" -hostmakedepends="python3 pkg-config $(vopt_if cube glslang)" +configure_args="-DGLSLANG_INSTALL_DIR=/usr + -DVULKAN_HEADERS_INSTALL_DIR=${XBPS_CROSS_BASE}/usr -Wno-dev + -DWAYLAND_SCANNER_EXECUTABLE=/usr/bin/wayland-scanner" +hostmakedepends="python3 pkg-config glslang wayland-devel" makedepends="Vulkan-Headers vulkan-loader libxcb-devel libxkbcommon-devel wayland-devel wayland-protocols libXrandr-devel" short_desc="Official Vulkan tools and utilities" @@ -13,11 +14,4 @@ maintainer="tibequadorian " license="Apache-2.0" homepage="https://www.khronos.org/vulkan/" distfiles="https://github.com/KhronosGroup/Vulkan-Tools/archive/sdk-${version}.tar.gz" -checksum=3242f9ad158d02af9cc44186cbd415982387356a2dd8c0492af2fdace8c22f49 - -build_options="cube" -desc_option_cube="Build cube vulkan demo" - -if [ -z "$CROSS_BUILD" ]; then - build_options_default="cube" -fi +checksum=0388207fdc0986ed8e03092a16d76913c7189d87a0d71eff4a914942b16b552a From 52691758fc708450a453e5edcf5a7393c35443d2 Mon Sep 17 00:00:00 2001 From: tibequadorian Date: Fri, 25 Nov 2022 00:03:03 +0100 Subject: [PATCH 5/6] Vulkan-ValidationLayers: update to 1.3.231.1. Add workaround for https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/4701 --- srcpkgs/Vulkan-ValidationLayers/template | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/srcpkgs/Vulkan-ValidationLayers/template b/srcpkgs/Vulkan-ValidationLayers/template index b67602beac61..8854a202a877 100644 --- a/srcpkgs/Vulkan-ValidationLayers/template +++ b/srcpkgs/Vulkan-ValidationLayers/template @@ -1,9 +1,11 @@ # Template file for 'Vulkan-ValidationLayers' pkgname=Vulkan-ValidationLayers -version=1.3.204.1 -revision=2 +version=1.3.231.1 +revision=1 build_style=cmake -configure_args="-Wno-dev -DBUILD_LAYER_SUPPORT_FILES=ON" +configure_args="-Wno-dev -DBUILD_LAYER_SUPPORT_FILES=ON + -DVULKAN_HEADERS_INSTALL_DIR=${XBPS_CROSS_BASE}/usr + -DSPIRV_HEADERS_INSTALL_DIR=${XBPS_CROSS_BASE}/usr" hostmakedepends="pkg-config" makedepends="Vulkan-Headers libXrandr-devel wayland-devel glslang-devel SPIRV-Tools-devel SPIRV-Headers robin-hood-hashing" @@ -12,4 +14,4 @@ maintainer="tibequadorian " license="Apache-2.0" homepage="https://www.khronos.org/vulkan/" distfiles="https://github.com/KhronosGroup/Vulkan-ValidationLayers/archive/sdk-${version}.tar.gz" -checksum=a5e658a4c1f504ae38488acdbe2ab2799e2ae4b626104d76776f1c24b079f341 +checksum=ea40af0f499e7e97a86ee54410c5c78e7f7bac40f65ae09a1549773b6501bf4d From 4f11877fcb2090eb38e10745770965c107410a5b Mon Sep 17 00:00:00 2001 From: tibequadorian Date: Sat, 7 May 2022 23:29:07 +0200 Subject: [PATCH 6/6] vulkan-loader: update to 1.3.231.2. --- srcpkgs/vulkan-loader/template | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/srcpkgs/vulkan-loader/template b/srcpkgs/vulkan-loader/template index efcf10cd32b3..9201a4301997 100644 --- a/srcpkgs/vulkan-loader/template +++ b/srcpkgs/vulkan-loader/template @@ -1,6 +1,6 @@ # Template file for 'vulkan-loader' pkgname=vulkan-loader -version=1.3.204.1 +version=1.3.231.2 revision=1 build_style=cmake configure_args="-Wno-dev -DVULKAN_HEADERS_INSTALL_DIR=${XBPS_CROSS_BASE}/usr @@ -13,4 +13,10 @@ maintainer="tibequadorian " license="Apache-2.0" homepage="https://www.khronos.org/vulkan/" distfiles="https://github.com/KhronosGroup/Vulkan-Loader/archive/sdk-${version}.tar.gz" -checksum=5dcd42b564804f4c01891ddd429a4a5028113c4cf39b44256689e8f543773134 +checksum=d9d103a6481a19ab9c9b880c1264e3026931741d3184b9930157551453bd4f92 + +if [ "$XBPS_CROSS_BUILD" ]; then + # https://github.com/KhronosGroup/Vulkan-Loader/issues/881 + # Fixed in master, should be removed in next release + configure_args+=" -DUSE_GAS=OFF" +fi