This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, next has been updated via cb44094bc5b30993d00e5bea055a02323b6dbee5 (commit) via 70d052f71ddbf15754073f0d3ba5621f5dc06524 (commit) from 45c6d45ad795580eb861ca13b4d81f8f6d35943b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cb44094bc5b30993d00e5bea055a02323b6dbee5 commit cb44094bc5b30993d00e5bea055a02323b6dbee5 Merge: 45c6d45 70d052f Author: Roger Leigh <rle...@codelibre.net> AuthorDate: Tue Sep 6 17:04:39 2016 -0400 Commit: CMake Topic Stage <kwro...@kitware.com> CommitDate: Tue Sep 6 17:04:39 2016 -0400 Merge topic 'gid-func' into next 70d052f7 GNUInstallDirs: Add set_full_install_dir macro https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=70d052f71ddbf15754073f0d3ba5621f5dc06524 commit 70d052f71ddbf15754073f0d3ba5621f5dc06524 Author: Roger Leigh <rle...@codelibre.net> AuthorDate: Sun Aug 28 18:19:02 2016 +0100 Commit: Roger Leigh <rle...@codelibre.net> CommitDate: Tue Sep 6 21:54:16 2016 +0100 GNUInstallDirs: Add set_full_install_dir macro diff --git a/Modules/GNUInstallDirs.cmake b/Modules/GNUInstallDirs.cmake index b42084e..eec9cb0 100644 --- a/Modules/GNUInstallDirs.cmake +++ b/Modules/GNUInstallDirs.cmake @@ -99,6 +99,22 @@ # `Filesystem Hierarchy Standard`_. # # .. _`Filesystem Hierarchy Standard`: https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html +# +# Macros +# ^^^^^^ +# +# :: +# +# GNUInstallDirs_get_absolute_install_dir(absvar var) +# +# Set the given variable ``absvar`` to the absolute path contained +# within the variable ``var``. This is to allow the computation of an +# absolute path, accounting for all the special cases documented +# above. While this macro is used to compute the various +# ``CMAKE_INSTALL_FULL_<dir>`` variables, it is exposed publicly to +# allow users who create additional path variables to also compute +# absolute paths where necessary, using the same logic. +# #============================================================================= # Copyright 2015 Alex Turbov <i.za...@gmail.com> @@ -300,55 +316,59 @@ mark_as_advanced( CMAKE_INSTALL_DOCDIR ) -# Result directories -# -foreach(dir - BINDIR - SBINDIR - LIBEXECDIR - SYSCONFDIR - SHAREDSTATEDIR - LOCALSTATEDIR - LIBDIR - INCLUDEDIR - OLDINCLUDEDIR - DATAROOTDIR - DATADIR - INFODIR - LOCALEDIR - MANDIR - DOCDIR - ) - if(NOT IS_ABSOLUTE "${CMAKE_INSTALL_${dir}}") +macro(GNUInstallDirs_get_absolute_install_dir absvar var) + if(NOT IS_ABSOLUTE "${${var}}") # Handle special cases: # - CMAKE_INSTALL_PREFIX == / # - CMAKE_INSTALL_PREFIX == /usr # - CMAKE_INSTALL_PREFIX == /opt/... if("${CMAKE_INSTALL_PREFIX}" STREQUAL "/") if("${dir}" STREQUAL "SYSCONFDIR" OR "${dir}" STREQUAL "LOCALSTATEDIR") - set(CMAKE_INSTALL_FULL_${dir} "/${CMAKE_INSTALL_${dir}}") + set(${absvar} "/${${var}}") else() - if (NOT "${CMAKE_INSTALL_${dir}}" MATCHES "^usr/") - set(CMAKE_INSTALL_${dir} "usr/${CMAKE_INSTALL_${dir}}") + if (NOT "${${var}}" MATCHES "^usr/") + set(${var} "usr/${${var}}") endif() - set(CMAKE_INSTALL_FULL_${dir} "/${CMAKE_INSTALL_${dir}}") + set(${absvar} "/${${var}}") endif() elseif("${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/?$") if("${dir}" STREQUAL "SYSCONFDIR" OR "${dir}" STREQUAL "LOCALSTATEDIR") - set(CMAKE_INSTALL_FULL_${dir} "/${CMAKE_INSTALL_${dir}}") + set(${absvar} "/${${var}}") else() - set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_${dir}}") + set(${absvar} "${CMAKE_INSTALL_PREFIX}/${${var}}") endif() elseif("${CMAKE_INSTALL_PREFIX}" MATCHES "^/opt/.*") if("${dir}" STREQUAL "SYSCONFDIR" OR "${dir}" STREQUAL "LOCALSTATEDIR") - set(CMAKE_INSTALL_FULL_${dir} "/${CMAKE_INSTALL_${dir}}${CMAKE_INSTALL_PREFIX}") + set(${absvar} "/${${var}}${CMAKE_INSTALL_PREFIX}") else() - set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_${dir}}") + set(${absvar} "${CMAKE_INSTALL_PREFIX}/${${var}}") endif() else() - set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_${dir}}") + set(${absvar} "${CMAKE_INSTALL_PREFIX}/${${var}}") endif() else() - set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_${dir}}") + set(${absvar} "${${var}}") endif() +endmacro() + +# Result directories +# +foreach(dir + BINDIR + SBINDIR + LIBEXECDIR + SYSCONFDIR + SHAREDSTATEDIR + LOCALSTATEDIR + LIBDIR + INCLUDEDIR + OLDINCLUDEDIR + DATAROOTDIR + DATADIR + INFODIR + LOCALEDIR + MANDIR + DOCDIR + ) + GNUInstallDirs_get_absolute_install_dir(CMAKE_INSTALL_FULL_${dir} CMAKE_INSTALL_${dir}) endforeach() ----------------------------------------------------------------------- Summary of changes: Modules/GNUInstallDirs.cmake | 80 ++++++++++++++++++++++++++---------------- 1 file changed, 50 insertions(+), 30 deletions(-) hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits