[LLVMdev] CMake does not propagate flags to build

Chris Bieneman cbieneman at apple.com
Mon Jul 20 14:27:15 PDT 2015


Wait… This is just for compiler-rt?

+Samsonov

I don’t know if we explicitly don’t support -fno-omit-frame-pointer for compiler-rt, but in general compiler-rt is generally built differently from LLVM & Clang for a reason.

Why do you need -fno-omit-frame-pointer for compiler-rt?

-Chris

> On Jul 20, 2015, at 2:23 PM, adek at adek.io wrote:
> 
> Hey,
> 
> Thanks for ideas. I tried them on, but none of them succeeded.
> 
> If I remove this line:
> https://github.com/llvm-mirror/compiler-rt/blob/c9d8d35a5c2bdd6a0dd41f1b6cf3afb822df6a6e/CMakeLists.txt#L207
> 
> Everything is correctly built with -fno-omit-frame-pointer.
> 
> Any suggestion why it would be the case?
> 
> Thanks,
> Adrian
> 
> On Mon, Jul 20, 2015, at 01:39 PM, Martin J. O'Riordan wrote:
>> I regularly use '-DCMAKE_CXX_FLAGS' when configuring CLang/LLVM to
>> distinguish my builds (Alpha/Beta/Final) or to build custom versions,
>> usually by adding additional '-D' flags, but I discovered I had to add
>> the ':STRING' qualifier to it when invoking 'cmake'.  With 'gmake' this
>> is equivalent to '--with-extra-options="whatever flags":
>> 
>> 	-DCMAKE_CXX_FLAGS:STRING="whatever flags"
>> 
>> This works regardless of whether it is a Debug or Release build.
>> 
>> All the best,
>> 
>> 	MartinO
>> 
>> -----Original Message-----
>> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On
>> Behalf Of Chris Bieneman
>> Sent: 20 July 2015 19:23
>> To: adek at adek.io
>> Cc: llvmdev at cs.uiuc.edu
>> Subject: Re: [LLVMdev] CMake does not propagate flags to build
>> 
>> Adrian,
>> 
>> What makes you think CMAKE_CXX_FLAGS isn’t being respected?
>> 
>> The tests will always occur regardless of whether or not you set the
>> CXX_FLAGS explicitly.
>> 
>> -Chris
>> 
>>> On Jul 20, 2015, at 9:36 AM, adek at adek.io wrote:
>>> 
>>> 
>>> Hey Pete,
>>> 
>>> I also tried CMAKE_CXX_FLAGS_RELEASE
>>> with the same effect.
>>> 
>>> On Mon, Jul 20, 2015, at 09:34 AM, Pete Cooper wrote:
>>>> Hi Adrian
>>>> 
>>>> I’m not sure if the CMAKE_CXX_FLAGS is used in LLVM.  We have our own 
>>>> flags for different configurations.  I don’t remember if our ones 
>>>> inherit from CMAKE_CXX_FLAGS or override it completely.  Anyway, they are:
>>>> - CMAKE_CXX_FLAGS_DEBUG
>>>> - CMAKE_CXX_FLAGS_MINSIZEREL
>>>> - CMAKE_CXX_FLAGS_RELEASE
>>>> - CMAKE_CXX_FLAGS_RELWITHDEBINFO
>>>> 
>>>> The one of those you get depends on what you set CMAKE_BUILD_TYPE to. 
>>>> Options are ‘Debug, Release, RelWithDebInfo, MinSizeRel’
>>>> 
>>>> Cheers,
>>>> Pete
>>>>> On Jul 17, 2015, at 8:41 PM, adek at adek.io wrote:
>>>>> 
>>>>> '-DCMAKE_CXX_FLAGS=-fno-omit-frame-pointer -Wno-maybe-uninitialized 
>>>>> -fPIC -fPIE'
>>>>> -- The C compiler identification is GNU 4.8.1
>>>>> -- The CXX compiler identification is GNU 4.8.1
>>>>> -- Check for working C compiler:
>>>>> /home/engshare/third-party2/gcc/4.8.1/centos6-native/cc6c9dc/bin/gcc
>>>>> -- Check for working C compiler:
>>>>> /home/engshare/third-party2/gcc/4.8.1/centos6-native/cc6c9dc/bin/gcc 
>>>>> -- works
>>>>> -- Detecting C compiler ABI info
>>>>> -- Detecting C compiler ABI info - done
>>>>> -- Detecting C compile features
>>>>> -- Detecting C compile features - done
>>>>> -- Check for working CXX compiler:
>>>>> /home/engshare/third-party2/gcc/4.8.1/centos6-native/cc6c9dc/bin/g++
>>>>> -- Check for working CXX compiler:
>>>>> /home/engshare/third-party2/gcc/4.8.1/centos6-native/cc6c9dc/bin/g++ 
>>>>> -- works
>>>>> -- Detecting CXX compiler ABI info
>>>>> -- Detecting CXX compiler ABI info - done
>>>>> -- Detecting CXX compile features
>>>>> -- Detecting CXX compile features - done
>>>>> -- Found PythonInterp:
>>>>> /home/engshare/third-party2/python/2.7.5/centos6-native/da39a3e/bin/
>>>>> python2.7
>>>>> (found version "2.7.5")
>>>>> -- Looking for unwind.h
>>>>> -- Looking for unwind.h - found
>>>>> -- Performing Test COMPILER_RT_HAS_FPIC_FLAG
>>>>> -- Performing Test COMPILER_RT_HAS_FPIC_FLAG - Success
>>>>> -- Performing Test COMPILER_RT_HAS_FPIE_FLAG
>>>>> -- Performing Test COMPILER_RT_HAS_FPIE_FLAG - Success
>>>>> -- Performing Test COMPILER_RT_HAS_FNO_BUILTIN_FLAG
>>>>> -- Performing Test COMPILER_RT_HAS_FNO_BUILTIN_FLAG - Success
>>>>> -- Performing Test COMPILER_RT_HAS_FNO_EXCEPTIONS_FLAG
>>>>> -- Performing Test COMPILER_RT_HAS_FNO_EXCEPTIONS_FLAG - Success
>>>>> -- Performing Test COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG
>>>>> -- Performing Test COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG - 
>>>>> Success
>>>>> 
>>>>> Is it still related to this:
>>>>> http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-March/071394.html
>>>>> 
>>>>> 
>>>>> Adrian Zgorzałek
>>>>> 
>>>>> _______________________________________________
>>>>> LLVM Developers mailing list
>>>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>> 
>>> 
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>> 
>> 
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>> 





More information about the llvm-dev mailing list