summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-navigation/gpsd
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2012-04-24 18:29:20 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2012-04-30 08:25:13 +0200
commit867053702a7917ed599e87d415a7f210ecd5ff85 (patch)
treec8b2815c070dfd3c5e30313e8a4060ff8db2f194 /meta-oe/recipes-navigation/gpsd
parentc6135b0d88a39354ba4213e71ef0941c48d88707 (diff)
downloadmeta-openembedded-867053702a7917ed599e87d415a7f210ecd5ff85.tar.gz
gpsd: 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/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch72
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb1
-rw-r--r--meta-oe/recipes-navigation/gpsd/gpsd_git.bb1
3 files changed, 74 insertions, 0 deletions
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 000000000..c6eb03bf2
--- /dev/null
+++ b/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
@@ -0,0 +1,72 @@
1From dd3ca38b27cce93f7e932abaa27b41371234fa90 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
33Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
34---
35 SConstruct | 9 +++++++++
36 1 files changed, 9 insertions(+), 0 deletions(-)
37
38diff --git a/SConstruct b/SConstruct
39index 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--
711.7.8.5
72
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb b/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb
index bd65eae84..a1c8f9f7b 100644
--- a/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb
+++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.5.bb
@@ -11,6 +11,7 @@ SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \
11 file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ 11 file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \
12 file://0003-Revert-The-strptime-prototype-is-not-provided-unless.patch \ 12 file://0003-Revert-The-strptime-prototype-is-not-provided-unless.patch \
13 file://0004-SConstruct-remove-rpath.patch \ 13 file://0004-SConstruct-remove-rpath.patch \
14 file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \
14 file://gpsd-default \ 15 file://gpsd-default \
15 file://gpsd \ 16 file://gpsd \
16 file://60-gpsd.rules \ 17 file://60-gpsd.rules \
diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_git.bb b/meta-oe/recipes-navigation/gpsd/gpsd_git.bb
index 8bb0d3ebb..68f0b9dc1 100644
--- a/meta-oe/recipes-navigation/gpsd/gpsd_git.bb
+++ b/meta-oe/recipes-navigation/gpsd/gpsd_git.bb
@@ -15,6 +15,7 @@ SRC_URI = "git://git.sv.gnu.org/gpsd.git;protocol=git;branch=master \
15 file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ 15 file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \
16 file://0003-Revert-The-strptime-prototype-is-not-provided-unless.patch \ 16 file://0003-Revert-The-strptime-prototype-is-not-provided-unless.patch \
17 file://0004-SConstruct-remove-rpath.patch \ 17 file://0004-SConstruct-remove-rpath.patch \
18 file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \
18 file://gpsd-default \ 19 file://gpsd-default \
19 file://gpsd \ 20 file://gpsd \
20 file://60-gpsd.rules \ 21 file://60-gpsd.rules \