improve architecture detection
authorNils Philippsen <nils@tiptoe.de>
Sat, 9 Nov 2013 09:54:47 +0000 (10:54 +0100)
committerNils Philippsen <nils@tiptoe.de>
Mon, 9 Dec 2013 11:16:54 +0000 (12:16 +0100)
Recognize ppc64, ppc, s390x, s390 CPUs, default to 'none' instead of
i686 (which tries to build with SSE and fails on non-x86 architectures).

wscript

diff --git a/wscript b/wscript
index 99bd46ddef4e9494de9b512d81df2fe3d8343ebd..13060707ea2dd06cb7af044f961bd70eba9c1343 100644 (file)
--- a/wscript
+++ b/wscript
@@ -182,16 +182,15 @@ def set_compiler_flags (conf,opt):
             else:
                 conf.env['build_target'] = 'mountainlion'
         else:
-            if re.search ("x86_64", cpu) != None:
-                conf.env['build_target'] = 'x86_64'
-            elif re.search("i[0-5]86", cpu) != None:
-                conf.env['build_target'] = 'i386'
-            elif re.search("powerpc", cpu) != None:
-                conf.env['build_target'] = 'powerpc'
-            elif re.search("arm", cpu) != None:
-                conf.env['build_target'] = 'arm'
+            match = re.search(
+                    "(?P<cpu>i[0-6]86|x86_64|powerpc|ppc|ppc64|arm|s390x?)",
+                    cpu)
+            if (match):
+                conf.env['build_target'] = match.group("cpu")
+                if re.search("i[0-5]86", conf.env['build_target']):
+                    conf.env['build_target'] = "i386"
             else:
-                conf.env['build_target'] = 'i686'
+                conf.env['build_target'] = 'none'
     else:
         conf.env['build_target'] = opt.dist_target