diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2018-07-09 13:57:28 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2018-10-15 18:22:48 +0200 |
commit | a5341a80e29dcd26881a411bb635a97b8cf86433 (patch) | |
tree | 94dedf6024b855f117037d9f7b845644075945e7 /cmake | |
parent | 6e40c15b5156cdc0e48e470c00e9905d2c8ca46f (diff) |
Use CACHE variable for other common CMAKE variable
This is done to be able to overwite from CLI those variables.
CMAKE_INSTALL_PREFIX is a special case since it is set by default
to '/usr/local' at CMake invocation. So overwriting by CLI is fine
but set it up using config.cmake file not. So since CMake v3.7 there
is a variable to know if this variable has been set by default or not.
Change-Id: I60c5161fa9a4134d100ef709d0966d599871ad44
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/cmake.d/03-macros.cmake | 7 | ||||
-rw-r--r-- | cmake/common.cmake | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/cmake/cmake.d/03-macros.cmake b/cmake/cmake.d/03-macros.cmake index 085c249..0d24a40 100644 --- a/cmake/cmake.d/03-macros.cmake +++ b/cmake/cmake.d/03-macros.cmake @@ -108,6 +108,13 @@ ENDMACRO(LIST_FILTER) # Generic useful macro # ----------------------- +macro(set_install_prefix) + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND INSTALL_PREFIX) + message(STATUS "-- Overwrite the CMAKE default install prefix with ${INSTALL_PREFIX}") + set(CMAKE_INSTALL_PREFIX ${INSTALL_PREFIX} CACHE PATH "Install prefix" FORCE) + endif() +endmacro() + macro(PROJECT_TARGET_ADD TARGET_NAME) set_property(GLOBAL APPEND PROPERTY PROJECT_TARGETS ${TARGET_NAME}) set(TARGET_NAME ${TARGET_NAME}) diff --git a/cmake/common.cmake b/cmake/common.cmake index e764d34..8e57b26 100644 --- a/cmake/common.cmake +++ b/cmake/common.cmake @@ -85,6 +85,7 @@ foreach(file ${system_cmakefiles} ${home_cmakefiles} ${project_cmakefiles}) include(${file}) endforeach() +set_install_prefix() prevent_in_source_build() if(DEFINED PROJECT_SRC_DIR_PATTERN) |