From b1471da5ac60520836ddea3462520e6edb18f99a Mon Sep 17 00:00:00 2001 From: Josh Blum Date: Tue, 11 Feb 2014 15:46:38 -0800 Subject: [PATCH] fix libzmq.pc generation under cmake The ${libdir} was getting replaced/removed by configure_file() making pkg-config give bad flags: -L -lzmq My fix was to add @ONLY to configure_file() so ${} style pkg-config substitutions are left alone. In addition, I put the other typical ${} substitutions back into the libzmq.pc, since its now safe. --- CMakeLists.txt | 2 +- src/libzmq.pc.cmake.in | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b93c1061..173e8987 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -428,7 +428,7 @@ endforeach() configure_file(${CMAKE_CURRENT_SOURCE_DIR}/builds/cmake/platform.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/platform.hpp) list(APPEND sources ${CMAKE_CURRENT_BINARY_DIR}/platform.hpp) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/libzmq.pc.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/libzmq.pc) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/libzmq.pc.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/libzmq.pc @ONLY) set(zmq-pkgconfig ${CMAKE_CURRENT_BINARY_DIR}/libzmq.pc) if(NOT ZMQ_BUILD_FRAMEWORK) diff --git a/src/libzmq.pc.cmake.in b/src/libzmq.pc.cmake.in index ac25909b..4f57939d 100644 --- a/src/libzmq.pc.cmake.in +++ b/src/libzmq.pc.cmake.in @@ -1,10 +1,10 @@ prefix=@CMAKE_INSTALL_PREFIX@ -exec_prefix=@CMAKE_INSTALL_PREFIX@ -libdir=@CMAKE_INSTALL_PREFIX@/lib -includedir=@CMAKE_INSTALL_PREFIX@/include +exec_prefix=${prefix} +libdir=${prefix}/lib +includedir=${prefix}/include Name: libzmq Description: 0MQ c++ library Version: @ZMQ_VERSION_MAJOR@.@ZMQ_VERSION_MINOR@.@ZMQ_VERSION_PATCH@ Libs: -L${libdir} -lzmq -Cflags: -I@CMAKE_INSTALL_PREFIX@/include +Cflags: -I${includedir}