Package: glm Version: 0.9.9.8+ds-1 Severity: serious Tags: patch ftbfs Justification: fails to build from source (but built successfully in the past) User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu impish ubuntu-patch X-Debbugs-Cc: sl...@ubuntu.com
Dear Maintainer, Unit-tests are failing if built using GCC-11. ``` 99% tests passed, 2 tests failed out of 188 Total Test time (real) = 3.86 sec The following tests FAILED: 39 - test-core_func_integer (Child aborted) 97 - test-ext_vector_integer (Child aborted) ``` test-ext_vector_integer seems to be flaky, while test-core_func_integer fails consistently. If built with -Wall this warning shows up, which seems to be relevant: cd /home/user/glm-gu/obj-x86_64-linux-gnu/test/core && /usr/bin/cmake -E cmake_link_script CMakeFiles/test-core_func_matrix.dir/link.txt --verbose=1 /usr/bin/c++ -g -O2 -ffile-prefix-map=/home/user/glm-gu=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-error -Wdate-time -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -flto=auto -Wl,-z,relro -rdynamic CMakeFiles/test-core_func_matrix.dir/core_func_matrix.cpp.o -o test-core_func_matrix In function ‘bitCount::bitCount_bitfield<int>(int)int’, inlined from ‘bitCount::test()’ at /home/user/glm-gu/test/core/core_func_integer.cpp:1515:35, inlined from ‘main’ at /home/user/glm-gu/test/core/core_func_integer.cpp:1533:27: /home/user/glm-gu/test/core/core_func_integer.cpp:1442:41: warning: ‘<anonymous>’ may be used uninitialized [-Wmaybe-uninitialized] 1442 | return bitCount_bitfield(glm::vec<1, genType, glm::defaultp>(x)).x; | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/user/glm-gu/test/core/core_func_integer.cpp: In function ‘main’: /home/user/glm-gu/test/core/core_func_integer.cpp:1427:36: note: by argument 1 of type ‘const struct vec &’ to ‘bitCount::bitCount_bitfield<1, int, (glm::qualifier)0>(glm::vec<1, int, (glm::qualifier)0> const&)glm::vec<1, int, (glm::qualifier)0>’ declared here 1427 | static glm::vec<L, int, Q> bitCount_bitfield(glm::vec<L, T, Q> const& v) | ^~~~~~~~~~~~~~~~~ /home/user/glm-gu/test/core/core_func_integer.cpp:1442:47: note: ‘<anonymous>’ declared here 1442 | return bitCount_bitfield(glm::vec<1, genType, glm::defaultp>(x)).x; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/user/glm-gu/test/core/core_func_common.cpp: In function ‘int test_constexpr()’: /home/user/glm-gu/test/core/core_func_common.cpp:1306:35: warning: variable ‘A’ set but not used [-Wunused-but-set-variable] 1306 | constexpr glm::vec1 const A = glm::abs(glm::vec1(1.0f)); | ^ /home/user/glm-gu/test/core/core_func_common.cpp:1307:35: warning: variable ‘B’ set but not used [-Wunused-but-set-variable] 1307 | constexpr glm::vec2 const B = glm::abs(glm::vec2(1.0f)); | ^ /home/user/glm-gu/test/core/core_func_common.cpp:1308:35: warning: variable ‘C’ set but not used [-Wunused-but-set-variable] 1308 | constexpr glm::vec3 const C = glm::abs(glm::vec3(1.0f)); | ^ /home/user/glm-gu/test/core/core_func_common.cpp:1309:35: warning: variable ‘D’ set but not used [-Wunused-but-set-variable] 1309 | constexpr glm::vec4 const D = glm::abs(glm::vec4(1.0f)); | ^ In Ubuntu, the attached patch was applied as debian/patches/tests-no-optimization.patch to fix the build/unit-tests. Thanks for considering the patch. -- System Information: Debian Release: 11.0 APT prefers impish APT policy: (500, 'impish') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 5.13.0-16-generic (SMP w/4 CPU threads) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE:en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled
diff -Nru glm-0.9.9.8+ds/debian/patches/series glm-0.9.9.8+ds/debian/patches/series --- glm-0.9.9.8+ds/debian/patches/series 1970-01-01 01:00:00.000000000 +0100 +++ glm-0.9.9.8+ds/debian/patches/series 2021-10-12 14:35:17.000000000 +0200 @@ -0,0 +1 @@ +tests-no-optimization.patch diff -Nru glm-0.9.9.8+ds/debian/patches/tests-no-optimization.patch glm-0.9.9.8+ds/debian/patches/tests-no-optimization.patch --- glm-0.9.9.8+ds/debian/patches/tests-no-optimization.patch 1970-01-01 01:00:00.000000000 +0100 +++ glm-0.9.9.8+ds/debian/patches/tests-no-optimization.patch 2021-10-12 14:52:16.000000000 +0200 @@ -0,0 +1,19 @@ +Description: Fix FTBFS (unit-tests) with GCC-11 +Author: Lukas Märdian <sl...@ubuntu.com> +Origin: vendor, Ubuntu +Bug: https://github.com/g-truc/glm/pull/1087 +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/glm/+bug/1946750 +Forwarded: https://github.com/g-truc/glm/pull/1087 +Last-Update: 2021-10-12 + +--- glm-0.9.9.8+ds.orig/test/CMakeLists.txt ++++ glm-0.9.9.8+ds/test/CMakeLists.txt +@@ -206,7 +206,7 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "GN + message("GLM: GCC - ${CMAKE_CXX_COMPILER_ID} compiler") + endif() + +- add_compile_options(-O2) ++ add_compile_options(-O0) + add_compile_options(-Wno-long-long) + + elseif(CMAKE_CXX_COMPILER_ID MATCHES "Intel")