configure.ac: add option --with-gallium-drivers=DIRS
[mesa.git] / scons / crossmingw.py
index 9533b2b362c31cdce9aa7bf76b646b4673d39b73..cc046229e2c6dcfc93da4099c3633bf107087330 100644 (file)
@@ -42,7 +42,7 @@ import SCons.Tool
 import SCons.Util
 
 # This is what we search for to find mingw:
-prefixes = SCons.Util.Split("""
+prefixes32 = SCons.Util.Split("""
     mingw32-
     mingw32msvc-
     i386-mingw32-
@@ -54,9 +54,20 @@ prefixes = SCons.Util.Split("""
     i586-mingw32msvc-
     i686-mingw32msvc-
     i686-pc-mingw32-
+    i686-w64-mingw32-
+""")
+prefixes64 = SCons.Util.Split("""
+    amd64-mingw32-
+    amd64-mingw32msvc-
+    amd64-pc-mingw32-
+    x86_64-w64-mingw32-
 """)
 
 def find(env):
+    if env['machine'] == 'x86_64':
+        prefixes = prefixes64
+    else:
+        prefixes = prefixes32
     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'):
@@ -183,5 +194,8 @@ def generate(env):
     env.AppendUnique(SHLINKFLAGS = ['-Wl,--enable-stdcall-fixup'])
     #env.AppendUnique(SHLINKFLAGS = ['-Wl,--kill-at'])
 
+    # Avoid depending on gcc runtime DLLs
+    env.AppendUnique(LINKFLAGS = ['-static-libgcc'])
+
 def exists(env):
     return find(env)