diff options
author | Brad King <brad.king@kitware.com> | 2016-07-05 17:35:13 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-07-06 14:13:31 (GMT) |
commit | a66004bee06023e9da4e0895ee1afbceaff33bdb (patch) | |
tree | 280b76c2204f6b3c62a1980c43d09acb3192db98 /Help/variable/CMAKE_LANG_FLAGS_INIT.rst | |
parent | cdde77e5f66cee933a7b7c538c22e8c323a91d09 (diff) | |
download | CMake-a66004bee06023e9da4e0895ee1afbceaff33bdb.zip CMake-a66004bee06023e9da4e0895ee1afbceaff33bdb.tar.gz CMake-a66004bee06023e9da4e0895ee1afbceaff33bdb.tar.bz2 |
Honor CMAKE_<LANG>_FLAGS[_<CONFIG>]_INIT set in toolchain files
Document these variables.
Change our convention for setting these variables from:
set(CMAKE_C_FLAGS_INIT "...")
to
string(APPEND CMAKE_C_FLAGS_INIT " ...")
so that any value previously set by a toolchain file will be used.
Automate the conversion with:
sed -i 's/set *(\(CMAKE_\(C\|CXX\|Fortran\|RC\|ASM\|${[^}]\+}\)_FLAGS\(_[^_]\+\)\?_INIT \+"\)/string(APPEND \1 /' \
Modules/Compiler/*.cmake Modules/Platform/*.cmake
and follow up with some manual fixes (e.g. to cases that already
meant to append). Also revert the automated changes to contexts
that are not protected from running multiple times.
Diffstat (limited to 'Help/variable/CMAKE_LANG_FLAGS_INIT.rst')
-rw-r--r-- | Help/variable/CMAKE_LANG_FLAGS_INIT.rst | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Help/variable/CMAKE_LANG_FLAGS_INIT.rst b/Help/variable/CMAKE_LANG_FLAGS_INIT.rst new file mode 100644 index 0000000..1d32cc3 --- /dev/null +++ b/Help/variable/CMAKE_LANG_FLAGS_INIT.rst @@ -0,0 +1,15 @@ +CMAKE_<LANG>_FLAGS_INIT +----------------------- + +Value used to initialize the :variable:`CMAKE_<LANG>_FLAGS` cache entry +the first time a build tree is configured for language ``<LANG>``. +This variable is meant to be set by a :variable:`toolchain file +<CMAKE_TOOLCHAIN_FILE>`. CMake may prepend or append content to +the value based on the environment and target platform. + +See also the configuration-specific variables: + +* :variable:`CMAKE_<LANG>_FLAGS_DEBUG_INIT` +* :variable:`CMAKE_<LANG>_FLAGS_RELEASE_INIT` +* :variable:`CMAKE_<LANG>_FLAGS_MINSIZEREL_INIT` +* :variable:`CMAKE_<LANG>_FLAGS_RELWITHDEBINFO_INIT` |