mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-21 14:40:26 -06:00
GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIR
Revert commit 798c1c3192 (GNUInstallDirs: Comply with Debian Policy on
LIBEXECDIR, 2020-10-08, v3.19.0-rc1~11^2).
The Debian Policy builds upon FHS 3.0 and permits installing to
`/usr/libexec`. While Policy does grant an additional exception for
applications to use a single subdirectory of `/usr/lib/<triplet>`, this
is not meant to replace `/usr/libexec` as valid target.
Fixes: #22731
This commit is contained in:
@@ -167,6 +167,8 @@ _GNUInstallDirs_cache_path(CMAKE_INSTALL_BINDIR "bin"
|
||||
"User executables (bin)")
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SBINDIR "sbin"
|
||||
"System admin executables (sbin)")
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_LIBEXECDIR "libexec"
|
||||
"Program executables (libexec)")
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SYSCONFDIR "etc"
|
||||
"Read-only single-machine data (etc)")
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SHAREDSTATEDIR "com"
|
||||
@@ -260,19 +262,6 @@ set(_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE IN
|
||||
unset(_libdir_set)
|
||||
unset(__LAST_LIBDIR_DEFAULT)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|kFreeBSD|GNU)$"
|
||||
AND NOT CMAKE_CROSSCOMPILING
|
||||
AND NOT EXISTS "/etc/arch-release"
|
||||
AND EXISTS "/etc/debian_version" # is this a debian system ?
|
||||
AND "${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/?$")
|
||||
# see https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#usrlibexec
|
||||
# and https://www.debian.org/doc/debian-policy/ch-opersys#file-system-structure (section 9.1.1 bullet point 4)
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_LIBEXECDIR "${CMAKE_INSTALL_LIBDIR}"
|
||||
"Program executables (${CMAKE_INSTALL_LIBDIR})")
|
||||
else()
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_LIBEXECDIR "libexec"
|
||||
"Program executables (libexec)")
|
||||
endif()
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_INCLUDEDIR "include"
|
||||
"C header files (include)")
|
||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_OLDINCLUDEDIR "/usr/include"
|
||||
|
||||
@@ -5,7 +5,7 @@ CMAKE_INSTALL_DOCDIR='share/doc/Usr'
|
||||
CMAKE_INSTALL_INCLUDEDIR='include'
|
||||
CMAKE_INSTALL_INFODIR='share/info'
|
||||
CMAKE_INSTALL_LIBDIR='lib/arch'
|
||||
CMAKE_INSTALL_LIBEXECDIR='lib/arch'
|
||||
CMAKE_INSTALL_LIBEXECDIR='libexec'
|
||||
CMAKE_INSTALL_LOCALEDIR='share/locale'
|
||||
CMAKE_INSTALL_LOCALSTATEDIR='var'
|
||||
CMAKE_INSTALL_RUNSTATEDIR='var/run'
|
||||
@@ -20,7 +20,7 @@ CMAKE_INSTALL_FULL_DOCDIR='/usr/share/doc/Usr'
|
||||
CMAKE_INSTALL_FULL_INCLUDEDIR='/usr/include'
|
||||
CMAKE_INSTALL_FULL_INFODIR='/usr/share/info'
|
||||
CMAKE_INSTALL_FULL_LIBDIR='/usr/lib/arch'
|
||||
CMAKE_INSTALL_FULL_LIBEXECDIR='/usr/lib/arch'
|
||||
CMAKE_INSTALL_FULL_LIBEXECDIR='/usr/libexec'
|
||||
CMAKE_INSTALL_FULL_LOCALEDIR='/usr/share/locale'
|
||||
CMAKE_INSTALL_FULL_LOCALSTATEDIR='/var'
|
||||
CMAKE_INSTALL_FULL_RUNSTATEDIR='/var/run'
|
||||
|
||||
Reference in New Issue
Block a user