aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-navigation/gpsd
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2012-04-24 19:17:52 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2012-04-30 08:25:13 +0200
commitc6135b0d88a39354ba4213e71ef0941c48d88707 (patch)
treece588863c7988a5f09a4bafbbc5d7383221414a5 /meta-oe/recipes-navigation/gpsd
parente0daf8c15aee69422a5229436473accbf28bd119 (diff)
downloadmeta-openembedded-c6135b0d88a39354ba4213e71ef0941c48d88707.tar.gz
gpsd-3.4: fix python paths and RPATHs
* see included patch for description Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-navigation/gpsd')
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd-3.4/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch72
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb1
2 files changed, 73 insertions, 0 deletions
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 @@
+From bc224302f1665078c8d15138318709c1a1c2c0a0 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Tue, 24 Apr 2012 18:45:14 +0200
+Subject: [PATCH] SConstruct: prefix includepy with sysroot and drop sysroot
+ from python_lib_dir
+
+* without PYTHONPATH, distutil's sysconfig returns INCLUDEPY without sysroot prefix
+ and with PYTHONPATH from OE it's pointing to native python dir
+
+ $ export PYTHONPATH=/OE/shr-core/tmp-eglibc/sysroots/om-gta02/usr/lib/python2.7/
+ $ python
+ Python 2.7.2 (default, Apr 18 2012, 09:19:59)
+ [GCC 4.6.2] on linux2
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> from distutils import sysconfig
+ >>> sysconfig.get_config_vars('INCLUDEPY')
+ ['/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/python2.7']
+ >>>
+ $ unset PYTHONPATH
+ $ python
+ Python 2.7.2 (default, Apr 18 2012, 09:19:59)
+ [GCC 4.6.2] on linux2
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> from distutils import sysconfig
+ >>> sysconfig.get_config_vars('INCLUDEPY')
+ ['/python2.7']
+ >>> import sysconfig
+ >>> sysconfig.get_config_vars('INCLUDEPY')
+ ['/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/python2.7']
+* python_lib_dir = python_lib_dir.replace(env['sysroot'], '')
+ returns path to target sysroot
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ SConstruct | 9 +++++++++
+ 1 files changed, 9 insertions(+), 0 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index 9ff00c1..9c0f751 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -924,6 +924,12 @@ else:
+ if vars[i] is None:
+ vars[i] = ""
+ (cc, cxx, opt, basecflags, ccshared, ldshared, so_ext, includepy) = vars
++
++ if env['sysroot']:
++ print "Prefixing includepy '%s' with sysroot prefix" % includepy
++ includepy = os.path.normpath("%s/%s/%s/%s" % (env['sysroot'], env['prefix'], env['includedir'], includepy))
++ print "'%s'" % includepy
++
+ # in case CC/CXX was set to the scan-build wrapper,
+ # ensure that we build the python modules with scan-build, too
+ if env['CC'] is None or env['CC'].find('scan-build') < 0:
+@@ -1158,11 +1164,14 @@ if not env['python']:
+ python_install = []
+ else:
+ python_lib_dir = sysconfig.get_python_lib(plat_specific=1)
++ python_lib_dir = python_lib_dir.replace(env['sysroot'], '')
+ python_module_dir = python_lib_dir + os.sep + 'gps'
+ python_extensions_install = python_env.Install( DESTDIR + python_module_dir,
+ python_built_extensions)
+ if not env['debug'] or env['profiling']:
+ python_env.AddPostAction(python_extensions_install, '$STRIP $TARGET')
++ env.AddPostAction(python_extensions_install, '$CHRPATH -r "%s" "$TARGET"' \
++ % (python_lib_dir, ))
+
+ python_modules_install = python_env.Install( DESTDIR + python_module_dir,
+ python_modules)
+--
+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 0796c34c03..37bd319eff 100644
--- a/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb
+++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.4.bb
@@ -10,6 +10,7 @@ SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \
file://0001-SConstruct-respect-sysroot-setting-when-prepending-L.patch \
file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \
file://0004-SConstruct-remove-rpath.patch \
+ file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \
file://gpsd-default \
file://gpsd \
file://60-gpsd.rules \