From 305b6e1a0700fae83543175ba62d7156192e2644 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Wed, 16 Feb 2022 08:21:55 +1000 Subject: [PATCH] fix gcc12 build --- fix-gcc12-build.patch | 12 ++++++++++++ spirv-tools.spec | 2 ++ 2 files changed, 14 insertions(+) create mode 100644 fix-gcc12-build.patch diff --git a/fix-gcc12-build.patch b/fix-gcc12-build.patch new file mode 100644 index 0000000..d052565 --- /dev/null +++ b/fix-gcc12-build.patch @@ -0,0 +1,12 @@ +diff -up SPIRV-Tools-45dd184c790d6bfc78a5a74a10c37e888b1823fa/source/spirv_target_env.cpp.dma ./SPIRV-Tools-45dd184c790d6bfc78a5a74a10c37e888b1823fa/source/spirv_target_env.cpp +--- SPIRV-Tools-45dd184c790d6bfc78a5a74a10c37e888b1823fa/source/spirv_target_env.cpp.dma 2022-02-16 08:20:38.927239298 +1000 ++++ SPIRV-Tools-45dd184c790d6bfc78a5a74a10c37e888b1823fa/source/spirv_target_env.cpp 2022-02-16 08:20:42.262301854 +1000 +@@ -397,6 +397,8 @@ std::string spvLogStringForEnv(spv_targe + return "Unknown"; + } + ++// workaround gcc12/stdlibc++ -Wrestrict bug. ++#pragma GCC diagnostic ignore "-Wrestrict" + std::string spvTargetEnvList(const int pad, const int wrap) { + std::string ret; + size_t max_line_len = wrap - pad; // The first line isn't padded diff --git a/spirv-tools.spec b/spirv-tools.spec index 3692b8f..04e406a 100644 --- a/spirv-tools.spec +++ b/spirv-tools.spec @@ -14,6 +14,8 @@ License: ASL 2.0 URL: https://github.com/KhronosGroup/SPIRV-Tools Source0: %url/archive/%{commit}.tar.gz#/%{name}-%{commit}.tar.gz +Patch0: fix-gcc12-build.patch + BuildRequires: cmake3 BuildRequires: gcc-c++ BuildRequires: ninja-build