[llvm-dev] llvm-config --cxxflags should report C++ language standard version
Saleem Abdulrasool via llvm-dev
llvm-dev at lists.llvm.org
Sat Nov 2 09:05:49 PDT 2019
On Wed, Oct 30, 2019 at 11:53 PM Johan Engelen <jbc.engelen at gmail.com>
> On Thu, Oct 31, 2019 at 3:46 AM Saleem Abdulrasool <compnerd at compnerd.org>
>> On Wed, Oct 30, 2019 at 4:17 PM Johan Engelen <jbc.engelen at gmail.com>
>>> Hi all,
>>> Since 2724d9e12960cc1d93eeabbfc9aa1bffffa041cc, llvm-config
>>> -cxxflags no longer reports the C++ language standard version (e.g.
>>> "-std=c++14") used to compile LLVM. This may break builds of projects that
>>> build with the same flags as LLVM, e.g. the LDC compiler.
>>> Quoting from llvm/tools/llvm-config/CMakeLists.txt:
>>> # The language standard potentially affects the ABI/API of LLVM, so we
>>> # to make sure it is reported by llvm-config.
>>> Even in the case of default C++ version, in my opinion llvm-config
>>> should explicitly report it.
>> I will add an option to report the C++ version, though that would be a
>> new option and require reworking the consumers to be aware of that. It
>> would be better to actually rely on CMake to provide the details of the
>> build rather than `llvm-config`.
> Note that this is about the details for the build of a project that uses
> LLVM. I don't think projects should be forced to use CMake for setting up a
> build when they link to LLVM. The new option would help, but I feel it is
> better to be have the C++ version be reported by default and that a new
> option would disable it. In most cases I think one would want the c++
> version to be specified because otherwise the project will be forced to
> compile with the same compiler and same compiler version as the LLVM
> package because things rely on compiler defaults to be the same. Hence the
> comment in llvm-config/CMakeLists.
As of 7a25de6d2073f77ea1a0d8f4cd715bec55678941, `llvm-config` should have
the standard flag in the reported C++ flags again. Sorry about the late
follow up, I intended to do that post-commit, and for the breakage.
compnerd (at) compnerd (dot) org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev