Merge topic 'GNUInstallDirs-cached-default' into release-4.1

5071c93a78 GNUInstallDirs: Fix regression on -DCMAKE_INSTALL_<dir>=<default>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Cristian Le <github@lecris.me>
Merge-request: !10921
This commit is contained in:
Brad King
2025-07-03 17:00:36 +00:00
committed by Kitware Robot
4 changed files with 31 additions and 1 deletions
+4 -1
View File
@@ -279,7 +279,10 @@ function(_GNUInstallDirs_cache_path var description)
# the old default, reset the value to the new default
if(${cmake_install_var} STREQUAL "$CACHE{${cmake_install_var}}"
AND ${cmake_install_var} STREQUAL last_default)
set(${cmake_install_var} "${default}" CACHE PATH "${full_description}" FORCE)
set(full_description "${description} (${default})")
set_property(CACHE ${cmake_install_var} PROPERTY TYPE PATH)
set_property(CACHE ${cmake_install_var} PROPERTY VALUE "${default}")
set_property(CACHE ${cmake_install_var} PROPERTY HELPSTRING "${full_description}")
endif()
# Continue to normal flow
endif()
@@ -0,0 +1,6 @@
-- CMAKE_INSTALL_BINDIR='bin'
-- CMAKE_INSTALL_INCLUDEDIR='include'
-- CMAKE_INSTALL_LIBDIR='lib'
-- CMAKE_INSTALL_FULL_BINDIR='/usr/local/bin'
-- CMAKE_INSTALL_FULL_INCLUDEDIR='/usr/local/include'
-- CMAKE_INSTALL_FULL_LIBDIR='/usr/local/lib'
@@ -0,0 +1,15 @@
set(CMAKE_SIZEOF_VOID_P 8)
set(CMAKE_LIBRARY_ARCHITECTURE "arch")
set(CMAKE_INSTALL_PREFIX "/usr/local")
include(GNUInstallDirs)
set(dirs
BINDIR
INCLUDEDIR
LIBDIR
)
foreach(dir ${dirs})
message(STATUS "CMAKE_INSTALL_${dir}='$CACHE{CMAKE_INSTALL_${dir}}'")
endforeach()
foreach(dir ${dirs})
message(STATUS "CMAKE_INSTALL_FULL_${dir}='${CMAKE_INSTALL_FULL_${dir}}'")
endforeach()
@@ -39,3 +39,9 @@ endblock()
run_cmake(GetAbs)
run_cmake(NoSystem)
run_cmake_with_options(ExplicitDefaults
-DCMAKE_INSTALL_BINDIR=bin
-DCMAKE_INSTALL_INCLUDEDIR=include
-DCMAKE_INSTALL_LIBDIR=lib
)