diff --git a/srcpkgs/shaderc/patches/fix-glslang-link-order.patch b/srcpkgs/shaderc/patches/fix-glslang-link-order.patch index 691719c0d9c..99292c74483 100644 --- a/srcpkgs/shaderc/patches/fix-glslang-link-order.patch +++ b/srcpkgs/shaderc/patches/fix-glslang-link-order.patch @@ -1,43 +1,25 @@ -Original upstream PR: https://github.com/google/shaderc/pull/463 - -From 21c8be385b3fab5edcb934a6d99f69fd389c4e67 Mon Sep 17 00:00:00 2001 -From: Niklas Haas -Date: Tue, 29 May 2018 07:34:00 +0200 -Subject: [PATCH] Fix the link order of libglslang and libHLSL - -libglslang depends on libHLSL, so the latter needs to be specified last. -This fixes an issue when trying to build shaderc against system-wide -versions of libglslang/libHLSL, rather than the in-tree versions from -third_party. - -Additionally, libshaderc_util also depends on SPIRV-Tools ---- - glslc/CMakeLists.txt | 2 +- - libshaderc_util/CMakeLists.txt | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - +https://github.com/google/shaderc/pull/463 --- a/glslc/CMakeLists.txt +++ b/glslc/CMakeLists.txt -@@ -18,7 +18,7 @@ add_library(glslc STATIC - shaderc_default_compile_options(glslc) - target_include_directories(glslc PUBLIC ${glslang_SOURCE_DIR}) - target_link_libraries(glslc PRIVATE glslang OSDependent OGLCompiler -- HLSL glslang SPIRV ${CMAKE_THREAD_LIBS_INIT}) -+ glslang SPIRV HLSL ${CMAKE_THREAD_LIBS_INIT}) - target_link_libraries(glslc PRIVATE shaderc_util shaderc) - - add_executable(glslc_exe src/main.cc) +@@ -43,7 +43,7 @@ if (SHADERC_ENABLE_WGSL_OUTPUT) + endif(SHADERC_ENABLE_WGSL_OUTPUT) + + target_link_libraries(glslc PRIVATE +- glslang OSDependent OGLCompiler HLSL glslang SPIRV # Glslang libraries ++ glslang OSDependent OGLCompiler glslang SPIRV HLSL # Glslang libraries + $<$:libtint> # Tint libraries, optional + shaderc_util shaderc # internal Shaderc libraries + ${CMAKE_THREAD_LIBS_INIT}) --- a/libshaderc_util/CMakeLists.txt +++ b/libshaderc_util/CMakeLists.txt -@@ -34,8 +34,8 @@ endif(SHADERC_ENABLE_INSTALL) - +@@ -46,8 +46,8 @@ add_definitions(-DENABLE_HLSL) + find_package(Threads) target_link_libraries(shaderc_util PRIVATE - glslang OSDependent OGLCompiler HLSL glslang SPIRV - SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT}) + glslang OSDependent OGLCompiler glslang HLSL SPIRV + SPIRV-Tools-opt SPIRV-Tools ${CMAKE_THREAD_LIBS_INIT}) - + shaderc_add_tests( TEST_PREFIX shaderc_util - diff --git a/srcpkgs/shaderc/template b/srcpkgs/shaderc/template index 7382d081551..1ab7478262a 100644 --- a/srcpkgs/shaderc/template +++ b/srcpkgs/shaderc/template @@ -1,6 +1,6 @@ # Template file for 'shaderc' pkgname=shaderc -version=2020.0 +version=2022.2 revision=1 build_style=cmake configure_args="-DSHADERC_SKIP_TESTS=ON" @@ -11,9 +11,10 @@ maintainer="Orphaned " license="Apache-2.0" homepage="https://github.com/google/shaderc" distfiles="https://github.com/google/shaderc/archive/v${version}.tar.gz" -checksum=e02e2a9d4c3960bc629ca8cdcf83d295bec9c80ed08a8c5062e4e294022605ec +checksum=517d36937c406858164673db696dc1d9c7be7ef0960fbf2965bfef768f46b8c0 CXXFLAGS="-I${XBPS_CROSS_BASE}/usr/include/glslang" +LDFLAGS="-Wl,--no-undefined" pre_configure() { # Unbundle glslang, SPIRV-Headers, SPIRV-Tools @@ -27,9 +28,13 @@ pre_configure() { # Create our own build-version.inc since we disabled git versioning # need to keep this in sync with glslang and SPIRV-Tools versions # this is displayed with 'glslc --version' + spirv="$($XBPS_QUERY_XCMD -p pkgver SPIRV-Tools)" + spirv=${spirv%_*} + glslang=$($XBPS_QUERY_XCMD -p pkgver glslang) + glslang=${glslang%_*} cat <<- EOF > glslc/src/build-version.inc - "shaderc 2020.0\n" - "SPIRV-Tools-2020.3\n" - "glslang-8.13.3743\n" + "shaderc ${version}\n" + "${spirv}\n" + "${glslang}\n" EOF }