aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/rtlsdr/library-linkage.diff
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/rtlsdr/library-linkage.diff
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/rtlsdr/library-linkage.diff')
-rw-r--r--vcpkg/ports/rtlsdr/library-linkage.diff100
1 files changed, 100 insertions, 0 deletions
diff --git a/vcpkg/ports/rtlsdr/library-linkage.diff b/vcpkg/ports/rtlsdr/library-linkage.diff
new file mode 100644
index 0000000..79fd14d
--- /dev/null
+++ b/vcpkg/ports/rtlsdr/library-linkage.diff
@@ -0,0 +1,100 @@
+diff --git a/librtlsdr.pc.in b/librtlsdr.pc.in
+index 92bbddf..20a2735 100644
+--- a/librtlsdr.pc.in
++++ b/librtlsdr.pc.in
+@@ -7,6 +7,7 @@ Name: RTL-SDR Library
+ Description: C Utility Library
+ Version: @VERSION@
+ Cflags: -I${includedir}/
++Cflags.private: -Drtlsdr_STATIC
+ Libs: -L${libdir} -lrtlsdr
+ Libs.private: @RTLSDR_PC_LIBS@
+ Requires.private: libusb-1.0
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 3c02e6c..e6585ee 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -45,12 +45,11 @@ target_include_directories(rtlsdr_static PUBLIC
+ ${LIBUSB_INCLUDE_DIRS}
+ ${THREADS_PTHREADS_INCLUDE_DIR}
+ )
+-set_property(TARGET rtlsdr_static APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
++target_compile_definitions(rtlsdr_static PUBLIC "rtlsdr_STATIC")
+ if(NOT WIN32)
+ # Force same library filename for static and shared variants of the library
+ set_target_properties(rtlsdr_static PROPERTIES OUTPUT_NAME rtlsdr)
+ endif()
+-generate_export_header(rtlsdr_static)
+
+ ########################################################################
+ # Set up Windows DLL resource files
+@@ -66,6 +65,14 @@ IF(MSVC)
+ target_sources(rtlsdr_static PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/rtlsdr.rc)
+ ENDIF(MSVC)
+
++if(BUILD_SHARED_LIBS)
++ set(rtlsdr_target rtlsdr)
++ set_target_properties(rtlsdr_static PROPERTIES EXCLUDE_FROM_ALL 1)
++else()
++ set(rtlsdr_target rtlsdr_static)
++ set_target_properties(rtlsdr PROPERTIES EXCLUDE_FROM_ALL 1)
++endif()
++
+ ########################################################################
+ # Setup libraries used in executables
+ ########################################################################
+@@ -79,7 +86,7 @@ add_library(libgetopt_static STATIC
+ getopt/getopt.c
+ )
+ target_link_libraries(convenience_static
+- rtlsdr
++ ${rtlsdr_target}
+ )
+ endif()
+
+@@ -96,6 +103,10 @@ add_executable(rtl_power rtl_power.c)
+ add_executable(rtl_biast rtl_biast.c)
+ set(INSTALL_TARGETS rtlsdr rtlsdr_static rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast)
+
++foreach(executable IN ITEMS rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast)
++ target_link_libraries(${executable} convenience_static ${rtlsdr_target} ${THREADS_PTHREADS_LIBRARY})
++endforeach()
++if(0)
+ target_link_libraries(rtl_sdr rtlsdr convenience_static
+ ${LIBUSB_LIBRARIES}
+ ${CMAKE_THREAD_LIBS_INIT}
+@@ -128,6 +139,7 @@ target_link_libraries(rtl_biast rtlsdr convenience_static
+ ${LIBUSB_LIBRARIES}
+ ${CMAKE_THREAD_LIBS_INIT}
+ )
++endif(0)
+ if(UNIX)
+ target_link_libraries(rtl_fm m)
+ target_link_libraries(rtl_adsb m)
+@@ -148,6 +160,7 @@ target_link_libraries(rtl_eeprom libgetopt_static)
+ target_link_libraries(rtl_adsb libgetopt_static)
+ target_link_libraries(rtl_power libgetopt_static)
+ target_link_libraries(rtl_biast libgetopt_static)
++if(0)
+ set_property(TARGET rtl_sdr APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
+ set_property(TARGET rtl_tcp APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
+ set_property(TARGET rtl_test APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
+@@ -156,16 +169,12 @@ set_property(TARGET rtl_eeprom APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATI
+ set_property(TARGET rtl_adsb APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
+ set_property(TARGET rtl_power APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
+ set_property(TARGET rtl_biast APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" )
++endif(0)
+ endif()
+ ########################################################################
+ # Install built library files & utilities
+ ########################################################################
+-install(TARGETS rtlsdr EXPORT RTLSDR-export
+- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib file
+- )
+-install(TARGETS rtlsdr_static EXPORT RTLSDR-export
+- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib file
+- )
++install(TARGETS ${rtlsdr_target} EXPORT RTLSDR-export)
+ install(TARGETS rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
+ )