summaryrefslogtreecommitdiffstats
path: root/cmake/cmake.d/03-macros.cmake
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2018-07-09 13:57:28 +0200
committerRomain Forlot <romain.forlot@iot.bzh>2018-07-09 17:03:19 +0200
commit1ec753146fa7b2fe7187765fd51e167db4bee3c9 (patch)
tree431adbb274d06752c433b7f870db5b0694366c01 /cmake/cmake.d/03-macros.cmake
parent08803561c89dd761a26e6a236829c5141056c969 (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/cmake.d/03-macros.cmake')
-rw-r--r--cmake/cmake.d/03-macros.cmake7
1 files changed, 7 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})