diff options
Diffstat (limited to 'meta-oe')
16 files changed, 688 insertions, 51 deletions
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd.service b/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd.service deleted file mode 100644 index 8deaf759a7..0000000000 --- a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd.service +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=GPS (Global Positioning System) Daemon | ||
| 3 | Requires=gpsd.socket | ||
| 4 | |||
| 5 | [Service] | ||
| 6 | ExecStart=/usr/sbin/gpsd -N | ||
| 7 | |||
| 8 | [Install] | ||
| 9 | Also=gpsd.socket | ||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd.socket b/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd.socket deleted file mode 100644 index 13c17f2480..0000000000 --- a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd.socket +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=GPS (Global Positioning System) Daemon Sockets | ||
| 3 | |||
| 4 | [Socket] | ||
| 5 | ListenStream=/var/run/gpsd.sock | ||
| 6 | ListenStream=127.0.0.1:2947 | ||
| 7 | |||
| 8 | [Install] | ||
| 9 | WantedBy=sockets.target | ||
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 0000000000..1aa4304042 --- /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 @@ | |||
| 1 | From e1f780fc2355c22c2c3f0a70c1a1ef2669779c53 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 13:42:38 +0200 | ||
| 4 | Subject: [PATCH] SConstruct: fix DSO build for ntpshm, garmin_monitor | ||
| 5 | |||
| 6 | | x86_64-oe-linux-gcc -m64 | ||
| 7 | --sysroot=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64 -o gpsmon | ||
| 8 | --sysroot=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64 | ||
| 9 | -Wl,-rpath=/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/gpsd/gpsd-3.4-r2/gpsd-3.4 | ||
| 10 | -Wl,-rpath=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64/usr/lib gpsmon.o | ||
| 11 | monitor_italk.o monitor_nmea.o monitor_oncore.o monitor_sirf.o | ||
| 12 | monitor_superstar2.o monitor_tnt.o monitor_ubx.o monitor_garmin.o -L. | ||
| 13 | -L/OE/shr-core/tmp-eglibc/sysroots/qemux86-64/usr/lib | ||
| 14 | -L/OE/shr-core/tmp-eglibc/sysroots/qemux86-64/lib -lrt -lbluetooth | ||
| 15 | -lgpsd -lusb-1.0 -lbluetooth -lgps -lncurses -ltinfo | ||
| 16 | |||
| 17 | /OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/4.6.4/ld: | ||
| 18 | * ntpshm.o: undefined reference to symbol 'log@@GLIBC_2.2.5' | ||
| 19 | * monitor_garmin.o: undefined reference to symbol 'hypot@@GLIBC_2.2.5' | ||
| 20 | |||
| 21 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 22 | --- | ||
| 23 | SConstruct | 4 ++-- | ||
| 24 | 1 files changed, 2 insertions(+), 2 deletions(-) | ||
| 25 | |||
| 26 | diff --git a/SConstruct b/SConstruct | ||
| 27 | index 7bd44a1..9ff00c1 100644 | ||
| 28 | --- a/SConstruct | ||
| 29 | +++ b/SConstruct | ||
| 30 | @@ -806,7 +806,7 @@ if qt_env: | ||
| 31 | # The libraries have dependencies on system libraries | ||
| 32 | |||
| 33 | gpslibs = ["-lgps"] | ||
| 34 | -gpsdlibs = ["-lgpsd"] + usblibs + bluezlibs + gpslibs | ||
| 35 | +gpsdlibs = ["-lgpsd"] + ["-lm"] + usblibs + bluezlibs + gpslibs | ||
| 36 | |||
| 37 | # Source groups | ||
| 38 | |||
| 39 | -- | ||
| 40 | 1.7.8.5 | ||
| 41 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch b/meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch new file mode 100644 index 0000000000..27c6aad167 --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch | |||
| @@ -0,0 +1,72 @@ | |||
| 1 | From bc224302f1665078c8d15138318709c1a1c2c0a0 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 18:45:14 +0200 | ||
| 4 | Subject: [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 | |||
| 33 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 34 | --- | ||
| 35 | SConstruct | 9 +++++++++ | ||
| 36 | 1 files changed, 9 insertions(+), 0 deletions(-) | ||
| 37 | |||
| 38 | diff --git a/SConstruct b/SConstruct | ||
| 39 | index 9ff00c1..9c0f751 100644 | ||
| 40 | --- a/SConstruct | ||
| 41 | +++ b/SConstruct | ||
| 42 | @@ -924,6 +924,12 @@ else: | ||
| 43 | if vars[i] is None: | ||
| 44 | vars[i] = "" | ||
| 45 | (cc, cxx, opt, basecflags, ccshared, ldshared, so_ext, includepy) = vars | ||
| 46 | + | ||
| 47 | + if env['sysroot']: | ||
| 48 | + print "Prefixing includepy '%s' with sysroot prefix" % includepy | ||
| 49 | + includepy = os.path.normpath("%s/%s/%s/%s" % (env['sysroot'], env['prefix'], env['includedir'], includepy)) | ||
| 50 | + print "'%s'" % includepy | ||
| 51 | + | ||
| 52 | # in case CC/CXX was set to the scan-build wrapper, | ||
| 53 | # ensure that we build the python modules with scan-build, too | ||
| 54 | if env['CC'] is None or env['CC'].find('scan-build') < 0: | ||
| 55 | @@ -1158,11 +1164,14 @@ if not env['python']: | ||
| 56 | python_install = [] | ||
| 57 | else: | ||
| 58 | python_lib_dir = sysconfig.get_python_lib(plat_specific=1) | ||
| 59 | + python_lib_dir = python_lib_dir.replace(env['sysroot'], '') | ||
| 60 | python_module_dir = python_lib_dir + os.sep + 'gps' | ||
| 61 | python_extensions_install = python_env.Install( DESTDIR + python_module_dir, | ||
| 62 | python_built_extensions) | ||
| 63 | if not env['debug'] or env['profiling']: | ||
| 64 | python_env.AddPostAction(python_extensions_install, '$STRIP $TARGET') | ||
| 65 | + env.AddPostAction(python_extensions_install, '$CHRPATH -r "%s" "$TARGET"' \ | ||
| 66 | + % (python_lib_dir, )) | ||
| 67 | |||
| 68 | python_modules_install = python_env.Install( DESTDIR + python_module_dir, | ||
| 69 | python_modules) | ||
| 70 | -- | ||
| 71 | 1.7.8.5 | ||
| 72 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-disable-html-and-man-docs-building-becaus.patch b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-disable-html-and-man-docs-building-becaus.patch new file mode 100644 index 0000000000..9db24326cf --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-disable-html-and-man-docs-building-becaus.patch | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | From ca1a781afbd68697ef2f573557f1f93ec7ab8d3c Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Sun, 29 Apr 2012 00:05:59 +0200 | ||
| 4 | Subject: [PATCH] SConstruct: disable html and man docs building because | ||
| 5 | xmlto-native from OE is broken | ||
| 6 | |||
| 7 | It 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 | |||
| 23 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 24 | --- | ||
| 25 | SConstruct | 4 ++-- | ||
| 26 | 1 files changed, 2 insertions(+), 2 deletions(-) | ||
| 27 | |||
| 28 | diff --git a/SConstruct b/SConstruct | ||
| 29 | index 9c0f751..8236abb 100644 | ||
| 30 | --- a/SConstruct | ||
| 31 | +++ b/SConstruct | ||
| 32 | @@ -560,12 +560,12 @@ size_t strlcpy(/*@out@*/char *dst, /*@in@*/const char *src, size_t size); | ||
| 33 | |||
| 34 | |||
| 35 | manbuilder = mangenerator = htmlbuilder = None | ||
| 36 | -if config.CheckXsltproc(): | ||
| 37 | +if False and config.CheckXsltproc(): | ||
| 38 | mangenerator = 'xsltproc' | ||
| 39 | build = "xsltproc --nonet %s $SOURCE >$TARGET" | ||
| 40 | htmlbuilder = build % docbook_html_uri | ||
| 41 | manbuilder = build % docbook_man_uri | ||
| 42 | -elif WhereIs("xmlto"): | ||
| 43 | +elif False and WhereIs("xmlto"): | ||
| 44 | mangenerator = 'xmlto' | ||
| 45 | htmlbuilder = "xmlto html-nochunks $SOURCE; mv `basename $TARGET` $TARGET" | ||
| 46 | manbuilder = "xmlto man $SOURCE; mv `basename $TARGET` $TARGET" | ||
| 47 | -- | ||
| 48 | 1.7.8.6 | ||
| 49 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch new file mode 100644 index 0000000000..c6eb03bf2f --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch | |||
| @@ -0,0 +1,72 @@ | |||
| 1 | From dd3ca38b27cce93f7e932abaa27b41371234fa90 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 18:45:14 +0200 | ||
| 4 | Subject: [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 | |||
| 33 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 34 | --- | ||
| 35 | SConstruct | 9 +++++++++ | ||
| 36 | 1 files changed, 9 insertions(+), 0 deletions(-) | ||
| 37 | |||
| 38 | diff --git a/SConstruct b/SConstruct | ||
| 39 | index 3c919fc..8478181 100644 | ||
| 40 | --- a/SConstruct | ||
| 41 | +++ b/SConstruct | ||
| 42 | @@ -932,6 +932,12 @@ else: | ||
| 43 | if vars[i] is None: | ||
| 44 | vars[i] = [] | ||
| 45 | (cc, cxx, opt, basecflags, ccshared, ldshared, so_ext, includepy, ldflags) = vars | ||
| 46 | + | ||
| 47 | + if env['sysroot']: | ||
| 48 | + print "Prefixing includepy '%s' with sysroot prefix" % includepy | ||
| 49 | + includepy = os.path.normpath("%s/%s/%s/%s" % (env['sysroot'], env['prefix'], env['includedir'], includepy)) | ||
| 50 | + print "'%s'" % includepy | ||
| 51 | + | ||
| 52 | # in case CC/CXX was set to the scan-build wrapper, | ||
| 53 | # ensure that we build the python modules with scan-build, too | ||
| 54 | if env['CC'] is None or env['CC'].find('scan-build') < 0: | ||
| 55 | @@ -1165,11 +1171,14 @@ if not env['python']: | ||
| 56 | python_install = [] | ||
| 57 | else: | ||
| 58 | python_lib_dir = sysconfig.get_python_lib(plat_specific=1) | ||
| 59 | + python_lib_dir = python_lib_dir.replace(env['sysroot'], '') | ||
| 60 | python_module_dir = python_lib_dir + os.sep + 'gps' | ||
| 61 | python_extensions_install = python_env.Install( DESTDIR + python_module_dir, | ||
| 62 | python_built_extensions) | ||
| 63 | if not env['debug'] and not env['profiling'] and env['strip']: | ||
| 64 | python_env.AddPostAction(python_extensions_install, '$STRIP $TARGET') | ||
| 65 | + env.AddPostAction(python_extensions_install, '$CHRPATH -r "%s" "$TARGET"' \ | ||
| 66 | + % (python_lib_dir, )) | ||
| 67 | |||
| 68 | python_modules_install = python_env.Install( DESTDIR + python_module_dir, | ||
| 69 | python_modules) | ||
| 70 | -- | ||
| 71 | 1.7.8.5 | ||
| 72 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch new file mode 100644 index 0000000000..6b720a5233 --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | From 7427bb23092b3e395d14e42cd3b64691082fe826 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 10:58:26 +0200 | ||
| 4 | Subject: [PATCH 1/4] SConstruct: respect sysroot setting when prepending | ||
| 5 | LIBPATH/RPATH | ||
| 6 | |||
| 7 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 8 | --- | ||
| 9 | SConstruct | 11 ++++++++--- | ||
| 10 | 1 files changed, 8 insertions(+), 3 deletions(-) | ||
| 11 | |||
| 12 | diff --git a/SConstruct b/SConstruct | ||
| 13 | index 22bc9f4..21b2205 100644 | ||
| 14 | --- a/SConstruct | ||
| 15 | +++ b/SConstruct | ||
| 16 | @@ -269,9 +269,14 @@ def installdir(dir, add_destdir=True): | ||
| 17 | return wrapped | ||
| 18 | |||
| 19 | # Honor the specified installation prefix in link paths. | ||
| 20 | -env.Prepend(LIBPATH=[installdir('libdir')]) | ||
| 21 | -if env["shared"]: | ||
| 22 | - env.Prepend(RPATH=[installdir('libdir')]) | ||
| 23 | +if env['sysroot']: | ||
| 24 | + env.Prepend(LIBPATH=[os.path.normpath("%s/%s/%s" % (env['sysroot'], env['prefix'], env['libdir']))]) | ||
| 25 | + if env["shared"]: | ||
| 26 | + env.Prepend(RPATH=[os.path.normpath("%s/%s/%s" % (env['sysroot'], env['prefix'], env['libdir']))]) | ||
| 27 | +else: | ||
| 28 | + env.Prepend(LIBPATH=[installdir('libdir')]) | ||
| 29 | + if env["shared"]: | ||
| 30 | + env.Prepend(RPATH=[installdir('libdir')]) | ||
| 31 | |||
| 32 | # Give deheader a way to set compiler flags | ||
| 33 | if 'MORECFLAGS' in os.environ: | ||
| 34 | -- | ||
| 35 | 1.7.8.5 | ||
| 36 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch b/meta-oe/recipes-navigation/gpsd/gpsd/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch new file mode 100644 index 0000000000..55ef7042d9 --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | From 5266eb72cbc8193faa2345b8774b0f159e61c067 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 11:52:35 +0200 | ||
| 4 | Subject: [PATCH 2/4] SConstruct: respect sysroot also in SPLINTOPTS | ||
| 5 | |||
| 6 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 7 | --- | ||
| 8 | SConstruct | 5 ++++- | ||
| 9 | 1 files changed, 4 insertions(+), 1 deletions(-) | ||
| 10 | |||
| 11 | diff --git a/SConstruct b/SConstruct | ||
| 12 | index 21b2205..0cf5799 100644 | ||
| 13 | --- a/SConstruct | ||
| 14 | +++ b/SConstruct | ||
| 15 | @@ -1224,7 +1224,10 @@ def Utility(target, source, action): | ||
| 16 | |||
| 17 | # Report splint warnings | ||
| 18 | # Note: test_bits.c is unsplintable because of the PRI64 macros. | ||
| 19 | -env['SPLINTOPTS'] = "-I/usr/include/libusb-1.0 +quiet" | ||
| 20 | +if env['sysroot']: | ||
| 21 | + env['SPLINTOPTS'] = "-I%s/usr/include/libusb-1.0 +quiet" % env['sysroot'] | ||
| 22 | +else: | ||
| 23 | + env['SPLINTOPTS'] = "-I/usr/include/libusb-1.0 +quiet" | ||
| 24 | |||
| 25 | def Splint(target,sources, description, params): | ||
| 26 | return Utility(target,sources+generated_sources,[ | ||
| 27 | -- | ||
| 28 | 1.7.8.5 | ||
| 29 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd/0003-Revert-The-strptime-prototype-is-not-provided-unless.patch b/meta-oe/recipes-navigation/gpsd/gpsd/0003-Revert-The-strptime-prototype-is-not-provided-unless.patch new file mode 100644 index 0000000000..c2d191c850 --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd/0003-Revert-The-strptime-prototype-is-not-provided-unless.patch | |||
| @@ -0,0 +1,39 @@ | |||
| 1 | From c6bb11767172407bfaaebd962b4d12cd8e8a1fb0 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 14:57:04 +0200 | ||
| 4 | Subject: [PATCH 3/4] Revert "The strptime prototype is not provided unless | ||
| 5 | explicitly requested." | ||
| 6 | |||
| 7 | * This reverts commit 615d3eb14ea4833ce38ea89ec385308f4f679b33. | ||
| 8 | * with _XOPEN_SOURCE defined, we don't have | ||
| 9 | CLOCK_REALTIME and timespec defined and build fails: | ||
| 10 | | arm-oe-linux-gnueabi-gcc -march=armv4t -mthumb -mthumb-interwork -mtune=arm920t --sysroot=/OE/shr-core/tmp-eglibc/sysroots/om-gta02 -o gpsutils.os -c -O2 -pipe -g -feliminate-unused-debug-types --sysroot=/OE/shr-core/tmp-eglibc/sysroots/om-gta02 -O2 -fPIC gpsutils.c | ||
| 11 | | gpsutils.c: In function 'timestamp': | ||
| 12 | | gpsutils.c:299:22: error: storage size of 'ts' isn't known | ||
| 13 | | gpsutils.c:300:34: error: 'CLOCK_REALTIME' undeclared (first use in this function) | ||
| 14 | | gpsutils.c:300:34: note: each undeclared identifier is reported only once for each function it appears in | ||
| 15 | | gpsutils.c: In function 'unix_to_iso8601': | ||
| 16 | | gpsutils.c:385:11: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default] | ||
| 17 | --- | ||
| 18 | gpsutils.c | 5 ----- | ||
| 19 | 1 files changed, 0 insertions(+), 5 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/gpsutils.c b/gpsutils.c | ||
| 22 | index 60c4ae9..a1530ec 100644 | ||
| 23 | --- a/gpsutils.c | ||
| 24 | +++ b/gpsutils.c | ||
| 25 | @@ -3,11 +3,6 @@ | ||
| 26 | * This file is Copyright (c) 2010 by the GPSD project | ||
| 27 | * BSD terms apply: see the file COPYING in the distribution root for details. | ||
| 28 | */ | ||
| 29 | - | ||
| 30 | -/* The strptime prototype is not provided unless explicitly requested. | ||
| 31 | - * So add the define that POSIX says to to avoid: */ | ||
| 32 | -#define _XOPEN_SOURCE | ||
| 33 | - | ||
| 34 | #include <stdio.h> | ||
| 35 | #include <time.h> | ||
| 36 | #include <sys/time.h> | ||
| 37 | -- | ||
| 38 | 1.7.8.5 | ||
| 39 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd/0004-SConstruct-remove-rpath.patch b/meta-oe/recipes-navigation/gpsd/gpsd/0004-SConstruct-remove-rpath.patch new file mode 100644 index 0000000000..add624b826 --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd/0004-SConstruct-remove-rpath.patch | |||
| @@ -0,0 +1,41 @@ | |||
| 1 | From b59f8c5bf8519a5ca114696e79b8690ebb68e0d3 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Tue, 24 Apr 2012 16:24:35 +0200 | ||
| 4 | Subject: [PATCH 4/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 | |||
| 16 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 17 | --- | ||
| 18 | SConstruct | 7 +++++-- | ||
| 19 | 1 files changed, 5 insertions(+), 2 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/SConstruct b/SConstruct | ||
| 22 | index 0cf5799..3c919fc 100644 | ||
| 23 | --- a/SConstruct | ||
| 24 | +++ b/SConstruct | ||
| 25 | @@ -1152,8 +1152,11 @@ if qt_env: | ||
| 26 | |||
| 27 | # We don't use installdir here in order to avoid having DESTDIR affect the rpath | ||
| 28 | if env["shared"]: | ||
| 29 | - env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \ | ||
| 30 | - % (installdir('libdir', False), )) | ||
| 31 | + if env['sysroot']: | ||
| 32 | + env.AddPostAction(binaryinstall, '$CHRPATH -d "$TARGET"') | ||
| 33 | + else: | ||
| 34 | + env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \ | ||
| 35 | + % (installdir('libdir', False), )) | ||
| 36 | |||
| 37 | if not env['debug'] and not env['profiling'] and env['strip']: | ||
| 38 | env.AddPostAction(binaryinstall, '$STRIP $TARGET') | ||
| 39 | -- | ||
| 40 | 1.7.8.5 | ||
| 41 | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/60-gpsd.rules b/meta-oe/recipes-navigation/gpsd/gpsd/60-gpsd.rules index c01db068de..c01db068de 100644 --- a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/60-gpsd.rules +++ b/meta-oe/recipes-navigation/gpsd/gpsd/60-gpsd.rules | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd b/meta-oe/recipes-navigation/gpsd/gpsd/gpsd index ba73dafb2c..ba73dafb2c 100755 --- a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd +++ b/meta-oe/recipes-navigation/gpsd/gpsd/gpsd | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd-default b/meta-oe/recipes-navigation/gpsd/gpsd/gpsd-default index 0ceff03824..0ceff03824 100644 --- a/meta-oe/recipes-navigation/gpsd/gpsd-2.96/gpsd-default +++ b/meta-oe/recipes-navigation/gpsd/gpsd/gpsd-default | |||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb b/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb new file mode 100644 index 0000000000..7f6d0ba319 --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb | |||
| @@ -0,0 +1,127 @@ | |||
| 1 | DESCRIPTION = "A TCP/IP Daemon simplifying the communication with GPS devices" | ||
| 2 | SECTION = "console/network" | ||
| 3 | LICENSE = "BSD" | ||
| 4 | LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" | ||
| 5 | DEPENDS = "dbus dbus-glib ncurses python libusb1 chrpath-native" | ||
| 6 | PROVIDES = "virtual/gpsd" | ||
| 7 | |||
| 8 | SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \ | ||
| 9 | file://0001-SConstruct-fix-DSO-build-for-ntpshm-garmin_monitor.patch \ | ||
| 10 | file://0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch \ | ||
| 11 | file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ | ||
| 12 | file://0004-SConstruct-remove-rpath.patch \ | ||
| 13 | file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ | ||
| 14 | file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \ | ||
| 15 | file://gpsd-default \ | ||
| 16 | file://gpsd \ | ||
| 17 | file://60-gpsd.rules \ | ||
| 18 | " | ||
| 19 | SRC_URI[md5sum] = "c01353459faa68834309109d4e868460" | ||
| 20 | SRC_URI[sha256sum] = "79f7de9ead63c7f5d2c9a92e85b5f82e53323c4d451ef8e27ea265ac3ef9a70f" | ||
| 21 | |||
| 22 | inherit scons update-rc.d python-dir systemd | ||
| 23 | |||
| 24 | INITSCRIPT_NAME = "gpsd" | ||
| 25 | INITSCRIPT_PARAMS = "defaults 35" | ||
| 26 | |||
| 27 | SYSTEMD_PACKAGES = "${PN}-systemd" | ||
| 28 | SYSTEMD_SERVICE = "${PN}.socket" | ||
| 29 | |||
| 30 | export STAGING_INCDIR | ||
| 31 | export STAGING_LIBDIR | ||
| 32 | |||
| 33 | EXTRA_OESCONS = " \ | ||
| 34 | sysroot=${STAGING_DIR_TARGET} \ | ||
| 35 | libQgpsmm='false' \ | ||
| 36 | debug='true' \ | ||
| 37 | strip='false' \ | ||
| 38 | systemd='true' \ | ||
| 39 | " | ||
| 40 | # this cannot be used, because then chrpath is not found and only static lib is built | ||
| 41 | # target=${HOST_SYS} | ||
| 42 | |||
| 43 | do_compile_prepend() { | ||
| 44 | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" | ||
| 45 | export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" pkg-config" | ||
| 46 | export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" | ||
| 47 | |||
| 48 | export BUILD_SYS="${BUILD_SYS}" | ||
| 49 | export HOST_SYS="${HOST_SYS}" | ||
| 50 | } | ||
| 51 | |||
| 52 | do_install() { | ||
| 53 | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" | ||
| 54 | export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" pkg-config" | ||
| 55 | export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" | ||
| 56 | |||
| 57 | export BUILD_SYS="${BUILD_SYS}" | ||
| 58 | export HOST_SYS="${HOST_SYS}" | ||
| 59 | |||
| 60 | export DESTDIR="${D}" | ||
| 61 | # prefix is used for RPATH and DESTDIR/prefix for instalation | ||
| 62 | ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} install ${EXTRA_OESCONS}|| \ | ||
| 63 | bbfatal "scons install execution failed." | ||
| 64 | } | ||
| 65 | |||
| 66 | do_install_append() { | ||
| 67 | install -d ${D}/${sysconfdir}/init.d | ||
| 68 | install -m 0755 ${WORKDIR}/gpsd ${D}/${sysconfdir}/init.d/ | ||
| 69 | install -d ${D}/${sysconfdir}/default | ||
| 70 | install -m 0644 ${WORKDIR}/gpsd-default ${D}/${sysconfdir}/default/gpsd.default | ||
| 71 | |||
| 72 | #support for udev | ||
| 73 | install -d ${D}/${sysconfdir}/udev/rules.d | ||
| 74 | install -m 0644 ${WORKDIR}/60-gpsd.rules ${D}/${sysconfdir}/udev/rules.d | ||
| 75 | install -d ${D}${base_libdir}/udev/ | ||
| 76 | install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/ | ||
| 77 | |||
| 78 | #support for python | ||
| 79 | install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps | ||
| 80 | install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps | ||
| 81 | |||
| 82 | #support for systemd | ||
| 83 | install -d ${D}${systemd_unitdir}/system/ | ||
| 84 | install -m 0644 ${S}/systemd/${PN}.service ${D}${systemd_unitdir}/system/${PN}.service | ||
| 85 | install -m 0644 ${S}/systemd/${PN}.socket ${D}${systemd_unitdir}/system/${PN}.socket | ||
| 86 | } | ||
| 87 | |||
| 88 | pkg_postinst_${PN}-conf() { | ||
| 89 | update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults ${sysconfdir}/default/gpsd.default 10 | ||
| 90 | } | ||
| 91 | |||
| 92 | pkg_postrm_${PN}-conf() { | ||
| 93 | update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default | ||
| 94 | } | ||
| 95 | |||
| 96 | PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gps-utils" | ||
| 97 | |||
| 98 | FILES_gpsd-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc" | ||
| 99 | |||
| 100 | FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" | ||
| 101 | |||
| 102 | RDEPENDS_${PN} = "gpsd-gpsctl" | ||
| 103 | RRECOMMENDS_${PN} = "gpsd-conf gpsd-udev" | ||
| 104 | |||
| 105 | DESCRIPTION_gpsd-udev = "udev relevant files to use gpsd hotplugging" | ||
| 106 | FILES_gpsd-udev = "${base_libdir}/udev ${sysconfdir}/udev/*" | ||
| 107 | RDEPENDS_gpsd-udev += "udev gpsd-conf" | ||
| 108 | |||
| 109 | DESCRIPTION_libgpsd = "C service library used for communicating with gpsd" | ||
| 110 | FILES_libgpsd = "${libdir}/libgpsd.so.*" | ||
| 111 | |||
| 112 | DESCRIPTION_libgps = "C service library used for communicating with gpsd" | ||
| 113 | FILES_libgps = "${libdir}/libgps.so.*" | ||
| 114 | |||
| 115 | DESCRIPTION_gpsd-conf = "gpsd configuration files and init scripts" | ||
| 116 | FILES_gpsd-conf = "${sysconfdir}" | ||
| 117 | |||
| 118 | DESCRIPTION_gpsd-gpsctl = "Tool for tweaking GPS modes" | ||
| 119 | FILES_gpsd-gpsctl = "${bindir}/gpsctl" | ||
| 120 | |||
| 121 | DESCRIPTION_gps-utils = "Utils used for simulating, monitoring,... a GPS" | ||
| 122 | FILES_gps-utils = "${bindir}/*" | ||
| 123 | RDEPENDS_gps-utils = "python-pygps" | ||
| 124 | |||
| 125 | DESCRIPTION_python-pygps = "Python bindings to gpsd" | ||
| 126 | FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/*" | ||
| 127 | RDEPENDS_python-pygps = "python-core python-curses gpsd python-json" | ||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb b/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb new file mode 100644 index 0000000000..92060b2b2c --- /dev/null +++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb | |||
| @@ -0,0 +1,128 @@ | |||
| 1 | DESCRIPTION = "A TCP/IP Daemon simplifying the communication with GPS devices" | ||
| 2 | SECTION = "console/network" | ||
| 3 | LICENSE = "BSD" | ||
| 4 | LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" | ||
| 5 | DEPENDS = "dbus dbus-glib ncurses python libusb1" | ||
| 6 | PROVIDES = "virtual/gpsd" | ||
| 7 | |||
| 8 | DEFAULT_PREFERENCE = "-1" | ||
| 9 | SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \ | ||
| 10 | file://0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch \ | ||
| 11 | file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ | ||
| 12 | file://0003-Revert-The-strptime-prototype-is-not-provided-unless.patch \ | ||
| 13 | file://0004-SConstruct-remove-rpath.patch \ | ||
| 14 | file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ | ||
| 15 | file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \ | ||
| 16 | file://gpsd-default \ | ||
| 17 | file://gpsd \ | ||
| 18 | file://60-gpsd.rules \ | ||
| 19 | " | ||
| 20 | SRC_URI[md5sum] = "e96881798a0ab67aa3cd5f3249f0e536" | ||
| 21 | SRC_URI[sha256sum] = "5ebb0b00c49421eb8fbead81342e5ce63e82065e5ff27da586f10e342b999171" | ||
| 22 | |||
| 23 | inherit scons update-rc.d python-dir systemd | ||
| 24 | |||
| 25 | INITSCRIPT_NAME = "gpsd" | ||
| 26 | INITSCRIPT_PARAMS = "defaults 35" | ||
| 27 | |||
| 28 | SYSTEMD_PACKAGES = "${PN}-systemd" | ||
| 29 | SYSTEMD_SERVICE = "${PN}.socket" | ||
| 30 | |||
| 31 | export STAGING_INCDIR | ||
| 32 | export STAGING_LIBDIR | ||
| 33 | |||
| 34 | EXTRA_OESCONS = " \ | ||
| 35 | sysroot=${STAGING_DIR_TARGET} \ | ||
| 36 | libQgpsmm='false' \ | ||
| 37 | debug='true' \ | ||
| 38 | strip='false' \ | ||
| 39 | systemd='true' \ | ||
| 40 | " | ||
| 41 | # this cannot be used, because then chrpath is not found and only static lib is built | ||
| 42 | # target=${HOST_SYS} | ||
| 43 | |||
| 44 | do_compile_prepend() { | ||
| 45 | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" | ||
| 46 | export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" pkg-config" | ||
| 47 | export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" | ||
| 48 | |||
| 49 | export BUILD_SYS="${BUILD_SYS}" | ||
| 50 | export HOST_SYS="${HOST_SYS}" | ||
| 51 | } | ||
| 52 | |||
| 53 | do_install() { | ||
| 54 | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" | ||
| 55 | export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" pkg-config" | ||
| 56 | export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" | ||
| 57 | |||
| 58 | export BUILD_SYS="${BUILD_SYS}" | ||
| 59 | export HOST_SYS="${HOST_SYS}" | ||
| 60 | |||
| 61 | export DESTDIR="${D}" | ||
| 62 | # prefix is used for RPATH and DESTDIR/prefix for instalation | ||
| 63 | ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} install ${EXTRA_OESCONS}|| \ | ||
| 64 | bbfatal "scons install execution failed." | ||
| 65 | } | ||
| 66 | |||
| 67 | do_install_append() { | ||
| 68 | install -d ${D}/${sysconfdir}/init.d | ||
| 69 | install -m 0755 ${WORKDIR}/gpsd ${D}/${sysconfdir}/init.d/ | ||
| 70 | install -d ${D}/${sysconfdir}/default | ||
| 71 | install -m 0644 ${WORKDIR}/gpsd-default ${D}/${sysconfdir}/default/gpsd.default | ||
| 72 | |||
| 73 | #support for udev | ||
| 74 | install -d ${D}/${sysconfdir}/udev/rules.d | ||
| 75 | install -m 0644 ${WORKDIR}/60-gpsd.rules ${D}/${sysconfdir}/udev/rules.d | ||
| 76 | install -d ${D}${base_libdir}/udev/ | ||
| 77 | install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/ | ||
| 78 | |||
| 79 | #support for python | ||
| 80 | install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps | ||
| 81 | install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps | ||
| 82 | |||
| 83 | #support for systemd | ||
| 84 | install -d ${D}${systemd_unitdir}/system/ | ||
| 85 | install -m 0644 ${S}/systemd/${PN}.service ${D}${systemd_unitdir}/system/${PN}.service | ||
| 86 | install -m 0644 ${S}/systemd/${PN}.socket ${D}${systemd_unitdir}/system/${PN}.socket | ||
| 87 | } | ||
| 88 | |||
| 89 | pkg_postinst_${PN}-conf() { | ||
| 90 | update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults ${sysconfdir}/default/gpsd.default 10 | ||
| 91 | } | ||
| 92 | |||
| 93 | pkg_postrm_${PN}-conf() { | ||
| 94 | update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default | ||
| 95 | } | ||
| 96 | |||
| 97 | PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gps-utils" | ||
| 98 | |||
| 99 | FILES_gpsd-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc" | ||
| 100 | |||
| 101 | FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" | ||
| 102 | |||
| 103 | RDEPENDS_${PN} = "gpsd-gpsctl" | ||
| 104 | RRECOMMENDS_${PN} = "gpsd-conf gpsd-udev" | ||
| 105 | |||
| 106 | DESCRIPTION_gpsd-udev = "udev relevant files to use gpsd hotplugging" | ||
| 107 | FILES_gpsd-udev = "${base_libdir}/udev ${sysconfdir}/udev/*" | ||
| 108 | RDEPENDS_gpsd-udev += "udev gpsd-conf" | ||
| 109 | |||
| 110 | DESCRIPTION_libgpsd = "C service library used for communicating with gpsd" | ||
| 111 | FILES_libgpsd = "${libdir}/libgpsd.so.*" | ||
| 112 | |||
| 113 | DESCRIPTION_libgps = "C service library used for communicating with gpsd" | ||
| 114 | FILES_libgps = "${libdir}/libgps.so.*" | ||
| 115 | |||
| 116 | DESCRIPTION_gpsd-conf = "gpsd configuration files and init scripts" | ||
| 117 | FILES_gpsd-conf = "${sysconfdir}" | ||
| 118 | |||
| 119 | DESCRIPTION_gpsd-gpsctl = "Tool for tweaking GPS modes" | ||
| 120 | FILES_gpsd-gpsctl = "${bindir}/gpsctl" | ||
| 121 | |||
| 122 | DESCRIPTION_gps-utils = "Utils used for simulating, monitoring,... a GPS" | ||
| 123 | FILES_gps-utils = "${bindir}/*" | ||
| 124 | RDEPENDS_gps-utils = "python-pygps" | ||
| 125 | |||
| 126 | DESCRIPTION_python-pygps = "Python bindings to gpsd" | ||
| 127 | FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/*" | ||
| 128 | RDEPENDS_python-pygps = "python-core python-curses gpsd python-json" | ||
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_2.96.bb b/meta-oe/recipes-navigation/gpsd/gpsd_git.bb index 7e2a96cb11..2d01a77244 100644 --- a/meta-oe/recipes-navigation/gpsd/gpsd_2.96.bb +++ b/meta-oe/recipes-navigation/gpsd/gpsd_git.bb | |||
| @@ -2,27 +2,28 @@ DESCRIPTION = "A TCP/IP Daemon simplifying the communication with GPS devices" | |||
| 2 | SECTION = "console/network" | 2 | SECTION = "console/network" |
| 3 | LICENSE = "BSD" | 3 | LICENSE = "BSD" |
| 4 | LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" | 4 | LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" |
| 5 | DEPENDS = "dbus-glib ncurses python libusb1" | 5 | DEPENDS = "dbus dbus-glib ncurses python libusb1" |
| 6 | PROVIDES = "virtual/gpsd" | 6 | PROVIDES = "virtual/gpsd" |
| 7 | 7 | ||
| 8 | PR = "r3" | 8 | SRCREV = "f8744f4af8cef211de698df5d8e6caddfe33f29d" |
| 9 | 9 | ||
| 10 | EXTRA_OECONF = "--x-includes=${STAGING_INCDIR}/X11 \ | 10 | DEFAULT_PREFERENCE = "-1" |
| 11 | --x-libraries=${STAGING_LIBDIR} \ | 11 | PV = "3.5+gitr${SRCPV}" |
| 12 | --enable-dbus \ | 12 | |
| 13 | --disable-libQgpsmm \ | 13 | SRC_URI = "git://git.sv.gnu.org/gpsd.git;protocol=git;branch=master \ |
| 14 | file://0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch \ | ||
| 15 | file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ | ||
| 16 | file://0003-Revert-The-strptime-prototype-is-not-provided-unless.patch \ | ||
| 17 | file://0004-SConstruct-remove-rpath.patch \ | ||
| 18 | file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ | ||
| 19 | file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \ | ||
| 20 | file://gpsd-default \ | ||
| 21 | file://gpsd \ | ||
| 22 | file://60-gpsd.rules \ | ||
| 14 | " | 23 | " |
| 24 | S = "${WORKDIR}/git" | ||
| 15 | 25 | ||
| 16 | SRC_URI = "http://download.berlios.de/${PN}/${P}bis.tar.gz;name=gpsd \ | 26 | inherit scons update-rc.d python-dir systemd |
| 17 | file://gpsd-default \ | ||
| 18 | file://gpsd \ | ||
| 19 | file://gpsd.socket \ | ||
| 20 | file://gpsd.service \ | ||
| 21 | file://60-gpsd.rules" | ||
| 22 | SRC_URI[gpsd.md5sum] = "52b00cab0fb34bbf1923ae35c7ced6c4" | ||
| 23 | SRC_URI[gpsd.sha256sum] = "c6d72565bc06b802c749e69808eb7c6ee165962dc17383971c9001b5e1763690" | ||
| 24 | |||
| 25 | inherit autotools update-rc.d python-dir systemd | ||
| 26 | 27 | ||
| 27 | INITSCRIPT_NAME = "gpsd" | 28 | INITSCRIPT_NAME = "gpsd" |
| 28 | INITSCRIPT_PARAMS = "defaults 35" | 29 | INITSCRIPT_PARAMS = "defaults 35" |
| @@ -30,29 +31,40 @@ INITSCRIPT_PARAMS = "defaults 35" | |||
| 30 | SYSTEMD_PACKAGES = "${PN}-systemd" | 31 | SYSTEMD_PACKAGES = "${PN}-systemd" |
| 31 | SYSTEMD_SERVICE = "${PN}.socket" | 32 | SYSTEMD_SERVICE = "${PN}.socket" |
| 32 | 33 | ||
| 33 | |||
| 34 | LDFLAGS += "-L${STAGING_LIBDIR} -lm" | ||
| 35 | export STAGING_INCDIR | 34 | export STAGING_INCDIR |
| 36 | export STAGING_LIBDIR | 35 | export STAGING_LIBDIR |
| 37 | 36 | ||
| 38 | TARGET_CC_ARCH += "${LDFLAGS}" | 37 | EXTRA_OESCONS = " \ |
| 39 | 38 | sysroot=${STAGING_DIR_TARGET} \ | |
| 40 | do_configure_prepend() { | 39 | libQgpsmm='false' \ |
| 41 | # skip first | 40 | debug='true' \ |
| 42 | sed -i "s#for pylibpath in '/usr/lib'#for pylibpath in #g" ${S}/configure.ac | 41 | strip='false' \ |
| 43 | # disable xmlto, in case xsltproc doesn't work xmlto is used and fails | 42 | systemd='true' \ |
| 44 | sed -i "s#AC_CHECK_PROG(WITH_XMLTO#AC_CHECK_PROG(WITH_XMLTO_DISABLED_IN_OE#g" ${S}/configure.ac | 43 | " |
| 45 | } | 44 | # this cannot be used, because then chrpath is not found and only static lib is built |
| 45 | # target=${HOST_SYS} | ||
| 46 | 46 | ||
| 47 | do_compile_prepend() { | 47 | do_compile_prepend() { |
| 48 | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" | ||
| 49 | export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" pkg-config" | ||
| 50 | export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" | ||
| 51 | |||
| 48 | export BUILD_SYS="${BUILD_SYS}" | 52 | export BUILD_SYS="${BUILD_SYS}" |
| 49 | export HOST_SYS="${HOST_SYS}" | 53 | export HOST_SYS="${HOST_SYS}" |
| 50 | find ${S} -name "*.so" -exec rm -f {} \; | ||
| 51 | } | 54 | } |
| 52 | 55 | ||
| 53 | do_install_prepend() { | 56 | do_install() { |
| 57 | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" | ||
| 58 | export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" pkg-config" | ||
| 59 | export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" | ||
| 60 | |||
| 54 | export BUILD_SYS="${BUILD_SYS}" | 61 | export BUILD_SYS="${BUILD_SYS}" |
| 55 | export HOST_SYS="${HOST_SYS}" | 62 | export HOST_SYS="${HOST_SYS}" |
| 63 | |||
| 64 | export DESTDIR="${D}" | ||
| 65 | # prefix is used for RPATH and DESTDIR/prefix for instalation | ||
| 66 | ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} install ${EXTRA_OESCONS}|| \ | ||
| 67 | bbfatal "scons install execution failed." | ||
| 56 | } | 68 | } |
| 57 | 69 | ||
| 58 | do_install_append() { | 70 | do_install_append() { |
| @@ -66,8 +78,15 @@ do_install_append() { | |||
| 66 | install -m 0644 ${WORKDIR}/60-gpsd.rules ${D}/${sysconfdir}/udev/rules.d | 78 | install -m 0644 ${WORKDIR}/60-gpsd.rules ${D}/${sysconfdir}/udev/rules.d |
| 67 | install -d ${D}${base_libdir}/udev/ | 79 | install -d ${D}${base_libdir}/udev/ |
| 68 | install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/ | 80 | install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/ |
| 69 | install -d ${D}${base_libdir}/udev/ | 81 | |
| 70 | install -m 0755 ${S}/gpsd.hotplug.wrapper ${D}${base_libdir}/udev/ | 82 | #support for python |
| 83 | install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps | ||
| 84 | install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps | ||
| 85 | |||
| 86 | #support for systemd | ||
| 87 | install -d ${D}${systemd_unitdir}/system/ | ||
| 88 | install -m 0644 ${S}/systemd/${PN}.service ${D}${systemd_unitdir}/system/${PN}.service | ||
| 89 | install -m 0644 ${S}/systemd/${PN}.socket ${D}${systemd_unitdir}/system/${PN}.socket | ||
| 71 | } | 90 | } |
| 72 | 91 | ||
| 73 | pkg_postinst_${PN}-conf() { | 92 | pkg_postinst_${PN}-conf() { |
| @@ -75,11 +94,13 @@ pkg_postinst_${PN}-conf() { | |||
| 75 | } | 94 | } |
| 76 | 95 | ||
| 77 | pkg_postrm_${PN}-conf() { | 96 | pkg_postrm_${PN}-conf() { |
| 78 | update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default | 97 | update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default |
| 79 | } | 98 | } |
| 80 | 99 | ||
| 81 | PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gps-utils" | 100 | PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gps-utils" |
| 82 | 101 | ||
| 102 | FILES_gpsd-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc" | ||
| 103 | |||
| 83 | FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" | 104 | FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" |
| 84 | 105 | ||
| 85 | RDEPENDS_${PN} = "gpsd-gpsctl" | 106 | RDEPENDS_${PN} = "gpsd-gpsctl" |
| @@ -95,7 +116,7 @@ FILES_libgpsd = "${libdir}/libgpsd.so.*" | |||
| 95 | DESCRIPTION_libgps = "C service library used for communicating with gpsd" | 116 | DESCRIPTION_libgps = "C service library used for communicating with gpsd" |
| 96 | FILES_libgps = "${libdir}/libgps.so.*" | 117 | FILES_libgps = "${libdir}/libgps.so.*" |
| 97 | 118 | ||
| 98 | DESCRIPTION_gpsd-conf = "gpsd configuration files and init scripts" | 119 | DESCRIPTION_gpsd-conf = "gpsd configuration files and init scripts" |
| 99 | FILES_gpsd-conf = "${sysconfdir}" | 120 | FILES_gpsd-conf = "${sysconfdir}" |
| 100 | 121 | ||
| 101 | DESCRIPTION_gpsd-gpsctl = "Tool for tweaking GPS modes" | 122 | DESCRIPTION_gpsd-gpsctl = "Tool for tweaking GPS modes" |
