install - Set installation prefix automatically to custom path if not explicitly specified on the command line -
for internal tests, install prefix default subdirectory of build directory, unless explicitly overridden user. know user can specify install prefix by:
$ cmake -dcmake_install_prefix=/foo/bar ..
but if user not specify this, should default to, e.g. ${pwd}/installed
.
the variable cmake_install_prefix
set /usr/local
, cannot check see if unset/empty before setting it.
my current solution add custom switch user has invoke specify cmake_install_prefix
variable gets respected:
option(enable_install_prefix "install build targets system (path given '-dcmake_install_prefix' or '${cmake_install_prefix}' if not specified)." off) if ( enable_install_prefix ) set (cmake_install_prefix installed cache path "installation root") else() set (cmake_install_prefix installed cache path "installation root" force) endif()
my questions are:
(a) there issues above, beyond annoyance of flag needing passed cmake cmake_install_prefix
have effect?
(b) there better, cleaner, more robust, more idiomatic and/or less annoying way achieve above?
thanks.
cmake sets boolean variable cmake_install_prefix_initialized_to_default
if cmake_install_prefix
has not been explicitly specified , initialized default setting. can override in following way:
if (cmake_install_prefix_initialized_to_default) set (cmake_install_prefix "${cmake_binary_dir}/installed" cache path "default install path" force ) endif()
Comments
Post a Comment