diff --git a/1605.patch b/1605.patch new file mode 100644 index 0000000..4cdcb23 --- /dev/null +++ b/1605.patch @@ -0,0 +1,40 @@ +From 23ceda5ba82b589ba5f750f8edeb2894b7a6b1e9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dan=20Hor=C3=A1k?= +Date: Mon, 10 Oct 2022 08:40:18 +0000 +Subject: [PATCH] include the immintrin.h header only when needed +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The immintrin.h header is required for the implementation of the +popcount and coutr_zero function only when the Intel compiler is used. +Move the inclusion accordingly. The current state breaks build on +platforms that don't provide the header, but provide the alternative +means (gcc/clang built-ins, etc). + +Signed-off-by: Dan Horák +--- + src/include/OSL/mask.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/include/OSL/mask.h b/src/include/OSL/mask.h +index 24197afb6..b9275f65d 100644 +--- a/src/include/OSL/mask.h ++++ b/src/include/OSL/mask.h +@@ -4,7 +4,6 @@ + + #pragma once + +-#include + #include + + #include +@@ -23,6 +22,8 @@ using std::countr_zero; + + #elif OSL_INTEL_CLASSIC_COMPILER_VERSION + ++#include ++ + OSL_FORCEINLINE int popcount(uint32_t x) noexcept { return _mm_popcnt_u32(x);} + OSL_FORCEINLINE int popcount(uint64_t x) noexcept { return _mm_popcnt_u64(x); } + OSL_FORCEINLINE int countr_zero(uint32_t x) noexcept { return _bit_scan_forward(x); } diff --git a/OpenShadingLanguage.changes b/OpenShadingLanguage.changes index ce2a5b5..23b4ed7 100644 --- a/OpenShadingLanguage.changes +++ b/OpenShadingLanguage.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Oct 24 11:31:08 UTC 2022 - Guillaume GARDET + +- Add upstream patch to fix build on Arm: + * 1605.patch + ------------------------------------------------------------------- Wed Oct 19 15:16:37 UTC 2022 - Stefan Brüns diff --git a/OpenShadingLanguage.spec b/OpenShadingLanguage.spec index cd7fda8..a027118 100644 --- a/OpenShadingLanguage.spec +++ b/OpenShadingLanguage.spec @@ -31,6 +31,8 @@ Group: Productivity/Graphics/Other URL: https://github.com/AcademySoftwareFoundation/OpenShadingLanguage Source0: https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: https://creativecommons.org/licenses/by/3.0/legalcode.txt#/CC-BY-3.0.txt +# PATCH-FIX-UPSTREAM - https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/pull/1605 +Patch1: 1605.patch BuildRequires: OpenEXR-devel >= 2.3 BuildRequires: OpenImageIO >= 2.2 BuildRequires: bison