From ca6e7a0d552e3b54c0833658409e34f9de3bead6 Mon Sep 17 00:00:00 2001 From: "Christoph J. Thompson" Date: Sun, 11 Mar 2012 10:17:16 +0100 Subject: [PATCH] Generate and install the pkg-config file with cmake. --- CMakeLists.txt | 10 ++++++++-- INDEX | 1 + zlib.pc.cmakein | 13 +++++++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 zlib.pc.cmakein diff --git a/CMakeLists.txt b/CMakeLists.txt index 7d1537c..26bb1d4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,6 +7,7 @@ set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation direc set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries") set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers") set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") +set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files") if(NOT DEFINED BUILD_SHARED_LIBS) option(BUILD_SHARED_LIBS "Build a shared library form of zlib" ON) @@ -75,8 +76,10 @@ if(NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR) endif() endif() -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein - ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY) +configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zlib.pc.cmakein + ${CMAKE_CURRENT_BINARY_DIR}/zlib.pc @ONLY) +configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein + ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY) include_directories(${CMAKE_CURRENT_BINARY_DIR}) @@ -180,6 +183,9 @@ endif() if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) install(FILES zlib.3 DESTINATION "${INSTALL_MAN_DIR}/man3") endif() +if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) + install(FILES zlib.pc DESTINATION "${INSTALL_PKGCONFIG_DIR}") +endif() #============================================================================ # Example binaries diff --git a/INDEX b/INDEX index 246f5f4..2ba0641 100644 --- a/INDEX +++ b/INDEX @@ -17,6 +17,7 @@ zlib.3 Man page for zlib zlib.3.pdf Man page in PDF format zlib.map Linux symbol information zlib.pc.in Template for pkg-config descriptor +zlib.pc.cmakein zlib.pc template for cmake zlib2ansi perl script to convert source files for C++ compilation amiga/ makefiles for Amiga SAS C diff --git a/zlib.pc.cmakein b/zlib.pc.cmakein new file mode 100644 index 0000000..a5e6429 --- /dev/null +++ b/zlib.pc.cmakein @@ -0,0 +1,13 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=@CMAKE_INSTALL_PREFIX@ +libdir=@INSTALL_LIB_DIR@ +sharedlibdir=@INSTALL_LIB_DIR@ +includedir=@INSTALL_INC_DIR@ + +Name: zlib +Description: zlib compression library +Version: @VERSION@ + +Requires: +Libs: -L${libdir} -L${sharedlibdir} -lz +Cflags: -I${includedir}