From 03c2c4f9e35c5fa28219a17c8a59e124283446f1 Mon Sep 17 00:00:00 2001
From: pdigiglio
Date: Wed, 12 Oct 2016 14:21:25 +0200
Subject: [PATCH 1/4] [install] rule for header directory
---
CMakeLists.txt | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 992afc0d..7f75ebf0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -52,3 +52,13 @@ add_subdirectory(test)
# Examples are not part of the `all` target.
# This will provide an `example` target.
add_subdirectory(examples)
+
+# Install rule for the header directory
+# CMAKE_INSTALL_PREFIX defaults to:
+# * /usr/local on UNIX-like systems
+# * C:\Program Files on Windows
+install(DIRECTORY ${YAP_SOURCE_DIR}/include/
+ DESTINATION include/YAP
+ FILES_MATCHING PATTERN "*.h"
+ PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+
From 70b213e1924190e21b4ccd7ccb3bdf2e84dc332c Mon Sep 17 00:00:00 2001
From: pdigiglio
Date: Wed, 12 Oct 2016 14:21:46 +0200
Subject: [PATCH 2/4] [install] rule for libYAP.so
---
src/CMakeLists.txt | 28 ++++++----------------------
1 file changed, 6 insertions(+), 22 deletions(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 1a90176b..44055d52 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -52,25 +52,9 @@ set(YAP_SOURCES
add_library(YAP SHARED ${YAP_SOURCES})
-# install destinations can be passed via the command line:
-# cmake -DLIBRARY_OUTPUT_DIRECTORY:PATH=
-# otherwise, default LD_LIBRARY_PATH
-if(NOT DEFINED LIBRARY_OUTPUT_DIRECTORY)
- set(LIBRARY_OUTPUT_DIRECTORY ${YAP_SOURCE_DIR}/lib/${CMAKE_BUILD_TYPE})
-endif()
-
-if(NOT DEFINED INCLUDE_OUTPUT_DIRECTORY)
- set(INCLUDE_OUTPUT_DIRECTORY ${YAP_SOURCE_DIR}/include/YAP)
-endif()
-
-install(TARGETS YAP LIBRARY DESTINATION ${LIBRARY_OUTPUT_DIRECTORY})
-
-# Matches all the headers in ${YAPDID}/include and its subdirs
-file(GLOB_RECURSE
- INSTALL_INCLUDES ${YAP_SOURCE_DIR}/include/*.h)
-
-#message(STATUS "${INSTALL_INCLUDES}")
-
-#install(FILE ${INSTALL_INCLUDES}
-# DESTINATION ${INCLUDE_OUTPUT_DIRECTORY}
-# )
+# Install rule for libYAP.so
+install(TARGETS YAP LIBRARY
+ DESTINATION lib/
+ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
+ GROUP_READ GROUP_EXECUTE
+ WORLD_READ WORLD_EXECUTE)
From 9eb6cfd851168f84bf3cac94725e4e516844c25d Mon Sep 17 00:00:00 2001
From: pdigiglio
Date: Wed, 12 Oct 2016 15:45:13 +0200
Subject: [PATCH 3/4] [install] rule for the data/ directory
---
CMakeLists.txt | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7f75ebf0..8712760e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -62,3 +62,8 @@ install(DIRECTORY ${YAP_SOURCE_DIR}/include/
FILES_MATCHING PATTERN "*.h"
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+# Install rule for the data directory
+install(DIRECTORY ${YAP_SOURCE_DIR}/data/
+ DESTINATION data
+ FILES_MATCHING PATTERN "*.pdl"
+ PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
From 27576e6426056f3049a04f1df77f70fc22ad0e3d Mon Sep 17 00:00:00 2001
From: pdigiglio
Date: Thu, 13 Oct 2016 12:51:30 +0200
Subject: [PATCH 4/4] [install] add install-core & install-data
---
CMakeLists.txt | 8 ++++++++
src/CMakeLists.txt | 1 +
2 files changed, 9 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8712760e..579fb2d7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -58,12 +58,20 @@ add_subdirectory(examples)
# * /usr/local on UNIX-like systems
# * C:\Program Files on Windows
install(DIRECTORY ${YAP_SOURCE_DIR}/include/
+ COMPONENT core
DESTINATION include/YAP
FILES_MATCHING PATTERN "*.h"
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+add_custom_target(install-core
+ COMMAND ${CMAKE_COMMAND} -DCMAKE_INSTALL_COMPONENT="core" -P cmake_install.cmake)
+
# Install rule for the data directory
install(DIRECTORY ${YAP_SOURCE_DIR}/data/
+ COMPONENT data
DESTINATION data
FILES_MATCHING PATTERN "*.pdl"
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+
+add_custom_target(install-data
+ COMMAND ${CMAKE_COMMAND} -DCMAKE_INSTALL_COMPONENT="data" -P cmake_install.cmake)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 44055d52..f401d712 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -54,6 +54,7 @@ add_library(YAP SHARED ${YAP_SOURCES})
# Install rule for libYAP.so
install(TARGETS YAP LIBRARY
+ COMPONENT core
DESTINATION lib/
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
GROUP_READ GROUP_EXECUTE