aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorDimitri Stolnikov <horiz0n@gmx.net>2012-05-12 12:34:21 +0200
committerDimitri Stolnikov <horiz0n@gmx.net>2012-05-12 12:34:21 +0200
commit5371f206f348346925e28edd177b429bee1da89c (patch)
treee782c2bc0229cfec0b93837f7e81b11e466f1a77 /CMakeLists.txt
parent2ed8375f39a952f28f1c3f66933ad5eb2774da9b (diff)
install pkg-config file when building with cmake
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt36
1 files changed, 36 insertions, 0 deletions
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
+)