bugfix: enable package nsis to use the correct MinGW cross toolchain on systems where multiple MinGW cross toolchains are present

This commit is contained in:
Volker Grabsch 2011-05-21 01:46:16 +02:00
parent 21d02040b6
commit 5892199502
2 changed files with 40 additions and 0 deletions

View File

@ -0,0 +1,39 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This patch has been taken from:
http://sourceforge.net/tracker/index.php?func=detail&aid=3305366&group_id=22049&atid=373085
--- a/SCons/Tools/crossmingw.py
+++ b/SCons/Tools/crossmingw.py
@@ -61,6 +61,9 @@ prefixes = SCons.Util.Split("""
""")
def find(env):
+ if env.has_key('MINGW_CROSS_PREFIX'):
+ return env['MINGW_CROSS_PREFIX']
+
for prefix in prefixes:
# First search in the SCons path and then the OS path:
if env.WhereIs(prefix + 'gcc') or SCons.Util.WhereIs(prefix + 'gcc'):
diff --git a/SConstruct b/SConstruct
index 80872bc..4f113dd 100755
--- a/SConstruct
+++ b/SConstruct
@@ -59,6 +59,7 @@ doc = [
path = ARGUMENTS.get('PATH', '')
toolset = ARGUMENTS.get('TOOLSET', '')
+mingw_cross_prefix = ARGUMENTS.get('MINGW_CROSS_PREFIX', '')
if toolset and path:
defenv = Environment(ENV = {'PATH' : path}, TOOLS = toolset.split(',') + ['zip'])
@@ -69,6 +70,8 @@ else:
defenv = Environment(TOOLS = toolset.split(',') + ['zip'])
if not toolset and not path:
defenv = Environment()
+if mingw_cross_prefix:
+ defenv['MINGW_CROSS_PREFIX'] = mingw_cross_prefix
Export('defenv')

View File

@ -21,6 +21,7 @@ endef
define $(PKG)_BUILD
cd '$(1)' && scons \
MINGW_CROSS_PREFIX='$(TARGET)-' \
PREFIX='$(PREFIX)/$(TARGET)' \
`[ -d /usr/local/include ] && echo APPEND_CPPPATH=/usr/local/include` \
`[ -d /usr/local/lib ] && echo APPEND_LIBPATH=/usr/local/lib` \