summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-navigation/gpsd/gpsd-3.14
diff options
context:
space:
mode:
authorPhilip Balister <philip@balister.org>2015-04-23 12:48:33 -0400
committerMartin Jansa <Martin.Jansa@gmail.com>2015-05-13 14:34:18 +0200
commit738bc2733b8bfa74c6b331de9676fc9aa1313b81 (patch)
tree7ebff0e8c948a6e71e563e9c5430f44a58a530d1 /meta-oe/recipes-navigation/gpsd/gpsd-3.14
parentc625112dc786bc3bbf65bd1c5c6d53280295533b (diff)
downloadmeta-openembedded-738bc2733b8bfa74c6b331de9676fc9aa1313b81.tar.gz
gpsd: Update to 3.14.
* _NO_ATOMICS patches are from upstream * Update the SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch * Fix some QA warnings * Add PACKAGECONFIG for qt support Signed-off-by: Philip Balister <philip@balister.org> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-navigation/gpsd/gpsd-3.14')
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-Check-for-__STDC_NO_ATOMICS__-before-using-stdatomic.patch25
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch75
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch33
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-Add-a-test-for-C11-and-check-we-have-C11-before-usin.patch57
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-SConstruct-remove-rpath.patch45
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0003-Whoops-check-for-C11-not-for-not-C11-in-stdatomic.h-.patch26
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.14/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch52
7 files changed, 313 insertions, 0 deletions
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-Check-for-__STDC_NO_ATOMICS__-before-using-stdatomic.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-Check-for-__STDC_NO_ATOMICS__-before-using-stdatomic.patch
new file mode 100644
index 0000000000..82ac5aa6e7
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-Check-for-__STDC_NO_ATOMICS__-before-using-stdatomic.patch
@@ -0,0 +1,25 @@
1From c30716be9e615513fe66993fd3cdc818c3d70410 Mon Sep 17 00:00:00 2001
2From: "Gary E. Miller" <gem@rellim.com>
3Date: Sun, 15 Mar 2015 11:51:45 -0700
4Subject: [PATCH 1/3] Check for __STDC_NO_ATOMICS__ before using stdatomic.h
5
6---
7 SConstruct | 2 +-
8 1 file changed, 1 insertion(+), 1 deletion(-)
9
10diff --git a/SConstruct b/SConstruct
11index adf473d..566c14a 100644
12--- a/SConstruct
13+++ b/SConstruct
14@@ -633,7 +633,7 @@ else:
15 announce("You do not have kernel CANbus available.")
16 env["nmea2000"] = False
17
18- if config.CheckHeader("stdatomic.h"):
19+ if not config.CheckCompilerDefines("__STDC_NO_ATOMICS__") and config.CheckHeader("stdatomic.h"):
20 confdefs.append("#define HAVE_STDATOMIC_H 1\n")
21 else:
22 confdefs.append("/* #undef HAVE_STDATOMIC_H */\n")
23--
242.1.0
25
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
new file mode 100644
index 0000000000..2ea3226a48
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
@@ -0,0 +1,75 @@
1From 1e2cea8945bc2183fbe1a012dcd633a352125952 Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Tue, 24 Apr 2012 18:45:14 +0200
4Subject: [PATCH] SConstruct: prefix includepy with sysroot and drop sysroot
5 from python_lib_dir
6
7* without PYTHONPATH, distutil's sysconfig returns INCLUDEPY without sysroot prefix
8 and with PYTHONPATH from OE it's pointing to native python dir
9
10 $ export PYTHONPATH=/OE/shr-core/tmp-eglibc/sysroots/om-gta02/usr/lib/python2.7/
11 $ python
12 Python 2.7.2 (default, Apr 18 2012, 09:19:59)
13 [GCC 4.6.2] on linux2
14 Type "help", "copyright", "credits" or "license" for more information.
15 >>> from distutils import sysconfig
16 >>> sysconfig.get_config_vars('INCLUDEPY')
17 ['/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/python2.7']
18 >>>
19 $ unset PYTHONPATH
20 $ python
21 Python 2.7.2 (default, Apr 18 2012, 09:19:59)
22 [GCC 4.6.2] on linux2
23 Type "help", "copyright", "credits" or "license" for more information.
24 >>> from distutils import sysconfig
25 >>> sysconfig.get_config_vars('INCLUDEPY')
26 ['/python2.7']
27 >>> import sysconfig
28 >>> sysconfig.get_config_vars('INCLUDEPY')
29 ['/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/python2.7']
30* python_lib_dir = python_lib_dir.replace(env['sysroot'], '')
31 returns path to target sysroot
32
33Upstream-Status: Inappropriate [embedded specific]
34
35Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
36Signed-off-by: Peter A. Bigot <pab@pabigot.com>
37---
38 SConstruct | 9 +++++++++
39 1 file changed, 9 insertions(+)
40
41diff --git a/SConstruct b/SConstruct
42index 6c93311..cde8b3d 100644
43--- a/SConstruct
44+++ b/SConstruct
45@@ -1148,6 +1148,12 @@ else:
46 basecflags += ' -coverage'
47 ldflags += ' -coverage'
48 ldshared += ' -coverage'
49+
50+ if env['sysroot']:
51+ print "Prefixing includepy '%s' with sysroot prefix" % includepy
52+ includepy = os.path.normpath("%s/%s/%s/%s" % (env['sysroot'], env['prefix'], env['includedir'], includepy))
53+ print "'%s'" % includepy
54+
55 # in case CC/CXX was set to the scan-build wrapper,
56 # ensure that we build the python modules with scan-build, too
57 if env['CC'] is None or env['CC'].find('scan-build') < 0:
58@@ -1408,11 +1414,14 @@ if not env['python']:
59 python_install = []
60 else:
61 python_lib_dir = env['python_libdir']
62+ python_lib_dir = python_lib_dir.replace(env['sysroot'], '')
63 python_module_dir = python_lib_dir + os.sep + 'gps'
64 python_extensions_install = python_env.Install( DESTDIR + python_module_dir,
65 python_built_extensions)
66 if not env['debug'] and not env['profiling'] and not env['nostrip'] and not sys.platform.startswith('darwin'):
67 python_env.AddPostAction(python_extensions_install, '$STRIP $TARGET')
68+ env.AddPostAction(python_extensions_install, '$CHRPATH -r "%s" "$TARGET"' \
69+ % (python_lib_dir, ))
70
71 python_modules_install = python_env.Install( DESTDIR + python_module_dir,
72 python_modules)
73--
742.1.0
75
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch
new file mode 100644
index 0000000000..c4134f4b58
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0001-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch
@@ -0,0 +1,33 @@
1From 3c5fb3a8691ac711ea93edf8e0b42bffc62b197e Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Tue, 24 Apr 2012 11:52:35 +0200
4Subject: [PATCH 1/4] SConstruct: respect sysroot also in SPLINTOPTS
5
6Upstream-Status: Inappropriate [embedded specific]
7
8Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
9Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
10Signed-off-by: Peter A. Bigot <pab@pabigot.com>
11---
12 SConstruct | 5 ++++-
13 1 file changed, 4 insertions(+), 1 deletion(-)
14
15diff --git a/SConstruct b/SConstruct
16index 14e2f59..f0cafa8 100644
17--- a/SConstruct
18+++ b/SConstruct
19@@ -1414,7 +1414,10 @@ def Utility(target, source, action):
20 # Report splint warnings
21 # Note: test_bits.c is unsplintable because of the PRI64 macros.
22 # If you get preprocessor or fatal errors, add +showscan.
23-splintopts = "-I/usr/include/libusb-1.0 +quiet"
24+if not env['sysroot']:
25+ splintopts = "-I/usr/include/libusb-1.0 +quiet"
26+else:
27+ splintopts = "-I%s/usr/include/libusb-1.0 +quiet" % env['sysroot']
28 # splint does not know about multi-arch, work around that
29 ma_status, ma = _getstatusoutput('dpkg-architecture -qDEB_HOST_MULTIARCH')
30 if ma_status == 0:
31--
321.8.5.5
33
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-Add-a-test-for-C11-and-check-we-have-C11-before-usin.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-Add-a-test-for-C11-and-check-we-have-C11-before-usin.patch
new file mode 100644
index 0000000000..22ee1bdcfc
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-Add-a-test-for-C11-and-check-we-have-C11-before-usin.patch
@@ -0,0 +1,57 @@
1From 99444b3d2c4a4f7fd7128e60461005780d0c5c83 Mon Sep 17 00:00:00 2001
2From: "Gary E. Miller" <gem@rellim.com>
3Date: Sun, 15 Mar 2015 12:05:15 -0700
4Subject: [PATCH 2/3] Add a test for C11 and check we have C11 before using
5 stdatomic.h
6
7---
8 SConstruct | 19 ++++++++++++++++++-
9 1 file changed, 18 insertions(+), 1 deletion(-)
10
11diff --git a/SConstruct b/SConstruct
12index 566c14a..faa8651 100644
13--- a/SConstruct
14+++ b/SConstruct
15@@ -473,6 +473,20 @@ def CheckCompilerDefines(context, define):
16 context.Result(ret)
17 return ret
18
19+# Check if this compiler is C11 or better
20+def CheckC11(context):
21+ context.Message( 'Checking if compiler is C11 ...' )
22+ ret = context.TryLink("""
23+ #if (__STDC_VERSION__ < 201112L)
24+ #error Not C11
25+ #endif
26+ int main(int argc, char **argv) {
27+ return 0;
28+ }
29+ """,'.c')
30+ context.Result(ret)
31+ return ret
32+
33 def GetLoadPath(context):
34 context.Message("Getting system load path ...")
35
36@@ -491,6 +505,7 @@ else:
37 'CheckXsltproc' : CheckXsltproc,
38 'CheckCompilerOption' : CheckCompilerOption,
39 'CheckCompilerDefines' : CheckCompilerDefines,
40+ 'CheckC11' : CheckC11,
41 'CheckHeaderDefines' : CheckHeaderDefines})
42
43
44@@ -633,7 +648,9 @@ else:
45 announce("You do not have kernel CANbus available.")
46 env["nmea2000"] = False
47
48- if not config.CheckCompilerDefines("__STDC_NO_ATOMICS__") and config.CheckHeader("stdatomic.h"):
49+ # check for C11 or better, and __STDC__NO_ATOMICS__ is no defined
50+ # before looking for stdatomic.h
51+ if not config.CheckC11() and not config.CheckCompilerDefines("__STDC_NO_ATOMICS__") and config.CheckHeader("stdatomic.h"):
52 confdefs.append("#define HAVE_STDATOMIC_H 1\n")
53 else:
54 confdefs.append("/* #undef HAVE_STDATOMIC_H */\n")
55--
562.1.0
57
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-SConstruct-remove-rpath.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-SConstruct-remove-rpath.patch
new file mode 100644
index 0000000000..083a6621f5
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0002-SConstruct-remove-rpath.patch
@@ -0,0 +1,45 @@
1From d090638ff983e509162d5e3b62aa4918de4aa5fa Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Tue, 24 Apr 2012 16:24:35 +0200
4Subject: [PATCH 2/4] SConstruct: remove rpath
5
6* even with correct prefix (without DESTDIR) included it's redundant
7 WARNING: QA Issue: libgps:
8 /work/armv4t-oe-linux-gnueabi/gpsd/gpsd-3.5-r0/packages-split/libgps/usr/lib/libgps.so.20.0
9 contains probably-redundant RPATH /usr/lib
10* and with prefix from scons.bbclass it's invalid
11 WARNING: QA Issue: package libgps contains bad RPATH
12 /OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd/gpsd-3.5-r0/image/usr/lib
13 in file
14 /OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd/gpsd-3.5-r0/packages-split/libgps/usr/lib/libgps.so.20.0
15
16Upstream-Status: Inapppropriate [embedded specific]
17
18Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
19Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
20Signed-off-by: Peter A. Bigot <pab@pabigot.com>
21---
22 SConstruct | 7 +++++--
23 1 file changed, 5 insertions(+), 2 deletions(-)
24
25diff --git a/SConstruct b/SConstruct
26index f0cafa8..ff46713 100644
27--- a/SConstruct
28+++ b/SConstruct
29@@ -1340,8 +1340,11 @@ if qt_env:
30 binaryinstall.append(LibraryInstall(qt_env, installdir('libdir'), compiled_qgpsmmlib))
31
32 if env["shared"] and env["chrpath"]:
33- env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \
34- % (installdir('libdir', False), ))
35+ if not env['sysroot']:
36+ env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \
37+ % (installdir('libdir', False), ))
38+ else:
39+ env.AddPostAction(binaryinstall, '$CHRPATH -d "$TARGET"')
40
41 if not env['debug'] and not env['profiling'] and env['strip']:
42 env.AddPostAction(binaryinstall, '$STRIP $TARGET')
43--
441.8.5.5
45
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0003-Whoops-check-for-C11-not-for-not-C11-in-stdatomic.h-.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0003-Whoops-check-for-C11-not-for-not-C11-in-stdatomic.h-.patch
new file mode 100644
index 0000000000..8bb0928cef
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0003-Whoops-check-for-C11-not-for-not-C11-in-stdatomic.h-.patch
@@ -0,0 +1,26 @@
1From 674c50ee54fd7cd304e8b3c4b33d3ff1272ed191 Mon Sep 17 00:00:00 2001
2From: "Gary E. Miller" <gem@rellim.com>
3Date: Sun, 15 Mar 2015 12:17:51 -0700
4Subject: [PATCH 3/3] Whoops, check for C11, not for not C11 in stdatomic.h
5 test.
6
7---
8 SConstruct | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
10
11diff --git a/SConstruct b/SConstruct
12index faa8651..f4ea145 100644
13--- a/SConstruct
14+++ b/SConstruct
15@@ -650,7 +650,7 @@ else:
16
17 # check for C11 or better, and __STDC__NO_ATOMICS__ is no defined
18 # before looking for stdatomic.h
19- if not config.CheckC11() and not config.CheckCompilerDefines("__STDC_NO_ATOMICS__") and config.CheckHeader("stdatomic.h"):
20+ if config.CheckC11() and not config.CheckCompilerDefines("__STDC_NO_ATOMICS__") and config.CheckHeader("stdatomic.h"):
21 confdefs.append("#define HAVE_STDATOMIC_H 1\n")
22 else:
23 confdefs.append("/* #undef HAVE_STDATOMIC_H */\n")
24--
252.1.0
26
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch
new file mode 100644
index 0000000000..8527f0db39
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.14/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch
@@ -0,0 +1,52 @@
1From 697e2e9ff97487266d817cdd41bacc83f681e3d7 Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Sun, 29 Apr 2012 00:05:59 +0200
4Subject: [PATCH 4/4] SConstruct: disable html and man docs building because
5 xmlto-native from OE is broken
6
7It will try to load dtd and fail:
8| xmlto man gpsctl.xml; mv `basename gpsctl.1` gpsctl.1
9| xmlto: /var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd-3.4-r2/gpsd-3.4/gpsctl.xml does not validate (status 3)
10| xmlto: Fix document syntax or use --skip-validation option
11| I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
12| /var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd-3.4-r2/gpsd-3.4/gpsctl.xml:8: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
13| "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
14| ^
15| I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
16| warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
17| validity error : Could not load the external subset "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
18| Document /var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd-3.4-r2/gpsd-3.4/gpsctl.xml does not validate
19| mv: cannot stat `gpsctl.1': No such file or directory
20| scons: *** [gpsctl.1] Error 1
21| scons: building terminated because of errors.
22
23Upstream-Status: Inappropriate [disable feature]
24
25Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
26Signed-off-by: Peter A. Bigot <pab@pabigot.com>
27---
28 SConstruct | 4 ++--
29 1 file changed, 2 insertions(+), 2 deletions(-)
30
31diff --git a/SConstruct b/SConstruct
32index 0e518e7..c01a71b 100644
33--- a/SConstruct
34+++ b/SConstruct
35@@ -704,12 +704,12 @@ size_t strlcpy(/*@out@*/char *dst, /*@in@*/const char *src, size_t size);
36
37 manbuilder = mangenerator = htmlbuilder = None
38 if env['manbuild']:
39- if config.CheckXsltproc():
40+ if False and config.CheckXsltproc():
41 mangenerator = 'xsltproc'
42 build = "xsltproc --nonet %s $SOURCE >$TARGET"
43 htmlbuilder = build % docbook_html_uri
44 manbuilder = build % docbook_man_uri
45- elif WhereIs("xmlto"):
46+ elif False and WhereIs("xmlto"):
47 mangenerator = 'xmlto'
48 xmlto = "xmlto %s $SOURCE || mv `basename $TARGET` `dirname $TARGET`"
49 htmlbuilder = xmlto % "html-nochunks"
50--
511.8.5.5
52