[CMake] Re-setting CMAKE_C_COMPILER on command line discards CMAKE_C_FLAGS

Jed Brown jed at 59A2.org
Thu Aug 25 12:05:25 EDT 2011


$ cmake .. '-DCMAKE_C_COMPILER:FILEPATH=mpicc' '-DCMAKE_C_FLAGS:STRING=
-Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas'
[no problems]
$ grep CMAKE_C_FLAGS:STRING CMakeCache.txt
CMAKE_C_FLAGS:STRING= -Wall -Wwrite-strings -Wno-strict-aliasing
-Wno-unknown-pragmas
$ cmake ..
[no problems]
$ grep CMAKE_C_FLAGS:STRING CMakeCache.txt
CMAKE_C_FLAGS:STRING= -Wall -Wwrite-strings -Wno-strict-aliasing
-Wno-unknown-pragmas
$ cmake .. '-DCMAKE_C_FLAGS:STRING= -Wall -Wwrite-strings
-Wno-strict-aliasing -Wno-unknown-pragmas'
$ grep CMAKE_C_FLAGS:STRING CMakeCache.txt
CMAKE_C_FLAGS:STRING= -Wall -Wwrite-strings -Wno-strict-aliasing
-Wno-unknown-pragmas
$ cmake .. '-DCMAKE_C_COMPILER:FILEPATH=mpicc' '-DCMAKE_C_FLAGS:STRING=
-Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas'
-- Configuring done
You have changed variables that require your cache to be deleted.
Configure will be re-run and you may have to reset some variables.
The following variables have changed:
CMAKE_C_COMPILER= mpicc
[...]
$ grep CMAKE_C_FLAGS:STRING CMakeCache.txt
CMAKE_C_FLAGS:STRING=


In this last case, I would expect CMAKE_C_FLAGS to be the value I set it to.
I even thought that worked with cmake versions prior to 1.8.5, but I could
be mistaken.

Is there a way to reset both CMAKE_C_COMPILER and CMAKE_C_FLAGS in the same
invocation, without just deleting CMakeCache.txt?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20110825/d7634f27/attachment.htm>


More information about the CMake mailing list