From 5371f206f348346925e28edd177b429bee1da89c Mon Sep 17 00:00:00 2001 From: Dimitri Stolnikov Date: Sat, 12 May 2012 12:34:21 +0200 Subject: [PATCH] install pkg-config file when building with cmake --- CMakeLists.txt | 36 ++++++++++++++++++++++++++++++++++++ librtlsdr.pc.in | 3 ++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b358c2d..2f735c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -92,3 +92,39 @@ add_custom_target(uninstall ######################################################################## add_subdirectory(include) add_subdirectory(src) + +######################################################################## +# Create Pkg Config File +######################################################################## +FOREACH(inc ${LIBUSB_INCLUDE_DIR}) + LIST(APPEND RTLSDR_PC_CFLAGS "-I${inc}") +ENDFOREACH(inc) + +FOREACH(lib ${LIBUSB_LIBRARY_DIRS}) + LIST(APPEND RTLSDR_PC_LIBS "-L${lib}") +ENDFOREACH(lib) + +# use space-separation format for the pc file +STRING(REPLACE ";" " " RTLSDR_PC_CFLAGS "${RTLSDR_PC_CFLAGS}") +STRING(REPLACE ";" " " RTLSDR_PC_LIBS "${RTLSDR_PC_LIBS}") + +# unset these vars to avoid hard-coded paths to cross environment +IF(CMAKE_CROSSCOMPILING) + UNSET(RTLSDR_PC_CFLAGS) + UNSET(RTLSDR_PC_LIBS) +ENDIF(CMAKE_CROSSCOMPILING) + +set(prefix ${CMAKE_INSTALL_PREFIX}) +set(exec_prefix \${prefix}) +set(libdir \${exec_prefix}/lib) +set(includedir \${prefix}/include) + +CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/librtlsdr.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/librtlsdr.pc +@ONLY) + +INSTALL( + FILES ${CMAKE_CURRENT_BINARY_DIR}/librtlsdr.pc + DESTINATION lib/pkgconfig +) diff --git a/librtlsdr.pc.in b/librtlsdr.pc.in index bd77e1b..5e55049 100644 --- a/librtlsdr.pc.in +++ b/librtlsdr.pc.in @@ -6,5 +6,6 @@ includedir=@includedir@ Name: RTL-SDR Library Description: C Utility Library Version: @VERSION@ +Cflags: -I${includedir}/ @RTLSDR_PC_CFLAGS@ Libs: -L${libdir} -lrtlsdr -lusb-1.0 -Cflags: -I${includedir}/ +Libs.private: @RTLSDR_PC_LIBS@