winegcc: On Mac OS, turn -s into -Wl,-x.

This commit is contained in:
Charles Davis 2011-10-05 17:07:38 -06:00 committed by Alexandre Julliard
parent cd919f60cf
commit 486783626f
1 changed files with 12 additions and 0 deletions

View File

@ -199,6 +199,7 @@ struct options
int force_pointer_size; int force_pointer_size;
int large_address_aware; int large_address_aware;
int unwind_tables; int unwind_tables;
int strip;
const char* wine_objdir; const char* wine_objdir;
const char* output_name; const char* output_name;
const char* image_base; const char* image_base;
@ -1009,6 +1010,8 @@ static void build(struct options* opts)
strarray_add(link_args, "-image_base"); strarray_add(link_args, "-image_base");
strarray_add(link_args, opts->image_base); strarray_add(link_args, opts->image_base);
} }
if (opts->strip)
strarray_add(link_args, "-Wl,-x");
break; break;
case PLATFORM_SOLARIS: case PLATFORM_SOLARIS:
{ {
@ -1417,6 +1420,15 @@ int main(int argc, char **argv)
opts.shared = 1; opts.shared = 1;
raw_compiler_arg = raw_linker_arg = 0; raw_compiler_arg = raw_linker_arg = 0;
} }
else if (strcmp("-s", argv[i]) == 0 && opts.target_platform == PLATFORM_APPLE)
{
/* On Mac, change -s into -Wl,-x. ld's -s switch
* is deprecated, and it doesn't work on Tiger with
* MH_BUNDLEs anyway
*/
opts.strip = 1;
raw_linker_arg = 0;
}
break; break;
case 'v': case 'v':
if (argv[i][2] == 0) verbose++; if (argv[i][2] == 0) verbose++;