Closed panicgh closed 2 years ago
It would be nice for compatibility with pkg-config-based applications, if cppzmq generated a *.pc file like libzmq already does. For someone knowledgeable in CMake (not me) this is probably a trivial task.
Maybe this does the trick:
diff --git a/CMakeLists.txt b/CMakeLists.txt index 1fdf04a..0b49b34 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -87,6 +87,11 @@ write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Conf COMPATIBILITY AnyNewerVersion) set(CMAKE_SIZEOF_VOID_P ${CPPZMQ_SIZEOF_VOID_P}) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cppzmq.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/cppzmq.pc @ONLY) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cppzmq.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + install(EXPORT ${PROJECT_NAME}-targets FILE ${PROJECT_NAME}Targets.cmake DESTINATION ${CPPZMQ_CMAKECONFIG_INSTALL_DIR}) diff --git a/cppzmq.pc.in b/cppzmq.pc.in new file mode 100644 index 0000000..3dc945d --- /dev/null +++ b/cppzmq.pc.in @@ -0,0 +1,9 @@ +prefix="@CMAKE_INSTALL_PREFIX@" +includedir="@CMAKE_INSTALL_FULL_INCLUDEDIR@" + +Name: @PROJECT_NAME@ +Description: C++ binding for libzmq +URL: https://github.com/zeromq/cppzmq +Version: @PROJECT_VERSION@ +Requires: libzmq +Cflags: -I"${includedir}" @pkg_config_defines@ -- 2.31.1
related: #477
If cppzmq provided a pc-file, it would be possible to use the libzmq pc-file too and get the correct flags from there.
It would be nice for compatibility with pkg-config-based applications, if cppzmq generated a *.pc file like libzmq already does. For someone knowledgeable in CMake (not me) this is probably a trivial task.
Maybe this does the trick: