While compiling current master branch for openSUSE Tumbleweed (gcc 10) succeeds as expected, attempting to build for earlier openSUSE versions (gcc 7.5) fails in interesting ways:
[ 32s] [ 4%] Building CXX object intern/eigen/CMakeFiles/bf_intern_eigen.dir/intern/matrix.cc.o
[ 32s] cd "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build/intern/eigen" && /usr/bin/c++ -DNDEBUG -DWITH_OPENGL -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOUR
CE -D_LARGEFILE_SOURCE -D__LITTLE_ENDIAN__ -D__MMX__ -D__SSE2__ -D__SSE__ -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/eigen" -isystem "/home/abuild/r
pmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/Eigen3" -Wredundant-decls -Wall -Wno-invalid-offsetof -Wno-sign-compare -Wlogical-op -Winit-self -Wmissing-include-dirs -
Wno-div-by-zero -Wtype-limits -Werror=return-type -Wno-char-subscripts -Wno-unknown-pragmas -Wpointer-arith -Wunused-parameter -Wwrite-strings -Wundef -Wformat-signedness -Wrestrict -Wunin
itialized -Wundef -Wmissing-declarations -Wimplicit-fallthrough=5 -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchr
onous-unwind-tables -fstack-clash-protection -g -fPIC -fopenmp -fuse-ld=gold -fopenmp -std=c++17 -msse -pipe -fPIC -funsigned-char -fno-strict-aliasing -msse2 -O2 -DNDEBUG -o CMakeFile
s/bf_intern_eigen.dir/intern/matrix.cc.o -c "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/eigen/intern/matrix.cc"
[ 32s] In file included from /usr/include/OpenImageIO/simd.h:31:0,
[ 32s] from /usr/include/OpenImageIO/fmath.h:44,
[ 32s] from /usr/include/OpenImageIO/hash.h:25,
[ 32s] from /usr/include/OpenImageIO/strutil.h:23,
[ 32s] from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/cycles/util/util_path.cpp:22:
[ 32s] /usr/include/OpenEXR/ImathVec.h:228:34: error: ISO C++1z does not allow dynamic exception specifications
[ 32s] const Vec2 & normalizeExc () throw (IEX_NAMESPACE::MathExc);
[ 32s] ^~~~~
[ 32s] /usr/include/OpenEXR/ImathVec.h:232:37: error: ISO C++1z does not allow dynamic exception specifications
[ 32s] Vec2<T> normalizedExc () const throw (IEX_NAMESPACE::MathExc);
[ 32s] ^~~~~
[ 32s] /usr/include/OpenEXR/ImathVec.h:440:34: error: ISO C++1z does not allow dynamic exception specifications
[ 32s] const Vec3 & normalizeExc () throw (IEX_NAMESPACE::MathExc);
[ 32s] ^~~~~
[ 32s] /usr/include/OpenEXR/ImathVec.h:444:37: error: ISO C++1z does not allow dynamic exception specifications
[ 32s] Vec3<T> normalizedExc () const throw (IEX_NAMESPACE::MathExc);
[ 32s] ^~~~~
[ 32s] /usr/include/OpenEXR/ImathVec.h:622:37: error: ISO C++1z does not allow dynamic exception specifications
[ 32s] const Vec4 & normalizeExc () throw (IEX_NAMESPACE::MathExc);
[ 32s] ^~~~~
[ 32s] /usr/include/OpenEXR/ImathVec.h:626:44: error: ISO C++1z does not allow dynamic exception specifications
Downgrading the C++ standard to 14 (-DCMAKE_CXX_STANDARD=11). it fails with:
[ 191s] cd "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build/source/blender/windowmanager" && /usr/bin/cc -DGLEW_NO_GLU -DNDEBUG -DWITH_AUDASPACE -DWITH_COLL
ADA -DWITH_COMPOSITOR -DWITH_FFMPEG -DWITH_GHOST_X11 -DWITH_GL_PROFILE_CORE -DWITH_INPUT_NDOF -DWITH_INTERNATIONAL -DWITH_OPENGL -DWITH_PYTHON -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
-D_LARGEFILE_SOURCE -D__LITTLE_ENDIAN__ -D__MMX__ -D__SSE2__ -D__SSE__ -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/windowmanager" -I"/home/ab
uild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/windowmanager/gizmo" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blen
der/windowmanager/gizmo/intern" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenfont" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.2020070
8T021537.7fcb6bc59c8/source/blender/blenkernel" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib" -I"/home/abuild/rpmbuild/BUILD/blender-2
.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenloader" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blentranslation" -I"/home/abuild/r
pmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/compositor" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/depsgraph"
-I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/editors/include" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/sour
ce/blender/draw" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/gpu" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8
/source/blender/imbuf" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/makesdna" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.
7fcb6bc59c8/source/blender/makesrna" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/nodes" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200
708T021537.7fcb6bc59c8/source/blender/render/extern/include" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/clog" -I"/home/abuild/rpmbuild/BUILD/blender
-2.90~git.20200708T021537.7fcb6bc59c8/intern/ghost" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/glew-mx" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~
git.20200708T021537.7fcb6bc59c8/intern/guardedalloc" -I"/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/memutil" -I"/home/abuild/rpmbuild/BUILD/blender-2.90
~git.20200708T021537.7fcb6bc59c8/source/blender/python" -isystem /usr/include/audaspace -isystem /usr/include/ffmpeg -Wall -Wcast-align -Werror=implicit-function-declaration -Werror=retur
n-type -Werror=vla -Wstrict-prototypes -Wmissing-prototypes -Wno-char-subscripts -Wno-unknown-pragmas -Wpointer-arith -Wunused-parameter -Wwrite-strings -Wlogical-op -Wundef -Winit-self -W
missing-include-dirs -Wno-div-by-zero -Wtype-limits -Wformat-signedness -Wrestrict -Wnonnull -Wuninitialized -Wredundant-decls -Wshadow -Wno-error=unused-but-set-variable -Wimplicit-fallth
rough=5 -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g -fPIC -fop
enmp -fuse-ld=gold -fopenmp -std=gnu11 -msse -pipe -fPIC -funsigned-char -fno-strict-aliasing -msse2 -O2 -DNDEBUG -o CMakeFiles/bf_windowmanager.dir/intern/wm_files_link.c.o -c "/hom
e/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/windowmanager/intern/wm_files_link.c"
[ 191s] cd "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build" && /usr/bin/cmake -E cmake_depends "Unix Makefiles" "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8" "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/editors/datafiles" "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build" "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build/source/blender/editors/datafiles" "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build/source/blender/editors/datafiles/CMakeFiles/bf_editor_datafiles.dir/DependInfo.cmake" --color=
[ 191s] In file included from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_array.hh:42:0,
[ 191s] from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/intern/BLI_index_range.cc:20:
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh: In function 'void blender::destruct_n(T*, uint)':
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:47:22: error: 'is_nothrow_destructible_v' is not a member of 'std'
[ 191s] static_assert(std::is_nothrow_destructible_v<T>,
[ 191s] ^~~~~~~~~~~~~~~~~~~~~~~~~
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:47:22: note: suggested alternative: 'is_nothrow_destructible'
[ 191s] static_assert(std::is_nothrow_destructible_v<T>,
[ 191s] ^~~~~~~~~~~~~~~~~~~~~~~~~
[ 191s] is_nothrow_destructible
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:47:49: error: expected primary-expression before '>' token
[ 191s] static_assert(std::is_nothrow_destructible_v<T>,
[ 191s] ^
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:47:50: error: expected primary-expression before ',' token
[ 191s] static_assert(std::is_nothrow_destructible_v<T>,
[ 191s] ^
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh: In function 'void blender::uninitialized_move_n(T*, uint, T*)':
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:170:22: error: 'is_nothrow_move_constructible_v' is not a member of 'std'
[ 191s] static_assert(std::is_nothrow_move_constructible_v<T>,
[ 191s] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:170:22: note: suggested alternative: 'is_nothrow_move_constructible'
[ 191s] static_assert(std::is_nothrow_move_constructible_v<T>,
[ 191s] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 191s] is_nothrow_move_constructible
[ 191s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/source/blender/blenlib/BLI_memory_utils.hh:170:55: error: expected primary-expression before '>' token
and downgrading to 11 (-DCMAKE_CXX_STANDARD=11). it fails with:
[ 40s] [ 8%] Linking CXX static library ../../lib/libbf_intern_rigidbody.a
[ 40s] cd "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build/intern/rigidbody" && /usr/bin/cmake -P CMakeFiles/bf_intern_rigidbody.dir/cmake_clean_target.cma
ke
[ 40s] cd "/home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/build/intern/rigidbody" && /usr/bin/cmake -E cmake_link_script CMakeFiles/bf_intern_rigidbody.dir/link.txt --verbose=1
[ 40s] In file included from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/parameter_dims.h:37:0,
[ 40s] from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/autodiff.h:151,
[ 40s] from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/autodiff_cost_function.h:130,
[ 40s] from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/ceres.h:37,
[ 40s] from /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/intern/libmv/libmv/multiview/fundamental.cc:23:
[ 40s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/integer_sequence_algorithm.h:64:21: error: 'integer_sequence' is not a member of 'std'
[ 40s] struct SumImpl<std::integer_sequence<T, N, Ns...>> {
[ 40s] ^~~~~~~~~~~~~~~~
[ 40s] /usr/bin/ar qc ../../lib/libbf_intern_rigidbody.a CMakeFiles/bf_intern_rigidbody.dir/rb_bullet_api.cpp.o
[ 40s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/integer_sequence_algorithm.h:64:21: error: 'integer_sequence' is not a member of 'std'
[ 40s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/integer_sequence_algorithm.h:64:46: error: wrong number of template arguments (3, should be 1)
[ 40s] struct SumImpl<std::integer_sequence<T, N, Ns...>> {
[ 40s] ^~~
[ 40s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/integer_sequence_algorithm.h:60:8: note: provided for 'template<class Seq> struct ceres::internal::SumImpl'
[ 40s] struct SumImpl;
[ 40s] ^~~~~~~
[ 40s] /home/abuild/rpmbuild/BUILD/blender-2.90~git.20200708T021537.7fcb6bc59c8/extern/ceres/include/ceres/internal/integer_sequence_algorithm.h:64:49: error: expected unqualified-id before '>' token
More ideas anybody?