Patchwork [meta-oe,05/16] gpsd-3.4: fix DSO build correctly

login
register
mail settings
Submitter Martin Jansa
Date April 30, 2012, 6:33 a.m.
Message ID <cf4979889002b5ee146c185d499cd25e68be91a8.1335767139.git.Martin.Jansa@gmail.com>
Download mbox | patch
Permalink /patch/26609/
State Accepted
Commit cf4979889002b5ee146c185d499cd25e68be91a8
Headers show

Comments

Martin Jansa - April 30, 2012, 6:33 a.m.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 ...t-fix-DSO-build-for-ntpshm-garmin_monitor.patch |   41 ++++++++++++++++++++
 meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb        |    4 +-
 2 files changed, 42 insertions(+), 3 deletions(-)
 create mode 100644 meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-fix-DSO-build-for-ntpshm-garmin_monitor.patch

Patch

diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-fix-DSO-build-for-ntpshm-garmin_monitor.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-fix-DSO-build-for-ntpshm-garmin_monitor.patch
new file mode 100644
index 0000000..1aa4304
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-fix-DSO-build-for-ntpshm-garmin_monitor.patch
@@ -0,0 +1,41 @@ 
+From e1f780fc2355c22c2c3f0a70c1a1ef2669779c53 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Tue, 24 Apr 2012 13:42:38 +0200
+Subject: [PATCH] SConstruct: fix DSO build for ntpshm, garmin_monitor
+
+| x86_64-oe-linux-gcc -m64
+--sysroot=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64 -o gpsmon
+--sysroot=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64
+-Wl,-rpath=/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/gpsd/gpsd-3.4-r2/gpsd-3.4
+-Wl,-rpath=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64/usr/lib gpsmon.o
+monitor_italk.o monitor_nmea.o monitor_oncore.o monitor_sirf.o
+monitor_superstar2.o monitor_tnt.o monitor_ubx.o monitor_garmin.o -L.
+-L/OE/shr-core/tmp-eglibc/sysroots/qemux86-64/usr/lib
+-L/OE/shr-core/tmp-eglibc/sysroots/qemux86-64/lib -lrt -lbluetooth
+-lgpsd -lusb-1.0 -lbluetooth -lgps -lncurses -ltinfo
+
+/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/4.6.4/ld:
+* ntpshm.o: undefined reference to symbol 'log@@GLIBC_2.2.5'
+* monitor_garmin.o: undefined reference to symbol 'hypot@@GLIBC_2.2.5'
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ SConstruct |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index 7bd44a1..9ff00c1 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -806,7 +806,7 @@ if qt_env:
+ # The libraries have dependencies on system libraries
+ 
+ gpslibs = ["-lgps"]
+-gpsdlibs = ["-lgpsd"] + usblibs + bluezlibs + gpslibs
++gpsdlibs = ["-lgpsd"] + ["-lm"] + usblibs + bluezlibs + gpslibs
+ 
+ # Source groups
+ 
+-- 
+1.7.8.5
+
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb b/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb
index 9584e55..bb79368 100644
--- a/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb
+++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb
@@ -6,6 +6,7 @@  DEPENDS = "dbus dbus-glib ncurses python libusb1"
 PROVIDES = "virtual/gpsd"
 
 SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \
+  file://0001-SConstruct-fix-DSO-build-for-ntpshm-garmin_monitor.patch \
   file://gpsd-default \
   file://gpsd \
   file://gpsd.socket \
@@ -23,12 +24,9 @@  INITSCRIPT_PARAMS = "defaults 35"
 SYSTEMD_PACKAGES = "${PN}-systemd"
 SYSTEMD_SERVICE = "${PN}.socket"
 
-LDFLAGS += "-L${STAGING_LIBDIR} -lm"
 export STAGING_INCDIR
 export STAGING_LIBDIR
 
-CC += "${LDFLAGS}"
-
 EXTRA_OESCONS = " \
   libQgpsmm='false' \
   debug='true' \