rtl-sdr: remove -I/usr/include from pkg-config 67/9167/3
authorMartin Kelly <mkelly@xevo.com>
Fri, 21 Apr 2017 17:48:18 +0000 (10:48 -0700)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Wed, 26 Apr 2017 10:21:01 +0000 (10:21 +0000)
The -I/usr/include in the .pc file for rtl-sdr causes build failures
with GCC 6 in qtmultimedia-rtlfm-radio-plugin because QMake translates
it into -isystem, which breaks the GCC 6 #include_next directive. More
information is available here:

Here's some references in case you're curious:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129
https://bugreports.qt.io/browse/QTBUG-53367
https://bugreports.qt.io/browse/QTBUG-53375
https://codereview.qt-project.org/#/c/159394

Change-Id: I2fa58c422323026bcf254491b9ee7e30e8e75938
Signed-off-by: Martin Kelly <mkelly@xevo.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9167
Reviewed-by: Scott Murray <scott.murray@konsulko.com>
Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
meta-agl/recipes-connectivity/rtl-sdr/rtl-sdr/0001-remove-I-usr-include-in-pkg-config.patch [new file with mode: 0644]
meta-agl/recipes-connectivity/rtl-sdr/rtl-sdr_0.5.3.bb

diff --git a/meta-agl/recipes-connectivity/rtl-sdr/rtl-sdr/0001-remove-I-usr-include-in-pkg-config.patch b/meta-agl/recipes-connectivity/rtl-sdr/rtl-sdr/0001-remove-I-usr-include-in-pkg-config.patch
new file mode 100644 (file)
index 0000000..86b7392
--- /dev/null
@@ -0,0 +1,40 @@
+From 3aeaf8054fcb2617ca8f6196ca32be3e69337f77 Mon Sep 17 00:00:00 2001
+From: Martin Kelly <mkelly@xevo.com>
+Date: Fri, 21 Apr 2017 10:29:19 -0700
+Subject: [PATCH] remove -I/usr/include in pkg-config
+
+This shouldn't be necessary as it's part of the default compiler include
+paths anyway. Morever, it can cause GCC 6 C++ build failures in
+downstream packages when combined with QMake (such as
+qtmultimedia-rtlfm-radio-plugin).
+
+Fix these issues by removing it.
+
+Upstream-Status: Inappropriate [disable-feature]
+
+This patch should not go upstream because it breaks the ability to build
+with --prefix. That's not a problem for Openembedded, but it is for
+upstream more generally. See this mail thread for more information:
+
+http://lists.osmocom.org/pipermail/osmocom-sdr/2017-April/001580.html
+
+Signed-off-by: Martin Kelly <mkelly@xevo.com>
+---
+ librtlsdr.pc.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/librtlsdr.pc.in b/librtlsdr.pc.in
+index 5e55049..84b6d0c 100644
+--- a/librtlsdr.pc.in
++++ b/librtlsdr.pc.in
+@@ -6,6 +6,6 @@ includedir=@includedir@
+ Name: RTL-SDR Library
+ Description: C Utility Library
+ Version: @VERSION@
+-Cflags: -I${includedir}/ @RTLSDR_PC_CFLAGS@
++Cflags: @RTLSDR_PC_CFLAGS@
+ Libs: -L${libdir} -lrtlsdr -lusb-1.0
+ Libs.private: @RTLSDR_PC_LIBS@
+-- 
+2.1.4
+
index 45401b7..7d5c021 100644 (file)
@@ -8,7 +8,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
 
 DEPENDS = "libusb1"
 
-SRC_URI = "git://git.osmocom.org/rtl-sdr"
+SRC_URI = "git://git.osmocom.org/rtl-sdr \
+           file://0001-remove-I-usr-include-in-pkg-config.patch \
+           "
 SRCREV = "e3c03f738f5aef4dc51e2b741fbdb542b9cc1bb1"
 S = "${WORKDIR}/git"