From 3f7d342cfa8514d1ca1dfbe1ae47f132e44a2d98 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Mon, 24 Aug 2009 12:49:07 +0200 Subject: [PATCH] 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 7ca10c18988..07ac347dfb6 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 59640d8f26a..642ccacb0ba 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 ); -- 2.11.4.GIT