From 24134c972e375bebad45c860c413233b60863852 Mon Sep 17 00:00:00 2001 From: Aleix Pol Date: Tue, 12 Dec 2017 16:34:39 +0100 Subject: Introduce INSTALL_PREFIX_SCRIPT to easily set up prefixes Summary: If enabled it will install a prefix.sh script to the root of the prefix. This file will be useful to be able to easily set up a prefix to be used by integrating the environment variables it exports. Test Plan: ``` $ cat prefix.sh export PATH=/home/apol/devel/kde5/bin:$PATH export LD_LIBRARY_PATH=/home/apol/devel/kde5/lib64:$LD_LIBRARY_PATH export XDG_DATA_DIRS=/home/apol/devel/kde5/share:${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/} export XDG_CONFIG_DIRS=/home/apol/devel/kde5/etc/xdg:${XDG_CONFIG_DIRS:-/etc/xdg} export QT_PLUGIN_PATH=/home/apol/devel/kde5/lib64/plugins:$QT_PLUGIN_PATH export QML2_IMPORT_PATH=/home/apol/devel/kde5/lib64/qml:$QML2_IMPORT_PATH ``` Reviewers: #frameworks, sitter Reviewed By: sitter Subscribers: kfunk, bcooksley, ngraham, sitter, cgiboudeaux, #build_system Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D9299 --- kde-modules/KDEInstallDirs.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'kde-modules/KDEInstallDirs.cmake') diff --git a/kde-modules/KDEInstallDirs.cmake b/kde-modules/KDEInstallDirs.cmake index b0e651f6..5c8783b5 100644 --- a/kde-modules/KDEInstallDirs.cmake +++ b/kde-modules/KDEInstallDirs.cmake @@ -190,6 +190,11 @@ # # NB: The variables starting ``KDE_INSTALL_`` are available since 1.6.0, # unless otherwise noted with the variable. +# +# The ``KDE_INSTALL_PREFIX_SCRIPT`` option will install a ${CMAKE_INSTALL_PREFIX}/prefix.sh +# file that allows to easily incorporate the necessary environment variables +# for the prefix into a process. +# #============================================================================= # Copyright 2014-2015 Alex Merry @@ -689,3 +694,14 @@ endif() if(NOT "${PROJECT_NAME}" STREQUAL "Project") set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME "${PROJECT_NAME}") endif() + + +################################################################### +# Prefix set up + +configure_file(${CMAKE_CURRENT_LIST_DIR}/prefix.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/prefix.sh @ONLY) + +option(KDE_INSTALL_PREFIX_SCRIPT "Installs ${CMAKE_INSTALL_PREFIX}/prefix.sh that sets up the necessary environment variables" OFF) +if(KDE_INSTALL_PREFIX_SCRIPT) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/prefix.sh DESTINATION ${CMAKE_INSTALL_PREFIX} PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ) +endif() -- cgit v1.2.1