@@ -90,19 +90,22 @@ message(STATUS "=========================================================")
9090message (STATUS "" )
9191
9292# Generate config.h to enable and disable certain features within the source code.
93- set (PRISMS_PF_SOURCE_DIR ${CMAKE_SOURCE_DIR} )
93+ set (PRISMS_PF_INSTALL_DIR " ${CMAKE_INSTALL_PREFIX} " )
9494
9595if (ADDITIONAL_DEGREES)
9696 set (EXPAND_DEGREES "; 3; 4; 5; 6" )
9797endif ()
9898
9999configure_file (
100- ${CMAKE_SOURCE_DIR } /include/prismspf/config.h.in
101- ${CMAKE_BINARY_DIR } /include/prismspf/config.h
100+ ${CMAKE_CURRENT_SOURCE_DIR } /include/prismspf/config.h.in
101+ ${CMAKE_CURRENT_BINARY_DIR } /include/prismspf/config.h
102102)
103103
104104# Configure the template arguments file
105- configure_file (${CMAKE_SOURCE_DIR} /cmake/templates.in ${CMAKE_BINARY_DIR} /cmake/templates )
105+ configure_file (
106+ ${CMAKE_CURRENT_SOURCE_DIR} /cmake/templates.in
107+ ${CMAKE_CURRENT_BINARY_DIR} /cmake/templates
108+ )
106109
107110# Add the script files
108111add_subdirectory ("${CMAKE_SOURCE_DIR} /cmake/scripts" )
@@ -276,10 +279,9 @@ foreach(_build ${PRISMS_PF_BUILD_TYPES})
276279 target_include_directories (
277280 ${_library}
278281 PUBLIC
279- $<BUILD_INTERFACE :${CMAKE_CURRENT_SOURCE_DIR} /include >
280- $<INSTALL_INTERFACE :include /prisms_pf >
281- PRIVATE
282- ${CMAKE_BINARY_DIR} /src
282+ $<BUILD_INTERFACE :${CMAKE_SOURCE_DIR} /include >
283+ $<INSTALL_INTERFACE :include >
284+ PRIVATE ${CMAKE_SOURCE_DIR} /src
283285 )
284286
285287 target_compile_options (
@@ -337,14 +339,36 @@ install(
337339
338340# Install the headers
339341install (
340- DIRECTORY
341- ${CMAKE_CURRENT_SOURCE_DIR} /include/
342- DESTINATION include/prisms_pf
342+ DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} /include/
343+ DESTINATION include
343344 FILES_MATCHING
344345 PATTERN "*.h"
345346 PATTERN "*.hpp"
346347)
347348
349+ # Install the generated config.h
350+ install (
351+ FILES ${CMAKE_CURRENT_BINARY_DIR} /include/prismspf/config.h
352+ DESTINATION include/prismspf
353+ )
354+
355+ # Install the cmake folder
356+ install (
357+ DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} /cmake/
358+ DESTINATION ${CMAKE_INSTALL_LIBDIR} /cmake/prisms_pf
359+ FILES_MATCHING
360+ PATTERN "*.cmake"
361+ PATTERN "*.cc"
362+ PATTERN "CMakeLists.txt"
363+ PATTERN "*.cmake.in" EXCLUDE
364+ )
365+
366+ # Install the generated Config file
367+ install (
368+ FILES ${CMAKE_CURRENT_BINARY_DIR} /cmake/prisms_pf-config.cmake
369+ DESTINATION ${CMAKE_INSTALL_LIBDIR} /cmake/prisms_pf
370+ )
371+
348372# Install the CMake config files
349373install (
350374 EXPORT prisms_pf-targets
@@ -353,9 +377,21 @@ install(
353377 DESTINATION ${CMAKE_INSTALL_LIBDIR} /cmake/prisms_pf
354378)
355379
380+ # Install the VERSION file
381+ install (
382+ FILES ${CMAKE_CURRENT_SOURCE_DIR} /VERSION
383+ DESTINATION .
384+ )
385+
386+ # Install the LICENSE file
387+ install (
388+ FILES ${CMAKE_CURRENT_SOURCE_DIR} /LICENSE
389+ DESTINATION .
390+ )
391+
392+ # Install the cmake/template file
356393install (
357- FILES
358- ${CMAKE_BINARY_DIR} /cmake/prisms_pf-config.cmake
394+ FILES "${CMAKE_CURRENT_BINARY_DIR} /cmake/templates"
359395 DESTINATION ${CMAKE_INSTALL_LIBDIR} /cmake/prisms_pf
360396)
361397
@@ -404,9 +440,9 @@ include(${CMAKE_SOURCE_DIR}/cmake/write_config.cmake)
404440# Generate configuration file for applications
405441include (CMakePackageConfigHelpers )
406442configure_package_config_file (
407- ${CMAKE_SOURCE_DIR } /cmake/prisms_pf-config.cmake.in
408- ${CMAKE_BINARY_DIR } /cmake/prisms_pf-config.cmake
409- INSTALL_DESTINATION ${CMAKE_BINARY_DIR } /cmake
443+ ${CMAKE_CURRENT_SOURCE_DIR } /cmake/prisms_pf-config.cmake.in
444+ ${CMAKE_CURRENT_BINARY_DIR } /cmake/prisms_pf-config.cmake
445+ INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR } /cmake/prisms_pf
410446)
411447
412448# Unwrap the compiler compile_commands.json after the build
0 commit comments