From 71fd8fefba4a17eccf86e805e00af942171b29b6 Mon Sep 17 00:00:00 2001 From: Nick Sarnie Date: Mon, 28 Oct 2019 19:14:17 -0400 Subject: [PATCH] media-libs/shaderc: Fix build Fixes: https://bugs.gentoo.org/show_bug.cgi?id=698688 Package-Manager: Portage-2.3.78, Repoman-2.3.17 Signed-off-by: Nick Sarnie --- ...2019.0-fix-build-against-new-glslang.patch | 54 +++++++++++++++++++ ...2019.0.ebuild => shaderc-2019.0-r1.ebuild} | 9 ++-- 2 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 media-libs/shaderc/files/shaderc-2019.0-fix-build-against-new-glslang.patch rename media-libs/shaderc/{shaderc-2019.0.ebuild => shaderc-2019.0-r1.ebuild} (86%) diff --git a/media-libs/shaderc/files/shaderc-2019.0-fix-build-against-new-glslang.patch b/media-libs/shaderc/files/shaderc-2019.0-fix-build-against-new-glslang.patch new file mode 100644 index 000000000000..807540cf62a2 --- /dev/null +++ b/media-libs/shaderc/files/shaderc-2019.0-fix-build-against-new-glslang.patch @@ -0,0 +1,54 @@ +diff --git a/libshaderc/src/shaderc.cc b/libshaderc/src/shaderc.cc +index 3c3c3de..b5fc6cb 100644 +--- a/libshaderc/src/shaderc.cc ++++ b/libshaderc/src/shaderc.cc +@@ -20,7 +20,7 @@ + #include + #include + +-#include "SPIRV/spirv.hpp" ++#include "glslang/SPIRV/spirv.hpp" + + #include "libshaderc_util/compiler.h" + #include "libshaderc_util/counting_includer.h" +diff --git a/libshaderc_util/src/compiler.cc b/libshaderc_util/src/compiler.cc +index ef7867f..acc172b 100644 +--- a/libshaderc_util/src/compiler.cc ++++ b/libshaderc_util/src/compiler.cc +@@ -26,7 +26,7 @@ + #include "libshaderc_util/string_piece.h" + #include "libshaderc_util/version_profile.h" + +-#include "SPIRV/GlslangToSpv.h" ++#include "glslang/SPIRV/GlslangToSpv.h" + + namespace { + using shaderc_util::string_piece; +@@ -291,17 +291,12 @@ std::tuple, size_t> Compiler::Compile( + bases[static_cast(UniformKind::StorageBuffer)]); + shader.setShiftUavBinding( + bases[static_cast(UniformKind::UnorderedAccessView)]); +- shader.setHlslIoMapping(hlsl_iomap_); + shader.setResourceSetBinding( + hlsl_explicit_bindings_[static_cast(used_shader_stage)]); + shader.setEnvClient(target_client_info.client, + target_client_info.client_version); + shader.setEnvTarget(target_client_info.target_language, + target_client_info.target_language_version); +- if (hlsl_functionality1_enabled_) { +- shader.setEnvTargetHlslFunctionality1(); +- } +- + const EShMessages rules = GetMessageRules(target_env_, source_language_, + hlsl_offsets_, + generate_debug_info_); +@@ -478,9 +473,6 @@ std::tuple Compiler::PreprocessShader( + } + shader.setEnvClient(target_client_info.client, + target_client_info.client_version); +- if (hlsl_functionality1_enabled_) { +- shader.setEnvTargetHlslFunctionality1(); +- } + + // The preprocessor might be sensitive to the target environment. + // So combine the existing rules with the just-give-me-preprocessor-output diff --git a/media-libs/shaderc/shaderc-2019.0.ebuild b/media-libs/shaderc/shaderc-2019.0-r1.ebuild similarity index 86% rename from media-libs/shaderc/shaderc-2019.0.ebuild rename to media-libs/shaderc/shaderc-2019.0-r1.ebuild index 6c1e8c8b0192..b125681aee45 100644 --- a/media-libs/shaderc/shaderc-2019.0.ebuild +++ b/media-libs/shaderc/shaderc-2019.0-r1.ebuild @@ -17,12 +17,12 @@ KEYWORDS="~amd64 ~x86" IUSE="doc test" RDEPEND=" - >=dev-util/glslang-7.10[${MULTILIB_USEDEP}] - dev-util/spirv-tools[${MULTILIB_USEDEP}] + >=dev-util/glslang-7.12.3353_pre20191027[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-2019.10_pre20191027[${MULTILIB_USEDEP}] " DEPEND="${RDEPEND} ${PYTHON_DEPS} - dev-util/spirv-headers + >=dev-util/spirv-headers-1.5.1 doc? ( dev-ruby/asciidoctor ) test? ( dev-cpp/gtest @@ -33,7 +33,8 @@ DEPEND="${RDEPEND} # https://github.com/google/shaderc/issues/470 RESTRICT=test -PATCHES=( "${FILESDIR}/${P}-fix-glslang-link-order.patch" ) +PATCHES=("${FILESDIR}/${P}-fix-glslang-link-order.patch" + "${FILESDIR}/${P}-fix-build-against-new-glslang.patch" ) python_check_deps() { if use test; then -- 2.26.2