summaryrefslogtreecommitdiffstats
path: root/external
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2020-02-05 23:26:19 +0100
committerStephan Bergmann <sbergman@redhat.com>2020-02-06 09:53:29 +0100
commit46e53c0360a38f620cf8c86fd0a3dc46c8238e0e (patch)
tree44144459762957bee4df958e4750f653068e009a /external
parentthe "grouped" notebook svtlo-FontSizeBox's are all hidden (diff)
downloadcore-46e53c0360a38f620cf8c86fd0a3dc46c8238e0e.tar.gz
core-46e53c0360a38f620cf8c86fd0a3dc46c8238e0e.zip
Revert "upgrade to latest glm"
This reverts commit 494092dc0c2f6fd04dbd973d6f76f1df720dbcf7. For reasons that are still unclear, it appears to be the cause for CppunitTest_vcl_pdfexport often (but not always) failing in Windows debug buidls, both --disable-64-bit and --enable-64-bit. At least the 32 bit builds seem to all fail with > Assertion failed: false && "out of range", file ...\include\tools/bigint.hxx, line 146 Change-Id: I472a83fa709e79f7a6bf00b118c041cbc7500e6a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88069 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'external')
-rw-r--r--external/glm/UnpackedTarball_glm.mk3
-rw-r--r--external/glm/Wshadow-patch-fix.patch11
-rw-r--r--external/glm/Wsign-compare.patch.020
-rw-r--r--external/glm/Wunused-parameter.patch18
-rw-r--r--external/glm/c++20.patch.022
-rw-r--r--external/glm/clang-cl.patch.042
6 files changed, 93 insertions, 23 deletions
diff --git a/external/glm/UnpackedTarball_glm.mk b/external/glm/UnpackedTarball_glm.mk
index 934621eac841..940d12372b94 100644
--- a/external/glm/UnpackedTarball_glm.mk
+++ b/external/glm/UnpackedTarball_glm.mk
@@ -16,6 +16,9 @@ $(eval $(call gb_UnpackedTarball_set_patchflags,glm,$(if $(filter MSC,$(COM)),--
$(eval $(call gb_UnpackedTarball_set_patchlevel,glm,1))
$(eval $(call gb_UnpackedTarball_add_patches,glm, \
+ external/glm/Wshadow-patch-fix.patch \
+ external/glm/Wsign-compare.patch.0 \
+ external/glm/Wunused-parameter.patch \
external/glm/clang-cl.patch.0 \
external/glm/c++20.patch.0 \
))
diff --git a/external/glm/Wshadow-patch-fix.patch b/external/glm/Wshadow-patch-fix.patch
new file mode 100644
index 000000000000..3c25f40bda51
--- /dev/null
+++ b/external/glm/Wshadow-patch-fix.patch
@@ -0,0 +1,11 @@
+--- a/glm/core/type_vec4.hpp
++++ b/glm/core/type_vec4.hpp
+@@ -185,7 +185,7 @@
+ template <int E0, int E1>
+ GLM_FUNC_DECL tvec4(T const & x_, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & w_)
+ {
+- *this = tvec4<T>(x_, v(), w);
++ *this = tvec4<T>(x_, v(), w_);
+ }
+
+ template <int E0, int E1>
diff --git a/external/glm/Wsign-compare.patch.0 b/external/glm/Wsign-compare.patch.0
new file mode 100644
index 000000000000..ef97121ff97f
--- /dev/null
+++ b/external/glm/Wsign-compare.patch.0
@@ -0,0 +1,20 @@
+--- glm/gtx/bit.inl
++++ glm/gtx/bit.inl
+@@ -576,7 +576,7 @@
+ assert(ToBit <= sizeof(genIUType) * std::size_t(8));
+
+ genIUType Result = Value;
+- for(std::size_t i = 0; i <= ToBit; ++i)
++ for(int i = 0; i <= ToBit; ++i)
+ Result |= (1 << i);
+ return Result;
+ }
+@@ -593,7 +593,7 @@
+ assert(ToBit <= sizeof(genIUType) * std::size_t(8));
+
+ genIUType Result = Value;
+- for(std::size_t i = 0; i <= ToBit; ++i)
++ for(int i = 0; i <= ToBit; ++i)
+ Result &= ~(1 << i);
+ return Result;
+ }
diff --git a/external/glm/Wunused-parameter.patch b/external/glm/Wunused-parameter.patch
new file mode 100644
index 000000000000..de1239702679
--- /dev/null
+++ b/external/glm/Wunused-parameter.patch
@@ -0,0 +1,18 @@
+--- glm/glm/gtx/bit.inl
++++ glm/glm/gtx/bit.inl
+@@ -572,6 +572,7 @@
+ int const & ToBit
+ )
+ {
++ (void) FromBit;
+ assert(FromBit <= ToBit);
+ assert(ToBit <= sizeof(genIUType) * std::size_t(8));
+
+@@ -589,6 +589,7 @@
+ int const & ToBit
+ )
+ {
++ (void) FromBit;
+ assert(FromBit <= ToBit);
+ assert(ToBit <= sizeof(genIUType) * std::size_t(8));
+
diff --git a/external/glm/c++20.patch.0 b/external/glm/c++20.patch.0
index 34a40b5ef4c6..559adde48946 100644
--- a/external/glm/c++20.patch.0
+++ b/external/glm/c++20.patch.0
@@ -1,11 +1,11 @@
---- glm/detail/type_half.inl
-+++ glm/detail/type_half.inl
-@@ -6,7 +6,7 @@
- volatile float f = 1e10;
-
- for(int i = 0; i < 10; ++i)
-- f *= f; // this will overflow before the for loop terminates
-+ f = f * f; // this will overflow before the for loop terminates
- return f;
- }
-
+--- glm/core/type_half.inl
++++ glm/core/type_half.inl
+@@ -40,7 +40,7 @@
+ volatile float f = 1e10;
+
+ for(int i = 0; i < 10; ++i)
+- f *= f; // this will overflow before
++ f = f * f; // this will overflow before
+ // the for­loop terminates
+ return f;
+ }
diff --git a/external/glm/clang-cl.patch.0 b/external/glm/clang-cl.patch.0
index 44713a1968c5..edbc30b2408b 100644
--- a/external/glm/clang-cl.patch.0
+++ b/external/glm/clang-cl.patch.0
@@ -1,14 +1,32 @@
# "#pragma intrinsic" not (yet?) handled in the "if (LangOpts.MicrosoftExt)"
# block in Preprocessor::RegisterBuiltinPragmas in Clang's lib/Lex/Pragma.cpp:
---- glm/detail/func_integer.inl
-+++ glm/detail/func_integer.inl
-@@ -3,7 +3,9 @@
- #include "_vectorize.hpp"
- #if(GLM_ARCH & GLM_ARCH_X86 && GLM_COMPILER & GLM_COMPILER_VC)
- # include <intrin.h>
-+#if !defined __clang__^M
- # pragma intrinsic(_BitScanReverse)
-+#endif
- #endif//(GLM_ARCH & GLM_ARCH_X86 && GLM_COMPILER & GLM_COMPILER_VC)
- #include <limits>
-
+--- glm/core/func_integer.inl
++++ glm/core/func_integer.inl
+@@ -29,7 +29,9 @@
+ #if(GLM_ARCH != GLM_ARCH_PURE)
+ #if(GLM_COMPILER & GLM_COMPILER_VC)
+ # include <intrin.h>
++#if !defined __clang__
+ # pragma intrinsic(_BitScanReverse)
++#endif
+ #endif//(GLM_COMPILER & GLM_COMPILER_VC)
+ #endif//(GLM_ARCH != GLM_ARCH_PURE)
+
+
+# Fix check for availability of C++11 static_assert (it apparently should be
+# conditional on GLM_LANG_CXX11 instead of GLM_LANG_CXX0X, but just don't care
+# to try to fix that mess, and use __cplusplus value instead; unconditionally
+# using C++11 static_assert would fail in external/libgltf, which uses
+# external/glm but does not -std=c++11); falling back to BOOST_STATIC_ASSERT
+# would cause unnecessary warnings with clang-cl:
+--- glm/core/setup.hpp
++++ glm/core/setup.hpp
+@@ -628,7 +628,7 @@
+ ///////////////////////////////////////////////////////////////////////////////////////////////////
+ // Static assert
+
+-#if(GLM_LANG == GLM_LANG_CXX0X)
++#if __cplusplus >= 201103L
+ # define GLM_STATIC_ASSERT(x, message) static_assert(x, message)
+ #elif(defined(BOOST_STATIC_ASSERT))
+ # define GLM_STATIC_ASSERT(x, message) BOOST_STATIC_ASSERT(x)