[1/2] winebuild: Use -mcpu option for the assembler
André Hentschel
nerv at dawncrow.de
Wed Apr 27 12:45:11 CDT 2011
spottet by jim11 in the Forum while crosscompiling Wine for ARM
http://forum.winehq.org/viewtopic.php?p=60110#60110
---
tools/winebuild/build.h | 1 +
tools/winebuild/main.c | 8 ++++++--
tools/winebuild/utils.c | 4 ++++
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/tools/winebuild/build.h b/tools/winebuild/build.h
index 2429446..b64c9a0 100644
--- a/tools/winebuild/build.h
+++ b/tools/winebuild/build.h
@@ -361,5 +361,6 @@ extern char **lib_path;
extern char *as_command;
extern char *ld_command;
extern char *nm_command;
+extern char *cpu_option;
#endif /* __WINE_BUILD_H */
diff --git a/tools/winebuild/main.c b/tools/winebuild/main.c
index f6d39b0..7493c8a 100644
--- a/tools/winebuild/main.c
+++ b/tools/winebuild/main.c
@@ -88,6 +88,7 @@ static int fake_module;
char *as_command = NULL;
char *ld_command = NULL;
char *nm_command = NULL;
+char *cpu_option = NULL;
static int nb_res_files;
static char **res_files;
@@ -379,10 +380,13 @@ static char **parse_options( int argc, char **argv, DLLSPEC *spec )
lib_path[nb_lib_paths++] = xstrdup( optarg );
break;
case 'm':
- if (strcmp( optarg, "16" ) && strcmp( optarg, "32" ) && strcmp( optarg, "64" ))
- fatal_error( "Invalid -m option '%s', expected -m16, -m32 or -m64\n", optarg );
+ if (strcmp( optarg, "16" ) && strcmp( optarg, "32" ) && strcmp( optarg, "64" ) && strncmp( optarg, "cpu", 3 ))
+ fatal_error( "Invalid -m option '%s', expected -m16, -m32, -m64 or -mcpu\n", optarg );
if (!strcmp( optarg, "16" )) spec->type = SPEC_WIN16;
else if (!strcmp( optarg, "32" )) force_pointer_size = 4;
+ else if (!strncmp( optarg, "cpu=", 4 )) cpu_option = xstrdup( optarg + 4 );
+ else if (!strncmp( optarg, "cpu", 3 ))
+ fatal_error( "Specify a cpu in the form -mcpu=target\n" );
else force_pointer_size = 8;
break;
case 'M':
diff --git a/tools/winebuild/utils.c b/tools/winebuild/utils.c
index ad637b6..3ad46b8 100644
--- a/tools/winebuild/utils.c
+++ b/tools/winebuild/utils.c
@@ -362,6 +362,10 @@ struct strarray *get_as_command(void)
break;
}
}
+
+ if (cpu_option)
+ strarray_add_one( args, strmake("-mcpu=%s", cpu_option) );
+
return args;
}
--
Best Regards, André Hentschel
More information about the wine-patches
mailing list