1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
From 3e6942b6a86c4d83e9a0e1a2a18031f38f3c7cc3 Mon Sep 17 00:00:00 2001
From: "A. Maitland Bottoms" <bottoms@debian.org>
Date: Sat, 22 Feb 2020 18:23:14 -0500
Subject: [PATCH 3/3] restore pkg-config support
---
CMakeLists.txt | 36 ++++++++++++++++++++++++++++++++++++
gnuradio-osmosdr.pc.in | 15 +++++++++++++++
2 files changed, 51 insertions(+)
create mode 100644 gnuradio-osmosdr.pc.in
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -262,6 +262,42 @@
add_subdirectory(docs)
########################################################################
+# Create Pkg Config File
+########################################################################
+FOREACH(inc ${Boost_INCLUDE_DIRS})
+ LIST(APPEND GR_OSMOSDR_PC_CFLAGS "-I${inc}")
+ENDFOREACH(inc)
+
+FOREACH(lib ${Boost_LIBRARY_DIRS})
+ LIST(APPEND GR_OSMOSDR_PC_LIBS "-L${lib}")
+ENDFOREACH(lib)
+
+# use space-separation format for the pc file
+STRING(REPLACE ";" " " GR_OSMOSDR_PC_REQUIRES "${GR_OSMOSDR_PC_REQUIRES}")
+STRING(REPLACE ";" " " GR_OSMOSDR_PC_CFLAGS "${GR_OSMOSDR_PC_CFLAGS}")
+STRING(REPLACE ";" " " GR_OSMOSDR_PC_LIBS "${GR_OSMOSDR_PC_LIBS}")
+
+# unset these vars to avoid hard-coded paths to cross environment
+IF(CMAKE_CROSSCOMPILING)
+ UNSET(GR_OSMOSDR_PC_CFLAGS)
+ UNSET(GR_OSMOSDR_PC_LIBS)
+ENDIF(CMAKE_CROSSCOMPILING)
+
+# fake gnuradio cpack behavior as long as we don't use it directly
+set(CPACK_PACKAGE_NAME "gnuradio-osmosdr")
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "GNU Radio block for various radio hardware")
+set(CPACK_PACKAGE_VERSION ${VERSION})
+
+CONFIGURE_FILE(
+ ${CMAKE_CURRENT_SOURCE_DIR}/gnuradio-osmosdr.pc.in
+ ${CMAKE_CURRENT_BINARY_DIR}/gnuradio-osmosdr.pc
+ @ONLY)
+
+INSTALL(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/gnuradio-osmosdr.pc
+ DESTINATION ${GR_LIBRARY_DIR}/pkgconfig)
+
+########################################################################
# Print Summary
########################################################################
GR_PRINT_COMPONENT_SUMMARY()
--- /dev/null
+++ b/gnuradio-osmosdr.pc.in
@@ -0,0 +1,15 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@GR_LIBRARY_DIR@
+includedir=${prefix}/@GR_INCLUDE_DIR@
+
+Name: @CPACK_PACKAGE_NAME@
+Description: @CPACK_PACKAGE_DESCRIPTION_SUMMARY@
+URL: http://sdr.osmocom.org/trac/wiki/GrOsmoSDR
+Version: @CPACK_PACKAGE_VERSION@
+Requires: gnuradio-runtime gnuradio-blocks
+Requires.private: @GR_OSMOSDR_PC_REQUIRES@
+Conflicts:
+Cflags: -I${includedir} @GR_OSMOSDR_PC_CFLAGS@
+Libs: -L${libdir} -lgnuradio-osmosdr
+Libs.private: @GR_OSMOSDR_PC_LIBS@
|