summaryrefslogtreecommitdiff
path: root/community/blender
diff options
context:
space:
mode:
Diffstat (limited to 'community/blender')
-rw-r--r--community/blender/PKGBUILD13
-rw-r--r--community/blender/blender-idprop_create-static-assert-float.patch12
-rw-r--r--community/blender/no-sse2.patch24
3 files changed, 35 insertions, 14 deletions
diff --git a/community/blender/PKGBUILD b/community/blender/PKGBUILD
index 39e79cff..03a1eeb7 100644
--- a/community/blender/PKGBUILD
+++ b/community/blender/PKGBUILD
@@ -12,7 +12,7 @@ eval "$(
'
)"
source_i686+=('no-sse2.patch')
-sha512sums_i686+=('fce9d99e71900a6953287ba9e29ca56b54015e02bdd273da4fd86fd2556499c18b54cb0d835db47ee96f6fdd578a9cd6286b1b82b92c9db5582ce57c277590ab')
+sha512sums_i686+=('87da2bedb90af6dee559ef9d1eb83262ba75fb412aba83dcb2b88fe9c0740ff75ad336331033fec7a14ad6ecc3dd70f8f4742f147594e8dc530197dd51922c01')
if [ "${CARCH}" = 'i686' ]; then
eval "$(
declare -f prepare \
@@ -41,3 +41,14 @@ depends=(
depends=(
${depends[@]/openvdb/}
)
+
+# float_t is a long double on 32-bit, but it's a primitive in all cases anyway
+# (seems to be in a part of the blendkernel on i686 only..)
+source+=('blender-idprop_create-static-assert-float.patch')
+sha512sums+=('36b98ec7e53402909a9e531c30b444b1afc22cc597c5bb3393c73862929dcc6275b00a53de6171a81af3c8804d233359d2e797886d0b776e7a9b29b23ce24e3b')
+eval "$(
+ declare -f prepare \
+ | sed '
+ $ i patch -Np1 -i "$srcdir"/blender-idprop_create-static-assert-float.patch
+ '
+)"
diff --git a/community/blender/blender-idprop_create-static-assert-float.patch b/community/blender/blender-idprop_create-static-assert-float.patch
new file mode 100644
index 00000000..5be594e5
--- /dev/null
+++ b/community/blender/blender-idprop_create-static-assert-float.patch
@@ -0,0 +1,12 @@
+diff -rauN blender/source/blender/blenkernel/intern/idprop_create.cc blender-idprop_create-static-assert-float-patch/source/blender/blenkernel/intern/idprop_create.cc
+--- blender/source/blender/blenkernel/intern/idprop_create.cc 2022-04-03 14:32:20.257350527 +0200
++++ blender-idprop_create-static-assert-float-patch/source/blender/blenkernel/intern/idprop_create.cc 2022-04-03 14:35:17.851234918 +0200
+@@ -92,7 +92,7 @@
+ Span<PrimitiveType> values)
+ {
+ static_assert(std::is_same_v<PrimitiveType, int32_t> || std::is_same_v<PrimitiveType, float_t> ||
+- std::is_same_v<PrimitiveType, double>,
++ std::is_same_v<PrimitiveType, float> || std::is_same_v<PrimitiveType, double>,
+ "Allowed values for PrimitiveType are int32_t, float and double.");
+ static_assert(!std::is_same_v<PrimitiveType, int32_t> || id_property_subtype == IDP_INT,
+ "PrimitiveType and id_property_type do not match (int32_t).");
diff --git a/community/blender/no-sse2.patch b/community/blender/no-sse2.patch
index 082a566c..a32f7c64 100644
--- a/community/blender/no-sse2.patch
+++ b/community/blender/no-sse2.patch
@@ -1,14 +1,12 @@
-diff -rauN blender-vanilla/intern/cycles/bvh/bvh_embree.cpp blender-no-sse2-patch/intern/cycles/bvh/bvh_embree.cpp
---- blender-vanilla/intern/cycles/bvh/bvh_embree.cpp 2021-04-30 11:51:03.234550251 +0200
-+++ blender-no-sse2-patch/intern/cycles/bvh/bvh_embree.cpp 2021-04-30 11:52:15.691582206 +0200
-@@ -306,8 +306,10 @@
- rtc_device(NULL),
- build_quality(RTC_BUILD_QUALITY_REFIT)
- {
-+#if defined(__x86_64__) || defined(_M_X64)
- _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON);
- _MM_SET_DENORMALS_ZERO_MODE(_MM_DENORMALS_ZERO_ON);
-+#endif
- }
+diff -rauN blender-vanilla/CMakeLists.txt blender-no-sse2-patch/CMakeLists.txt
+--- blender-vanilla/CMakeLists.txt 2022-04-07 16:36:48.842414275 +0200
++++ blender-no-sse2-patch/CMakeLists.txt 2022-04-07 16:37:12.012470531 +0200
+@@ -981,7 +981,7 @@
+ # Test SIMD support, before platform includes to determine if sse2neon is needed.
+ if(WITH_CPU_SIMD)
+ set(COMPILER_SSE_FLAG)
+- set(COMPILER_SSE2_FLAG)
++# set(COMPILER_SSE2_FLAG)
- BVHEmbree::~BVHEmbree()
+ # Test Neon first since macOS Arm can compile and run x86-64 SSE binaries.
+ TEST_NEON_SUPPORT()