Читаю форумы, и везде советуют вместо явной установки CMAKE_INSTALL_PREFIX
сначала проверить, а не ввел ли пользователь свой путь (что логично). Однако, у меня почему-то внутренняя переменная CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT
принимает значение false, несмотря на то, что cmake туда запихнул неправильный путь /usr/local
:
project(${PROJ})
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
message("def")
endif()
# change wrong behaviour with install prefix
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND CMAKE_INSTALL_PREFIX MATCHES "/usr/local")
message("Prefix!")
set(CMAKE_INSTALL_PREFIX "/usr")
endif()
message("Install dir prefix: ${CMAKE_INSTALL_PREFIX}")
Сообщения "def" нет, сообщения "Prefix!" нет. Путь — /usr/local
Как с этим бороться? Раньше я просто менял
set(CMAKE_INSTALL_PREFIX "/usr")
P.S. cmake 2.8.10.2-5