From 41a19a3b4605668991ff9cc18f635016d83c47b8 Mon Sep 17 00:00:00 2001
From: Martin Killenberg <martin.killenberg@desy.de>
Date: Tue, 16 Feb 2021 15:57:58 +0100
Subject: [PATCH] added support for pkgconfig

---
 cmake/PROJECT_NAME.pc.in.in           | 5 +++++
 cmake/create_cmake_config_files.cmake | 9 ++++++++-
 2 files changed, 13 insertions(+), 1 deletion(-)
 create mode 100644 cmake/PROJECT_NAME.pc.in.in

diff --git a/cmake/PROJECT_NAME.pc.in.in b/cmake/PROJECT_NAME.pc.in.in
new file mode 100644
index 0000000..b9ef4cf
--- /dev/null
+++ b/cmake/PROJECT_NAME.pc.in.in
@@ -0,0 +1,5 @@
+Name: @PROJECT_NAME@
+Description: Config for @PROJECT_NAME@
+Version: @@PROJECT_NAME@_SOVERSION@
+Cflags: @@PROJECT_NAME@_CXX_FLAGS_MAKEFILE@
+Libs: @@PROJECT_NAME@_LINKER_FLAGS_MAKEFILE@
diff --git a/cmake/create_cmake_config_files.cmake b/cmake/create_cmake_config_files.cmake
index 44b5a9e..6924fac 100644
--- a/cmake/create_cmake_config_files.cmake
+++ b/cmake/create_cmake_config_files.cmake
@@ -27,7 +27,7 @@
 #
 #######################################################################################################################
 
-# create variables for standard makefiles
+# create variables for standard makefiles and pkgconfig
 set(${PROJECT_NAME}_CXX_FLAGS_MAKEFILE "${${PROJECT_NAME}_CXX_FLAGS}")
 
 string(REPLACE " " ";" LIST "${${PROJECT_NAME}_INCLUDE_DIRS}")
@@ -79,6 +79,11 @@ configure_file(${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}ConfigVersion.cmake.in
 configure_file(cmake/PROJECT_NAME-config.in.in "${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}-config.in" @ONLY)
 configure_file(${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}-config.in "${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config" @ONLY)
 
+# create the pkgconfig file
+configure_file(cmake/PROJECT_NAME.pc.in.in "${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}.pc.in" @ONLY)
+configure_file(${PROJECT_BINARY_DIR}/cmake/${PROJECT_NAME}.pc.in "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.pc" @ONLY)
+
+
 # install cmake find_package configuration file
 install(FILES "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
   DESTINATION lib/cmake/${PROJECT_NAME} COMPONENT dev)
@@ -92,3 +97,5 @@ install(FILES "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
 # install script for Makefiles
 install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config DESTINATION bin COMPONENT dev)
 
+# install configuration file for pkgconfig
+install(FILES "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.pc" DESTINATION share/pkgconfig COMPONENT dev)
-- 
GitLab