mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-24 09:09:43 -05:00
2e88a3efc2
Fix commit 9789f7d05e (GNUInstallDirs: Add internal helper to compute
specific defaults, 2025-03-28, v4.1.0-rc1~384^2~3) to avoid updating
explicitly-specified cache entries on the first run. Do not reset the
default value until at least the second run, during which we have
`_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX` already defined.
Fixes: #27211
55 lines
1.1 KiB
CMake
55 lines
1.1 KiB
CMake
include(RunCMake)
|
|
|
|
if(SYSTEM_NAME STREQUAL "FreeBSD")
|
|
set(variant "-FreeBSD")
|
|
elseif(SYSTEM_NAME MATCHES "^(([^k].*)?BSD|DragonFly)$")
|
|
set(variant "-BSD")
|
|
elseif(EXISTS "/etc/debian_version")
|
|
set(variant "-Debian")
|
|
else()
|
|
set(variant "")
|
|
endif()
|
|
|
|
foreach(case
|
|
Opt
|
|
Root
|
|
Usr
|
|
UsrLocal
|
|
)
|
|
set(RunCMake-stderr-file ${case}${variant}-stderr.txt)
|
|
run_cmake(${case})
|
|
unset(RunCMake-stderr-file)
|
|
endforeach()
|
|
|
|
block()
|
|
set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/Reconfigure-build")
|
|
set(RunCMake-stderr-file UsrLocal${variant}-stderr.txt)
|
|
run_cmake_with_options(Reconfigure)
|
|
set(RunCMake_TEST_NO_CLEAN 1)
|
|
foreach(case
|
|
Opt
|
|
Root
|
|
Usr
|
|
UsrLocal
|
|
)
|
|
set(RunCMake-stderr-file ${case}${variant}-stderr.txt)
|
|
run_cmake_with_options(Reconfigure -Dcase=${case})
|
|
endforeach()
|
|
endblock()
|
|
|
|
run_cmake(GetAbs)
|
|
run_cmake(NoSystem)
|
|
|
|
foreach(case
|
|
Opt
|
|
Root
|
|
Usr
|
|
UsrLocal
|
|
)
|
|
run_cmake_with_options(ExplicitDefaults-${case}
|
|
-DCMAKE_INSTALL_BINDIR=bin
|
|
-DCMAKE_INSTALL_INCLUDEDIR=include
|
|
-DCMAKE_INSTALL_LIBDIR=lib
|
|
)
|
|
endforeach()
|