<div dir="ltr">Once we have the right solution, this should definitely go to the 3.7 branch.<div><br></div><div>I'm not sure this is the best way to get the compile flags though. CC-ing Chris as he's probably the most immersed in this side of CMake at the moment.</div><br><div class="gmail_quote"><div dir="ltr">On Thu, Aug 13, 2015 at 9:55 AM Hans Wennborg <<a href="mailto:hans@chromium.org">hans@chromium.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Sun, Aug 2, 2015 at 9:27 AM, David Wiberg <<a href="mailto:dwiberg@gmail.com" target="_blank">dwiberg@gmail.com</a>> wrote:<br>
> Hi,<br>
><br>
> I took a stab at solving PR14200. My CMake knowledge is low but I think the<br>
> solution is reasonable as it reuses the existing logic for setting flags.<br>
<br>
Alexey: you're a cmake wizard. Can you take a look at this?<br>
<br>
Chandler: you're the cmake owner. I'd like to merge this to 3.7 when<br>
it lands if that's OK.<br>
<br>
> Things worth noting during review:<br>
> - The change means that both RTTI and exception handling flags will be<br>
> reported by llvm-config.<br>
> - I'm creating a variable with the same name as a target property. I don't<br>
> know if this breaks any convention.<br>
<br>
I tried this locally, and the output of llvm-config --cxxflags changed from:<br>
<br>
  -I/work/llvm/include -I/work/llvm/build.release/include  -fPIC<br>
-fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter<br>
-Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic<br>
-Wno-long-long -Wno-maybe-uninitialized -Wno-comment -std=c++11<br>
-ffunction-sections -fdata-sections -O3   -D_GNU_SOURCE<br>
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS<br>
<br>
to:<br>
<br>
  -I/work/llvm/include -I/work/llvm/build.release/include  -fPIC<br>
-fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter<br>
-Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic<br>
-Wno-long-long -Wno-maybe-uninitialized -Wno-comment -std=c++11<br>
-ffunction-sections -fdata-sections -O3  -fno-exceptions -fno-rtti<br>
-D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS<br>
-D__STDC_LIMIT_MACROS<br>
<br>
which seems correct.<br>
<br>
Thanks,<br>
Hans<br>
</blockquote></div></div>