MantisBT - CMake | |||||
View Issue Details | |||||
ID | Project | Category | View Status | Date Submitted | Last Update |
0013008 | CMake | CMake | public | 2012-03-01 21:27 | 2016-06-10 14:31 |
Reporter | David Coles | ||||
Assigned To | Kitware Robot | ||||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | moved | ||
Platform | Linux | OS | Ubuntu | OS Version | 12.04 (dev) |
Product Version | CMake 2.8.7 | ||||
Target Version | Fixed in Version | ||||
Summary | 0013008: CFLAGs set in toolchain file are overwritten | ||||
Description | It's possible to set common CMAKE variables in a toolchain file with the assumption that they'll be used in external builds. This would be the ideal location for toolchain specific compiler flags, but unfortunately these are overwritten after the toolchain testing is complete. A workaround[1] is to set the CFLAGS to the CMAKE Cache using something like `SET(CMAKE_C_FLAGS "-Wall" CACHE STRING "Toolchain")` but this breaks the use of CFLAGS environment variable. [1] http://www.mail-archive.com/cmake@cmake.org/msg40214.html [^] | ||||
Steps To Reproduce | # Toolchain.cmake # =============== set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_VERSION 1) set( CLANG True ) # Set the cross compiler set(CMAKE_C_COMPILER clang) set(CMAKE_CXX_COMPILER clang++) set(CMAKE_C_FLAGS "-Wextra") #set(CMAKE_C_FLAGS "-Wextra" CACHE STRING "Toolchain") set(MY_C_FLAGS "-Wextra") MESSAGE(STATUS "Toolchain CMAKE_C_FLAGS: ${CMAKE_C_FLAGS}") MESSAGE(STATUS "Toolchain MY_C_FLAGS: ${MY_C_FLAGS}") # CMakeLists.txt # ============== PROJECT (Test) CMAKE_MINIMUM_REQUIRED (VERSION 2.8) # Expect that toolchain variables are still set MESSAGE (STATUS "CMAKE_C_FLAGS: ${CMAKE_C_FLAGS}") MESSAGE (STATUS "MY_C_FLAGS: ${MY_C_FLAGS}") # Command Line # ============ $ rm CMakeCache.txt; cmake -DCMAKE_TOOLCHAIN_FILE=Toolchain.cmake . | ||||
Additional Information | |||||
Tags | No tags attached. | ||||
Relationships | |||||
Attached Files | |||||
Issue History | |||||
Date Modified | Username | Field | Change | ||
2012-03-01 21:27 | David Coles | New Issue | |||
2012-08-11 21:09 | David Cole | Status | new => backlog | ||
2012-08-11 21:09 | David Cole | Note Added: 0030371 | |||
2016-06-10 14:28 | Kitware Robot | Note Added: 0041995 | |||
2016-06-10 14:28 | Kitware Robot | Status | backlog => resolved | ||
2016-06-10 14:28 | Kitware Robot | Resolution | open => moved | ||
2016-06-10 14:28 | Kitware Robot | Assigned To | => Kitware Robot | ||
2016-06-10 14:31 | Kitware Robot | Status | resolved => closed |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|