kumquat-buildroot/package/librtlsdr/0001-disable_shared_library_target_in_build.patch

131 lines
5.2 KiB
Diff
Raw Normal View History

package/librtlsdr: bump to more recent upstream master version Since 948666dfde1e0a5d149442f80facc162a83016ad, librtlsdr in Buildroot is no longer built from an official release, but from a commit on the master branch. However, the commit that was referenced has a broken pkgconfig file templating, such that other packages using `pkgconfig --libs librtlsdr` as part of their build process (such as dump1090) could not be built anymore: Before 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: RTL-SDR Library Description: C Utility Library Version: 0.6.0 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr -lusb-1.0 Libs.private: On 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix= exec_prefix= libdir= includedir= Name: RTL-SDR Library Description: C Utility Library Version: 7082 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr Libs.private: -lusb-1.0 In the meantime, upstream released a bugfix for that ([1]), so we bump to that commit as well, and update the only patch for shared libs accordingly, because upstream also added a new tool called `rtl_biast` in the meantime. Finaly, we update the hash file to the two-spaces convention. Fixes: http://autobuild.buildroot.net/results/b4c/b4cdcb59cc61c51c024197a64865ad4b60023d0c/ [1]: https://github.com/steve-m/librtlsdr/commit/ed0317e6a58c098874ac58b769cf2e609c18d9a5 Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu> Tested-by: Heiko Thiery <heiko.thiery@gmail.com> Tested-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-09 11:35:38 +02:00
From 9a1c2587d4ef18e2026811deabd024eb7577d9ce Mon Sep 17 00:00:00 2001
From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Date: Fri, 15 May 2020 16:14:48 +0200
Subject: [PATCH] disable shared library target in build
Disable shared library target if BUILD_SHARED_LIBS if OFF.
Patch retrieved from
https://git.buildroot.net/buildroot/tree/package/librtlsdr/0001-disable_shared_library_target_in_build.patch?h=2020.02.x
Patch has been updated to work with master and to be able to keep current
behavior of building shared and static version of library if
BUILD_SHARED_LIBS and BUILD_STATIC_LIBS are both set.
Moreover, if BUILD_STATIC_LIBS is OFF, only shared version of library
will be install.
[Upstream status: http://lists.osmocom.org/pipermail/osmocom-sdr/2020-May/002075.html]
Signed-off-by: Yuvaraj Patil <yuvaraj.patil@wipro.com>
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
package/librtlsdr: bump to more recent upstream master version Since 948666dfde1e0a5d149442f80facc162a83016ad, librtlsdr in Buildroot is no longer built from an official release, but from a commit on the master branch. However, the commit that was referenced has a broken pkgconfig file templating, such that other packages using `pkgconfig --libs librtlsdr` as part of their build process (such as dump1090) could not be built anymore: Before 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: RTL-SDR Library Description: C Utility Library Version: 0.6.0 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr -lusb-1.0 Libs.private: On 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix= exec_prefix= libdir= includedir= Name: RTL-SDR Library Description: C Utility Library Version: 7082 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr Libs.private: -lusb-1.0 In the meantime, upstream released a bugfix for that ([1]), so we bump to that commit as well, and update the only patch for shared libs accordingly, because upstream also added a new tool called `rtl_biast` in the meantime. Finaly, we update the hash file to the two-spaces convention. Fixes: http://autobuild.buildroot.net/results/b4c/b4cdcb59cc61c51c024197a64865ad4b60023d0c/ [1]: https://github.com/steve-m/librtlsdr/commit/ed0317e6a58c098874ac58b769cf2e609c18d9a5 Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu> Tested-by: Heiko Thiery <heiko.thiery@gmail.com> Tested-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-09 11:35:38 +02:00
Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
---
src/CMakeLists.txt | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
package/librtlsdr: bump to more recent upstream master version Since 948666dfde1e0a5d149442f80facc162a83016ad, librtlsdr in Buildroot is no longer built from an official release, but from a commit on the master branch. However, the commit that was referenced has a broken pkgconfig file templating, such that other packages using `pkgconfig --libs librtlsdr` as part of their build process (such as dump1090) could not be built anymore: Before 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: RTL-SDR Library Description: C Utility Library Version: 0.6.0 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr -lusb-1.0 Libs.private: On 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix= exec_prefix= libdir= includedir= Name: RTL-SDR Library Description: C Utility Library Version: 7082 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr Libs.private: -lusb-1.0 In the meantime, upstream released a bugfix for that ([1]), so we bump to that commit as well, and update the only patch for shared libs accordingly, because upstream also added a new tool called `rtl_biast` in the meantime. Finaly, we update the hash file to the two-spaces convention. Fixes: http://autobuild.buildroot.net/results/b4c/b4cdcb59cc61c51c024197a64865ad4b60023d0c/ [1]: https://github.com/steve-m/librtlsdr/commit/ed0317e6a58c098874ac58b769cf2e609c18d9a5 Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu> Tested-by: Heiko Thiery <heiko.thiery@gmail.com> Tested-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-09 11:35:38 +02:00
index de93044..13b7b1a 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -18,6 +18,8 @@
########################################################################
# Setup shared library variant
########################################################################
+option(BUILD_SHARED_LIBS "Build shared library" ON)
+if(BUILD_SHARED_LIBS)
add_library(rtlsdr SHARED librtlsdr.c
tuner_e4k.c tuner_fc0012.c tuner_fc0013.c tuner_fc2580.c tuner_r82xx.c)
target_link_libraries(rtlsdr PkgConfig::LIBUSB)
@@ -30,10 +32,14 @@ set_target_properties(rtlsdr PROPERTIES OUTPUT_NAME rtlsdr)
set_target_properties(rtlsdr PROPERTIES SOVERSION ${MAJOR_VERSION})
set_target_properties(rtlsdr PROPERTIES VERSION ${LIBVER})
generate_export_header(rtlsdr)
+list(APPEND rtlsdr_lib rtlsdr)
+endif()
########################################################################
# Setup static library variant
########################################################################
+option(BUILD_STATIC_LIBS "Build static library" ON)
+if(BUILD_STATIC_LIBS)
add_library(rtlsdr_static STATIC librtlsdr.c
tuner_e4k.c tuner_fc0012.c tuner_fc0013.c tuner_fc2580.c tuner_r82xx.c)
target_link_libraries(rtlsdr_static PkgConfig::LIBUSB)
@@ -47,6 +53,8 @@ if(NOT WIN32)
set_target_properties(rtlsdr_static PROPERTIES OUTPUT_NAME rtlsdr)
endif()
generate_export_header(rtlsdr_static)
+list(APPEND rtlsdr_lib rtlsdr_static)
+endif()
########################################################################
# Set up Windows DLL resource files
@@ -90,37 +98,37 @@ add_executable(rtl_eeprom rtl_eeprom.c)
add_executable(rtl_adsb rtl_adsb.c)
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)
+set(INSTALL_TARGETS ${rtlsdr_lib} rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast)
-target_link_libraries(rtl_sdr rtlsdr convenience_static
+target_link_libraries(rtl_sdr ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_tcp rtlsdr convenience_static
+target_link_libraries(rtl_tcp ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_test rtlsdr convenience_static
+target_link_libraries(rtl_test ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_fm rtlsdr convenience_static
+target_link_libraries(rtl_fm ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_eeprom rtlsdr convenience_static
+target_link_libraries(rtl_eeprom ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_adsb rtlsdr convenience_static
+target_link_libraries(rtl_adsb ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_power rtlsdr convenience_static
+target_link_libraries(rtl_power ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
-target_link_libraries(rtl_biast rtlsdr convenience_static
+target_link_libraries(rtl_biast ${rtlsdr_lib} convenience_static
${LIBUSB_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
)
@@ -156,12 +164,16 @@ endif()
########################################################################
# Install built library files & utilities
########################################################################
+if(BUILD_SHARED_LIBS)
install(TARGETS rtlsdr EXPORT RTLSDR-export
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib file
)
+endif()
+if(BUILD_STATIC_LIBS)
install(TARGETS rtlsdr_static EXPORT RTLSDR-export
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib file
)
+endif()
package/librtlsdr: bump to more recent upstream master version Since 948666dfde1e0a5d149442f80facc162a83016ad, librtlsdr in Buildroot is no longer built from an official release, but from a commit on the master branch. However, the commit that was referenced has a broken pkgconfig file templating, such that other packages using `pkgconfig --libs librtlsdr` as part of their build process (such as dump1090) could not be built anymore: Before 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: RTL-SDR Library Description: C Utility Library Version: 0.6.0 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr -lusb-1.0 Libs.private: On 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix= exec_prefix= libdir= includedir= Name: RTL-SDR Library Description: C Utility Library Version: 7082 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr Libs.private: -lusb-1.0 In the meantime, upstream released a bugfix for that ([1]), so we bump to that commit as well, and update the only patch for shared libs accordingly, because upstream also added a new tool called `rtl_biast` in the meantime. Finaly, we update the hash file to the two-spaces convention. Fixes: http://autobuild.buildroot.net/results/b4c/b4cdcb59cc61c51c024197a64865ad4b60023d0c/ [1]: https://github.com/steve-m/librtlsdr/commit/ed0317e6a58c098874ac58b769cf2e609c18d9a5 Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu> Tested-by: Heiko Thiery <heiko.thiery@gmail.com> Tested-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-09 11:35:38 +02:00
install(TARGETS rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast
DESTINATION ${CMAKE_INSTALL_BINDIR}
)
--
package/librtlsdr: bump to more recent upstream master version Since 948666dfde1e0a5d149442f80facc162a83016ad, librtlsdr in Buildroot is no longer built from an official release, but from a commit on the master branch. However, the commit that was referenced has a broken pkgconfig file templating, such that other packages using `pkgconfig --libs librtlsdr` as part of their build process (such as dump1090) could not be built anymore: Before 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: RTL-SDR Library Description: C Utility Library Version: 0.6.0 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr -lusb-1.0 Libs.private: On 948666dfde1e0a5d149442f80facc162a83016ad: $ cat staging/usr/lib/pkgconfig/librtlsdr.pc prefix= exec_prefix= libdir= includedir= Name: RTL-SDR Library Description: C Utility Library Version: 7082 Cflags: -I${includedir}/ Libs: -L${libdir} -lrtlsdr Libs.private: -lusb-1.0 In the meantime, upstream released a bugfix for that ([1]), so we bump to that commit as well, and update the only patch for shared libs accordingly, because upstream also added a new tool called `rtl_biast` in the meantime. Finaly, we update the hash file to the two-spaces convention. Fixes: http://autobuild.buildroot.net/results/b4c/b4cdcb59cc61c51c024197a64865ad4b60023d0c/ [1]: https://github.com/steve-m/librtlsdr/commit/ed0317e6a58c098874ac58b769cf2e609c18d9a5 Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu> Tested-by: Heiko Thiery <heiko.thiery@gmail.com> Tested-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-09 11:35:38 +02:00
2.25.3