@@ -5,7 +5,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
55set (CMAKE_CXX_EXTENSIONS OFF )
66
77project (slick-socket
8- VERSION 1.0.4
8+ VERSION 1.0.5
99 LANGUAGES C CXX
1010)
1111
@@ -120,12 +120,64 @@ if(BUILD_SLICK_SOCKET_TESTING)
120120 add_subdirectory (tests )
121121endif ()
122122
123+ # Install headers
123124install (DIRECTORY include/ DESTINATION include)
125+
126+ # Install library targets
124127if (WIN32 )
125128 if (BUILD_SLICK_SOCKET_STATIC_LIBS)
126- install (DIRECTORY ${CMAKE_BINARY_DIR} /lib/${CMAKE_BUILD_TYPE} / DESTINATION lib)
129+ install (TARGETS slick-socket
130+ EXPORT slick-socketTargets
131+ ARCHIVE DESTINATION lib
132+ LIBRARY DESTINATION lib
133+ RUNTIME DESTINATION bin
134+ )
127135 endif ()
128136 if (BUILD_SLICK_SOCKET_SHARED_LIBS)
129- install (DIRECTORY ${CMAKE_BINARY_DIR} /bin/${CMAKE_BUILD_TYPE} / DESTINATION bin)
137+ install (TARGETS slick-socket-shared
138+ EXPORT slick-socketTargets
139+ ARCHIVE DESTINATION lib
140+ LIBRARY DESTINATION lib
141+ RUNTIME DESTINATION bin
142+ )
130143 endif ()
144+ else ()
145+ install (TARGETS slick-socket
146+ EXPORT slick-socketTargets
147+ ARCHIVE DESTINATION lib
148+ LIBRARY DESTINATION lib
149+ )
131150endif ()
151+
152+ # Install CMake package configuration files
153+ include (CMakePackageConfigHelpers )
154+
155+ # Generate the config file from template
156+ configure_package_config_file (
157+ ${CMAKE_CURRENT_SOURCE_DIR} /cmake/slick-socketConfig.cmake.in
158+ ${CMAKE_CURRENT_BINARY_DIR} /slick-socketConfig.cmake
159+ INSTALL_DESTINATION lib/cmake/slick-socket
160+ )
161+
162+ # Generate version file
163+ write_basic_package_version_file (
164+ ${CMAKE_CURRENT_BINARY_DIR} /slick-socketConfigVersion.cmake
165+ VERSION ${PROJECT_VERSION}
166+ COMPATIBILITY SameMajorVersion
167+ )
168+
169+ # Install the config and version files
170+ install (FILES
171+ ${CMAKE_CURRENT_BINARY_DIR} /slick-socketConfig.cmake
172+ ${CMAKE_CURRENT_BINARY_DIR} /slick-socketConfigVersion.cmake
173+ DESTINATION lib/cmake/slick-socket
174+ )
175+
176+ # Install the targets file
177+ install (EXPORT slick-socketTargets
178+ FILE slick-socketTargets.cmake
179+ NAMESPACE slick::
180+ DESTINATION lib/cmake/slick-socket
181+ )
182+
183+ message (STATUS "${PROJECT_NAME} : ${PROJECT_VERSION} " )
0 commit comments