[oe] Fwd: OE scons cross-compile patch

Tom King ka6sox at gmail.com
Sat Feb 11 23:24:02 UTC 2012


---------- Forwarded message ----------
From: S. Lockwood-Childs <sjl at vctlabs.com>
Date: Sat, Feb 11, 2012 at 4:03 PM
Subject: OE scons cross-compile patch
To: ka6sox at gmail.com


commit 9f66f474614696154d50156ada5f4c**1629b1b28c
Author: S Lockwood-Childs <sjl at vctlabs.com>
Date:   Sat Feb 11 15:07:17 2012 -0800

   cross-compile support for SCons

   scons build system searches paths for hard-coded tool names like "gcc",
   so this patch teaches it to check first for a tool with cross-compile
prefix
   if the CROSS_COMPILE variable has been set. If not found, it falls back
   to searching for the un-prefixed tool name.

   For example, if CROSS_COMPILE=arm-angstrom-**linux-gnueabi-
   SCons.Evironment.Detect('gcc') should find arm-angstrom-linux-gnueabi-gcc
   SCons.Evironment.Detect('zip') should find plain zip

diff --git a/meta/recipes-devtools/**python/python-scons-native/**scons-cross-toolchain.patch
b/meta/recipes-devtools/**python/python-scons-native/**
scons-cross-toolchain.patch
new file mode 100644
index 0000000..041279e
--- /dev/null
+++ b/meta/recipes-devtools/**python/python-scons-native/**
scons-cross-toolchain.patch
@@ -0,0 +1,17 @@
+--- scons-2.1.0/engine/SCons/**Environment.py.orig       2012-02-10
16:59:10.000000000 -0800
++++ scons-2.1.0/engine/SCons/**Environment.py    2012-02-11
13:29:15.000000000 -0800
+@@ -1483,6 +1483,14 @@
+         if not SCons.Util.is_List(progs):
+             progs = [ progs ]
+         for prog in progs:
++            # prefer cross version of program, if it exists
++            if 'CROSS_COMPILE' in self._dict:
++                cross_prog = self['CROSS_COMPILE'] + prog
++                #print "Looking for %s" % cross_prog
++                path = self.WhereIs(cross_prog)
++                if path: return cross_prog
++
++            #print "Looking for %s" % prog
+             path = self.WhereIs(prog)
+             if path: return prog
+         return None
diff --git a/meta/recipes-devtools/**python/python-scons-native_2.**1.0.bb<http://python-scons-native_2.1.0.bb>b/meta/recipes-devtools/
**python/python-scons-native_2.**1.0.bb<http://python-scons-native_2.1.0.bb>
index ff94cf6..c653237 100644
--- a/meta/recipes-devtools/**python/python-scons-native_2.**1.0.bb<http://python-scons-native_2.1.0.bb>
+++ b/meta/recipes-devtools/**python/python-scons-native_2.**1.0.bb<http://python-scons-native_2.1.0.bb>
@@ -2,4 +2,6 @@ require python-scons_${PV}.bb
 inherit native
 DEPENDS = "python-native"
 RDEPENDS_${PN} = ""
-PR = "r1"
+PR = "r2"
+
+SRC_URI += "file://scons-cross-toolchain.**patch"
-------------- next part --------------
A non-text attachment was scrubbed...
Name: oe-scons-cross-compile.patch
Type: text/x-diff
Size: 2266 bytes
Desc: not available
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20120211/2aa1cd6e/attachment-0002.bin>


More information about the Openembedded-devel mailing list