Alexandre Julliard : winebuild: Add win32/ win64 generic architectures in addition to specific CPUs.

Alexandre Julliard julliard at winehq.org
Mon Aug 24 10:08:50 CDT 2009


Module: wine
Branch: master
Commit: 3f7d342cfa8514d1ca1dfbe1ae47f132e44a2d98
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=3f7d342cfa8514d1ca1dfbe1ae47f132e44a2d98

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Aug 24 12:49:07 2009 +0200

winebuild: Add win32/win64 generic architectures in addition to specific CPUs.

---

 tools/winebuild/build.h  |    2 ++
 tools/winebuild/parser.c |   17 ++++++++++++-----
 2 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/tools/winebuild/build.h b/tools/winebuild/build.h
index 7ca10c1..07ac347 100644
--- a/tools/winebuild/build.h
+++ b/tools/winebuild/build.h
@@ -145,6 +145,8 @@ extern enum target_platform target_platform;
 
 #define FLAG_CPU(cpu)  (0x01000 << (cpu))
 #define FLAG_CPU_MASK  0x1f000
+#define FLAG_CPU_WIN64 (FLAG_CPU(CPU_x86_64))
+#define FLAG_CPU_WIN32 (FLAG_CPU_MASK & ~FLAG_CPU_WIN64)
 
 #define MAX_ORDINALS  65535
 
diff --git a/tools/winebuild/parser.c b/tools/winebuild/parser.c
index 59640d8..642ccac 100644
--- a/tools/winebuild/parser.c
+++ b/tools/winebuild/parser.c
@@ -435,13 +435,20 @@ static const char *parse_spec_flags( ORDDEF *odp )
             char *cpu_name = strtok( args, "," );
             while (cpu_name)
             {
-                enum target_cpu cpu = get_cpu_from_name( cpu_name );
-                if (cpu == -1)
+                if (!strcmp( cpu_name, "win32" ))
+                    odp->flags |= FLAG_CPU_WIN32;
+                else if (!strcmp( cpu_name, "win64" ))
+                    odp->flags |= FLAG_CPU_WIN64;
+                else
                 {
-                    error( "Unknown architecture '%s'\n", cpu_name );
-                    return NULL;
+                    enum target_cpu cpu = get_cpu_from_name( cpu_name );
+                    if (cpu == -1)
+                    {
+                        error( "Unknown architecture '%s'\n", cpu_name );
+                        return NULL;
+                    }
+                    odp->flags |= FLAG_CPU( cpu );
                 }
-                odp->flags |= FLAG_CPU( cpu );
                 cpu_name = strtok( NULL, "," );
             }
             free( args );




More information about the wine-cvs mailing list