summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/GNUInstallDirs
Commit message (Collapse)AuthorAgeFilesLines
* Tests/RunCMake: Update cmake_minimum_required versionsBrad King2023-02-111-1/+1
| | | | | | | | For policy-specific tests, use the version before the policy was introduced. Otherwise, use 3.5 where possible. Also, remove `cmake_minimum_required()` and `project()` calls from individual cases where they are handled by `CMakeLists.txt`.
* GNUInstallDirs: Revert "Apply Debian multiarch LIBDIR to more prefixes"Brad King2022-03-302-4/+4
| | | | | | | | | | | | | | | | | | | | Revert commit dd9584b352 (GNUInstallDirs: Apply Debian multiarch LIBDIR to more prefixes, 2021-11-19, v3.23.0-rc1~323^2). There are separate problems with activating multiarch `LIBDIR` for each prefix it added: * Prefix `/` is often used to stage an installation with `DESTDIR` for inclusion in a tarball package or similar. * Prefix `/usr/local` is the default `CMAKE_INSTALL_PREFIX`, causing the multiarch `LIBDIR` to be cached after the first configuration, even if the prefix changes later. Revert the change for now, except for the documentation update. Further discussion will be needed to select a way to enable multiarch `LIBDIR` for `/` and `/usr/local`. Fixes: #23365 Issue: #19698
* GNUInstallDirs: Update CMAKE_INSTALL_MANDIR for FreeBSDDmitry Marakasov2021-11-304-8/+8
| | | | | | | FreeBSD has switched from PREFIX/man ro PREFIX/share/man see https://cgit.freebsd.org/ports/tree/CHANGES entry 20200115. Fixes: #22883
* GNUInstallDirs: Apply Debian multiarch LIBDIR to more prefixesMathieu Malaterre2021-11-192-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | On typical Debian amd64 system (bullseye), multiarch is setup as: ``` % cat /etc/ld.so.conf.d/x86_64-linux-gnu.conf /usr/local/lib/x86_64-linux-gnu /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu ``` Where: ``` % apt-cache policy libc6:amd64 libc6: Installed: 2.31-13+deb11u2 Candidate: 2.31-13+deb11u2 Version table: *** 2.31-13+deb11u2 500 500 http://deb.debian.org/debian bullseye/main amd64 Packages 100 /var/lib/dpkg/status ``` Update GNUInstallDirs to support all three cases `/`, `/usr/` and `/usr/local/`. Fixes: #19698
* Merge topic 'revert-debian-libexec'Brad King2021-10-081-2/+2
|\ | | | | | | | | | | | | 6658e260d4 GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6607
| * GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIRTimo Röhling2021-10-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | 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
* | Tests: Add RunCMake.GNUInstallDirs case for get_absolute_install_dirBrad King2020-11-043-0/+24
|/
* GNUInstallDirs: Comply with Debian Policy on LIBEXECDIRDennis Klein2020-10-081-2/+2
| | | | | | | | | | | | If CMAKE_INSTALL_PREFIX is /usr, CMAKE_INSTALL_LIBEXECDIR shall return the same value as CMAKE_INSTALL_LIBDIR on Debian. While the FHS allows /usr/libexec for internal binaries (https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#usrlibexec) the Debian Policy Manual states an exception here (section 9.1.1 bullet point 4): https://www.debian.org/doc/debian-policy/ch-opersys#file-system-structure. Fixes: #21287
* Tests: Add RunCMake.GNUInstallDirs expected output specific to DebianBrad King2020-10-085-0/+122
|
* GNUInstallDirs: Warn when CMAKE_SYSTEM_NAME is not setVitaly Lipatov2020-01-303-0/+13
| | | | | | If a project writes `include(GNUInstallDirs)` before `project()` then `CMAKE_SYSTEM_NAME` may not be set and an incorrect `LIBDIR` may be computed. Warn about this case.
* GNUInstallDirs: Update FreeBSD "info" destination to share/infoTobias C. Berner2018-11-134-8/+8
| | | | | | | | | | | | | | FreeBSD ports commit r484628 (Install texinfo files (GNU info) into ${PREFIX}/share/info, 2018-11-10) changed the "info" destination from "info" to "share/info". The commit included a patch to their distribution of CMake to fix the `GNUInstallDirs` module too. Apply a similar logic change to our upstream version of the module. We already made a similar change for GNU/kFreeBSD in commit v3.13.0-rc2~8^2 (GNUInstallDirs: Don't use BSD info and man paths on GNU/kFreeBSD, 2018-10-21). Fixes: #18585
* Tests: Split GNUInstallDirs expectations for FreeBSDBrad King2018-11-135-5/+127
|
* GNUInstallDirs: Don't use BSD info and man paths on GNU/kFreeBSDJames Clarke2018-10-221-1/+1
|
* Tests: Fix RunCMake.GNUInstallDirs on BSD platformsBrad King2017-06-026-7/+135
| | | | | | | The `GNUInstallDirs` module has different defaults on BSD platforms. Update the test expected output to account for the difference. Fixes: #16887
* GNUInstallDirs: Add RUNSTATEDIR variableFelix Geyer2017-04-205-0/+9
|
* GNUInstallDirs: Add special cases for certain prefixesAlex Turbov2015-06-183-30/+30
| | | | | | | | | Teach the module to handle SYSCONFDIR and LOCALSTATEDIR properly if CMAKE_INSTALL_PREFIX is set to `/` or `/usr` -- i.e. as expected by GNU Coding Standard (i.e. set SYSCONFDIR to `/etc` and `LOCALSTATEDIR` to `/var`). Also if CMAKE_INSTALL_PREFIX is set to /opt/pkg, `SYSCONFDIR` must be set to `/etc/opt/pkg` and `LOCALSTATEDIR` to `/var/opt/pkg` according to FHS.
* GNUInstallDirs: Add test casesBrad King2015-06-1811-0/+157
Add a RunCMake.GNUInstallDirs test with cases covering various install prefixes. Hard-code the architecture information. Tolerate all platform-specific LIBDIR values. Currently the root prefix is not handled well, but verify the current behavior in the test anyway. This can be addressed with a future change. Inspired-by: Alex Turbov <i.zaufi@gmail.com>