From 8eb07601c4defcf9c36e853aa7b5669fd335c630 Mon Sep 17 00:00:00 2001
From: Marcel Loose <loose@astron.nl>
Date: Wed, 1 Feb 2017 17:08:43 +0000
Subject: [PATCH] Task #9533: Hijacking this ticket for committing a change to
 LofarMacros.cmake: added lofar_add_data_files() to install one or more data
 files into <prefix>/share.

---
 CMake/LofarMacros.cmake | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/CMake/LofarMacros.cmake b/CMake/LofarMacros.cmake
index e665906bcff..7995cc094c7 100644
--- a/CMake/LofarMacros.cmake
+++ b/CMake/LofarMacros.cmake
@@ -8,6 +8,7 @@
 #   lofar_add_sbin_program(name)
 #   lofar_add_sbin_scripts([name1 [name2 ..]])
 #   lofar_add_sysconf_files([name1 [name2 ..]])
+#   lofar_add_data_files([name1 [name2 ..]])
 #   lofar_add_test(name)
 #   lofar_create_target_symlink(target symlink)
 #   lofar_join_arguments(var)
@@ -196,6 +197,26 @@ if(NOT DEFINED LOFAR_MACROS_INCLUDED)
   endmacro(lofar_add_sysconf_files)
 
 
+  # --------------------------------------------------------------------------
+  # lofar_add_data_files([name1 [name2 ..]])
+  #
+  # Add system data files (architecture-independent data) that need to be
+  # installed into the <prefix>/share directory. Also create a symbolic link
+  # in <build-dir>/share to each of these files. The file names may contain
+  # a relative(!) path.
+  # --------------------------------------------------------------------------
+  macro(lofar_add_data_files)
+    foreach(_name ${ARGN})
+      get_filename_component(_path ${_name} PATH)
+      get_filename_component(_abs_name ${_name} ABSOLUTE)
+      file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/share/${_path})
+      execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
+        ${_abs_name} ${CMAKE_BINARY_DIR}/share/${_name})
+      install(FILES ${_name} DESTINATION share/${_path})
+    endforeach(_name ${ARGN})
+  endmacro(lofar_add_data_files)
+
+
   # --------------------------------------------------------------------------
   # lofar_add_test(name [source ...] [DEPENDS depend ...])
   #
-- 
GitLab