Build error with GCC 4.8 and older LLVM.
Compiling src/gallium/auxiliary/gallivm/lp_bld_debug.cpp ...
g++: error: unrecognized command line option ‘-std=c++14’
Author: Kai Wasserbäch <email@example.com>
Date: Sat Aug 17 10:59:43 2019 +0200
build: Bump C++ standard requirement to C++14 to fix FTBFS with LLVM 10
When building Mesa against a recent LLVM 10 with C++11, the build fails
if the AMD common code is built as well due to "std::index_sequence"
LLVM requires a minimum of C++14.
Signed-off-by: Kai Wasserbäch <firstname.lastname@example.org>
Acked-by: Eric Engestrom <email@example.com>
This is known and was discussed in the MR for this change, see the thread starting at https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1706#note_210239
GCC 4.8 is no longer supported upstream (last release was in 2015), just as GCC 5 and GCC 6 are no longer supported upstream. Therefore I would be inclined to close this bug as "wontfix", though I guess this is not up to me. I'll leave this decision up to somebody like Dave, who merged my MR, and has more seniority within Mesa.
Personally I will not prepare any patch to fix this since GCC 4.8 is no longer supported upstream and you would have to run at least an Distribution like Debian oldoldstable (Jessie), which is on its last stretch of LTS. IMHO the burden to keep such ancient software working has to fall on people choosing to run unsupported versions of eg. GCC. Because reverting this change would mean that the users of a current toolchain would be required to carry local patches instead, which doesn't seem like a sensible solution to me.
I hope this doesn't come across too strongly. You have commit rights AFAIR, therefore you could always supersede me and revert my patch. Though I'd really like to know how building with a current toolchain is meant to happen then. AFAIK Mesa is meant to be built against LLVM 10 as there are special cases for LLVM 10 in the code for RadeonSI and Clover.