1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
|
From: Ghislain Antony Vaillant <ghisvail@gmail.com>
Date: Sat, 17 Sep 2016 11:02:39 +0100
Subject: Add multiarch support.
---
CMakeLists.txt | 9 ++++----
globjects-config.cmake | 46 +----------------------------------------
source/globjects/CMakeLists.txt | 2 +-
3 files changed, 7 insertions(+), 50 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2375f97..40fa652 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -110,14 +110,15 @@ endif()
# Installation paths
if(UNIX AND SYSTEM_DIR_INSTALL)
+ include(GNUInstallDirs)
# Install into the system (/usr/bin or /usr/local/bin)
set(INSTALL_ROOT "share/${project}") # /usr/[local]/share/<project>
- set(INSTALL_CMAKE "share/${project}/cmake") # /usr/[local]/share/<project>/cmake
+ set(INSTALL_CMAKE "${CMAKE_INSTALL_LIBDIR}/cmake/${project}") # /usr/[local]/lib/<arch>/cmake/<project>
set(INSTALL_EXAMPLES "share/${project}") # /usr/[local]/share/<project>
set(INSTALL_DATA "share/${project}") # /usr/[local]/share/<project>
set(INSTALL_BIN "bin") # /usr/[local]/bin
- set(INSTALL_SHARED "lib") # /usr/[local]/lib
- set(INSTALL_LIB "lib") # /usr/[local]/lib
+ set(INSTALL_SHARED "${CMAKE_INSTALL_LIBDIR}") # /usr/[local]/lib/<arch>
+ set(INSTALL_LIB "${CMAKE_INSTALL_LIBDIR}") # /usr/[local]/lib/<arch>
set(INSTALL_INCLUDE "include") # /usr/[local]/include
set(INSTALL_DOC "share/doc/${project}") # /usr/[local]/share/doc/<project>
set(INSTALL_SHORTCUTS "share/applications") # /usr/[local]/share/applications
@@ -171,7 +172,7 @@ add_subdirectory(deploy)
install(FILES "${PROJECT_BINARY_DIR}/VERSION" DESTINATION ${INSTALL_ROOT} COMPONENT runtime)
# Install cmake find script for the project
-install(FILES ${META_PROJECT_NAME}-config.cmake DESTINATION ${INSTALL_ROOT} COMPONENT dev)
+install(FILES ${META_PROJECT_NAME}-config.cmake DESTINATION ${INSTALL_CMAKE} COMPONENT dev)
# Install the project meta files
install(FILES AUTHORS DESTINATION ${INSTALL_ROOT} COMPONENT runtime)
diff --git a/globjects-config.cmake b/globjects-config.cmake
index c90c0ba..f1e6e33 100644
--- a/globjects-config.cmake
+++ b/globjects-config.cmake
@@ -1,45 +1 @@
-
-# This config script tries to locate the project either in its source tree
-# or from an install location.
-#
-# Please adjust the list of submodules to search for.
-
-
-# List of modules
-set(MODULE_NAMES
- globjects
-)
-
-
-# Macro to search for a specific module
-macro(find_module FILENAME)
- if(EXISTS "${FILENAME}")
- set(MODULE_FOUND TRUE)
- include("${FILENAME}")
- endif()
-endmacro()
-
-# Macro to search for all modules
-macro(find_modules PREFIX)
- foreach(module_name ${MODULE_NAMES})
- find_module("${CMAKE_CURRENT_LIST_DIR}/${PREFIX}/${module_name}/${module_name}-export.cmake")
- endforeach(module_name)
-endmacro()
-
-
-# Try install location
-set(MODULE_FOUND FALSE)
-find_modules("cmake")
-
-if(MODULE_FOUND)
- return()
-endif()
-
-# Try common build locations
-if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
- find_modules("build-debug/cmake")
- find_modules("build/cmake")
-else()
- find_modules("build/cmake")
- find_modules("build-debug/cmake")
-endif()
+include("${CMAKE_CURRENT_LIST_DIR}/globjects-export.cmake")
diff --git a/source/globjects/CMakeLists.txt b/source/globjects/CMakeLists.txt
index 86e315a..3d87d9a 100644
--- a/source/globjects/CMakeLists.txt
+++ b/source/globjects/CMakeLists.txt
@@ -434,6 +434,6 @@ install(DIRECTORY
# CMake config
install(EXPORT ${target}-export
NAMESPACE ${META_PROJECT_NAME}::
- DESTINATION ${INSTALL_CMAKE}/${target}
+ DESTINATION ${INSTALL_CMAKE}
COMPONENT dev
)
|