@@ -3,6 +3,10 @@ project(cppzmq)
33
44find_package (ZeroMQ REQUIRED)
55
6+ if (ZeroMQ_FOUND AND (NOT TARGET libzmq OR NOT TARGET libzmq-static ))
7+ message (FATAL_ERROR "ZeroMQ version not supported!" )
8+ endif ()
9+
610set (${PROJECT_NAME} _VERSION ${ZeroMQ_VERSION} )
711message (STATUS "cppzmq v${${PROJECT_NAME} _VERSION}" )
812
@@ -11,21 +15,40 @@ set(CPPZMQ_HEADERS
1115 zmq_addon.hpp
1216)
1317
18+ foreach (target cppzmq cppzmq-static )
19+ add_library (${target} INTERFACE )
20+ target_include_directories (${target} INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} >
21+ $<INSTALL_INTERFACE:include >)
22+ endforeach ()
23+
24+ target_link_libraries (cppzmq INTERFACE libzmq)
25+ target_link_libraries (cppzmq-static INTERFACE libzmq-static )
26+
1427include (GNUInstallDirs)
1528include (CMakePackageConfigHelpers)
1629
30+ install (TARGETS cppzmq cppzmq-static
31+ EXPORT ${PROJECT_NAME} -targets)
32+
1733install (FILES ${CPPZMQ_HEADERS}
1834 DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} )
1935
2036# GNUInstallDirs "DATADIR" wrong here; CMake search path wants "share".
2137set (CPPZMQ_CMAKECONFIG_INSTALL_DIR "share/cmake/${PROJECT_NAME} " CACHE STRING "install path for cppzmqConfig.cmake" )
2238
39+ if (NOT CMAKE_VERSION VERSION_LESS 3.0)
40+ export (EXPORT ${PROJECT_NAME} -targets
41+ FILE "${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} Targets.cmake" )
42+ endif ()
2343configure_package_config_file(${PROJECT_NAME} Config.cmake.in
2444 "${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} Config.cmake"
2545 INSTALL_DESTINATION ${CPPZMQ_CMAKECONFIG_INSTALL_DIR} )
2646write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} ConfigVersion.cmake
2747 VERSION ${${PROJECT_NAME} _VERSION}
2848 COMPATIBILITY AnyNewerVersion)
49+ install (EXPORT ${PROJECT_NAME} -targets
50+ FILE ${PROJECT_NAME} Targets.cmake
51+ DESTINATION ${CPPZMQ_CMAKECONFIG_INSTALL_DIR} )
2952install (FILES ${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} Config.cmake
3053 ${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} ConfigVersion.cmake
3154 DESTINATION ${CPPZMQ_CMAKECONFIG_INSTALL_DIR} )
0 commit comments