[Mesa-dev] [PATCH] clover: Fix building with latest llvm

Ilia Mirkin imirkin at alum.mit.edu
Sun Mar 2 01:26:37 PST 2014


On Sat, Mar 1, 2014 at 7:35 PM, Francisco Jerez <currojerez at riseup.net> wrote:
> Bruno Jiménez <brunojimen at gmail.com> writes:
>
>> Recently, llvm has changed to use c++11, so we also should use it
>> ---
>>  src/gallium/state_trackers/clover/Makefile.am | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/gallium/state_trackers/clover/Makefile.am b/src/gallium/state_trackers/clover/Makefile.am
>> index ece2b38..cc9311c 100644
>> --- a/src/gallium/state_trackers/clover/Makefile.am
>> +++ b/src/gallium/state_trackers/clover/Makefile.am
>> @@ -37,7 +37,7 @@ libcltgsi_la_SOURCES = \
>>       tgsi/compiler.cpp
>>
>>  libclllvm_la_CXXFLAGS = \
>> -     -std=c++98 \
>> +     -std=c++11 \
>
> I think this will break earlier versions of LLVM in subtle ways --
> mainly because the C++98 and C++11 standard libraries are not guaranteed
> to be binary compatible with each other.  We should probably use
> LLVM_CXXFLAGS to detect which -std flag LLVM was built with and make
> sure we use the same.
>
>>       $(VISIBILITY_CXXFLAGS) \
>>       $(LLVM_CPPFLAGS) \
>>       $(DEFINES) \
>> @@ -49,7 +49,7 @@ libclllvm_la_SOURCES = \
>>       llvm/invocation.cpp
>>
>>  libclover_la_CXXFLAGS = \
>> -     -std=c++0x \
>> +     -std=c++11 \
>
> This looks good to me (though it's not strictly related to fixing LLVM).

Not sure if it's a concern, but I think gcc only supports std=c++11
starting with 4.7. (Not a huge deal for me -- gentoo marked 4.7 as
stable a while back, but it might be for others.)

  -ilia


More information about the mesa-dev mailing list