OpenMiInk/third_party/krita-deps-management/ext_mypaint/0003-cmake-library-versioning-info-for-CMake-itself.patch
Hellings b8c8ff98e2 Hi
2026-10-16 09:05:56 -04:00

73 lines
2.6 KiB
Diff

From e017770d9b2ec81fe059139942a2f477e8eeeec8 Mon Sep 17 00:00:00 2001
From: "L. E. Segovia" <amy@amyspark.me>
Date: Tue, 17 Nov 2020 22:57:09 +0000
Subject: [PATCH 3/6] cmake: library versioning info for CMake itself
---
CMakeLists.txt | 20 +++++++++++++++++++-
libmypaint-config.cmake.in | 11 +++++++++++
2 files changed, 30 insertions(+), 1 deletion(-)
create mode 100644 libmypaint-config.cmake.in
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f96da7f..ea6071b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,6 +10,7 @@ LIST (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}")
find_package(ECM 5.22 REQUIRED NOMODULE)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(CMakePackageConfigHelpers)
+include(KDEInstallDirs)
find_package(JsonC)
@@ -63,7 +64,12 @@ set(mypaint_HEADERS
add_library(mypaint SHARED ${mypaint_SOURCES} ${mypaint_HEADERS})
target_link_libraries(mypaint PRIVATE ${JSONC_LIBRARIES})
set_property(TARGET mypaint PROPERTY C_STANDARD 11)
-install(TARGETS mypaint RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
+install(TARGETS mypaint
+ EXPORT libmypaintTargets
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
install(FILES ${mypaint_HEADERS} DESTINATION include)
if(JsonC_FOUND)
@@ -74,3 +80,15 @@ endif()
configure_file("libmypaint.pc.in" "libmypaint.pc" @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libmypaint.pc"
DESTINATION lib/pkgconfig)
+
+configure_package_config_file(
+ "libmypaint-config.cmake.in" "libmypaint-config.cmake"
+ INSTALL_DESTINATION lib/cmake/libmypaint
+ PATH_VARS CMAKE_INSTALL_PREFIX CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_INCLUDEDIR)
+write_basic_package_version_file(libmypaint-config-version.cmake
+ COMPATIBILITY SameMinorVersion)
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libmypaint-config-version.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/libmypaint-config.cmake"
+ DESTINATION lib/cmake/libmypaint)
+
+install(EXPORT libmypaintTargets DESTINATION lib/cmake/libmypaint)
diff --git a/libmypaint-config.cmake.in b/libmypaint-config.cmake.in
new file mode 100644
index 0000000..752d388
--- /dev/null
+++ b/libmypaint-config.cmake.in
@@ -0,0 +1,11 @@
+@PACKAGE_INIT@
+
+set(libmypaint_VERSION @libmypaint_VERSION@)
+
+set_and_check(libmypaint_DIR @PACKAGE_CMAKE_INSTALL_PREFIX@)
+set_and_check(libmypaint_LIBRARY_DIRS @PACKAGE_CMAKE_INSTALL_LIBDIR@)
+set_and_check(libmypaint_INCLUDE_DIRS @PACKAGE_CMAKE_INSTALL_INCLUDEDIR@)
+
+include("${CMAKE_CURRENT_LIST_DIR}/libmypaintTargets.cmake")
+
+set(libmypaint_FOUND TRUE)
--
2.54.0