11cmake_minimum_required (VERSION 3.16 )
22
3- project (stdcorelib-plugin VERSION 0.1.0.0 LANGUAGES CXX )
3+ project (stdcorelib-plugin
4+ VERSION 0.1.0.0
5+ LANGUAGES CXX
6+ DESCRIPTION "Plugin management module"
7+ HOMEPAGE_URL "https://github.com/stdware/stdcorelib.plugin"
8+ )
49
510# ----------------------------------
611# Build Options
@@ -65,6 +70,7 @@ include(cmake/AddPluginMetadata.cmake)
6570
6671file (GLOB _src src/plugin/*.cpp )
6772list (FILTER _src EXCLUDE REGEX "pluginloader_(win|linux|mac)\\ .cpp$" )
73+
6874if (WIN32 )
6975 list (APPEND _src src/plugin/pluginloader_win.cpp)
7076elseif (APPLE )
@@ -126,8 +132,7 @@ set_target_properties(${PROJECT_NAME} PROPERTIES
126132# Add platform specific
127133if (WIN32 )
128134 stdc_add_win_rc (${PROJECT_NAME }
129- DESCRIPTION "C++ Plugin Framework"
130- COPYRIGHT "Copyright (C) 2025-present Stdware Collections"
135+ COPYRIGHT "Copyright (C) 2022-present Stdware Collections"
131136 )
132137endif ()
133138
@@ -151,46 +156,23 @@ if(STDC_PLUGIN_INSTALL)
151156
152157 set (_install_dir ${CMAKE_INSTALL_LIBDIR} /cmake/${STDC_PLUGIN_INSTALL_NAME} )
153158
154- # Add version file
155- write_basic_package_version_file (
156- "${CMAKE_CURRENT_BINARY_DIR } /${STDC_PLUGIN_INSTALL_NAME} ConfigVersion.cmake"
159+ stdc_add_install_rule (
160+ NAME ${STDC_PLUGIN_INSTALL_NAME}
157161 VERSION ${PROJECT_VERSION }
158162 COMPATIBILITY SameMajorVersion
163+ INSTALL_DIR ${_install_dir}
164+ CONFIG_TEMPLATE ${CMAKE_CURRENT_LIST_DIR } /${STDC_PLUGIN_INSTALL_NAME}Config.cmake.in
165+ NAMESPACE stdcorelib::
166+ EXPORT ${STDC_PLUGIN_INSTALL_NAME} Targets
167+ WRITE_CONFIG_OPTIONS NO_CHECK_REQUIRED_COMPONENTS_MACRO
159168 )
160169
161- # Add configuration file
162- configure_package_config_file (
163- ${CMAKE_CURRENT_LIST_DIR } /${STDC_PLUGIN_INSTALL_NAME}Config.cmake.in
164- "${CMAKE_CURRENT_BINARY_DIR } /${STDC_PLUGIN_INSTALL_NAME} Config.cmake"
165- INSTALL_DESTINATION ${_install_dir}
166- NO_CHECK_REQUIRED_COMPONENTS_MACRO
167- )
168-
169- # Install cmake files
170- install (FILES
171- "${CMAKE_CURRENT_BINARY_DIR } /${STDC_PLUGIN_INSTALL_NAME} Config.cmake"
172- "${CMAKE_CURRENT_BINARY_DIR } /${STDC_PLUGIN_INSTALL_NAME} ConfigVersion.cmake"
173- DESTINATION ${_install_dir}
174- )
175170 install (DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR } /cmake"
176171 DESTINATION ${_install_dir}
177172 )
178173
179- # Install cmake targets files
180- install (EXPORT ${STDC_PLUGIN_INSTALL_NAME} Targets
181- FILE "${STDC_PLUGIN_INSTALL_NAME} Targets.cmake"
182- NAMESPACE stdcorelib::
183- DESTINATION ${_install_dir}
184- )
185-
186174 install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR } /include/
187175 DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
188176 FILES_MATCHING PATTERN "*.h"
189177 )
190-
191- # Under the project's own name, so that a prefix holding more than one project keeps them
192- # apart.
193- install (FILES ${CMAKE_CURRENT_SOURCE_DIR } /LICENSE
194- DESTINATION ${CMAKE_INSTALL_DATADIR} /${STDC_PLUGIN_INSTALL_NAME}
195- )
196178endif ()
0 commit comments