Fix some issues with winebuild
Dmitry Timoshkov
dmitry at baikal.ru
Tue May 22 09:27:13 CDT 2001
Hello.
Changelog:
Dmitry Timoshkov <dmitry at codeweavers.com>
Fix some issues with winebuild.
diff -u cvs/hq/wine/tools/winebuild/build.h wine/tools/winebuild/build.h
--- cvs/hq/wine/tools/winebuild/build.h Tue Feb 13 10:06:38 2001
+++ wine/tools/winebuild/build.h Tue May 22 21:46:54 2001
@@ -137,7 +137,7 @@
extern void add_import_dll( const char *name, int delay );
extern void add_ignore_symbol( const char *name );
-extern int resolve_imports( FILE *outfile );
+extern int resolve_imports( void );
extern int output_imports( FILE *outfile );
extern void load_res32_file( const char *name );
extern int output_resources( FILE *outfile );
diff -u cvs/hq/wine/tools/winebuild/import.c wine/tools/winebuild/import.c
--- cvs/hq/wine/tools/winebuild/import.c Tue Feb 13 10:06:38 2001
+++ wine/tools/winebuild/import.c Tue May 22 21:47:27 2001
@@ -317,7 +317,7 @@
}
/* resolve the imports for a Win32 module */
-int resolve_imports( FILE *outfile )
+int resolve_imports( void )
{
int i, j;
diff -u cvs/hq/wine/tools/winebuild/main.c wine/tools/winebuild/main.c
--- cvs/hq/wine/tools/winebuild/main.c Mon Jan 22 10:17:30 2001
+++ wine/tools/winebuild/main.c Tue May 22 21:48:43 2001
@@ -244,7 +244,10 @@
do_usage();
break;
}
- fclose( output_file );
- output_file_name = NULL;
+ if (output_file_name)
+ {
+ fclose( output_file );
+ output_file_name = NULL;
+ }
return 0;
}
diff -u cvs/hq/wine/tools/winebuild/parser.c wine/tools/winebuild/parser.c
--- cvs/hq/wine/tools/winebuild/parser.c Fri Feb 16 05:27:06 2001
+++ wine/tools/winebuild/parser.c Tue May 22 21:54:31 2001
@@ -264,8 +264,6 @@
fatal_error( "Too many arguments\n" );
odp->u.func.arg_types[i] = '\0';
- if ((odp->type == TYPE_STDCALL) && !i)
- odp->type = TYPE_CDECL; /* stdcall is the same as cdecl for 0 args */
if (odp->type == TYPE_VARARGS)
odp->flags |= FLAG_NORELAY; /* no relay debug possible for varags entry point */
odp->link_name = xstrdup( GetToken(0) );
diff -u cvs/hq/wine/tools/winebuild/spec16.c wine/tools/winebuild/spec16.c
--- cvs/hq/wine/tools/winebuild/spec16.c Thu Mar 29 20:34:56 2001
+++ wine/tools/winebuild/spec16.c Tue May 22 21:50:58 2001
@@ -519,8 +519,8 @@
fprintf( outfile, " void *rec, *addr;\n" );
fprintf( outfile, " unsigned int params;\n" );
fprintf( outfile, " const void *info[15];\n" );
- fprintf( outfile, " } rec;\n" );
- fprintf( outfile, " extern void RtlRaiseException( struct exc_record * );\n\n" );
+ fprintf( outfile, " } rec;\n\n" );
+ fprintf( outfile, " extern void __stdcall RtlRaiseException( struct exc_record * );\n\n" );
fprintf( outfile, " rec.code = 0x%08x;\n", EXCEPTION_WINE_STUB );
fprintf( outfile, " rec.flags = %d;\n", EH_NONCONTINUABLE );
fprintf( outfile, " rec.rec = 0;\n" );
@@ -582,6 +582,13 @@
strupper( DLLName );
fprintf( outfile, "static const char dllname[] = \"%s\";\n\n", DLLName );
+
+#ifdef __i386__
+ fprintf( outfile, "#define __stdcall __attribute__((__stdcall__))\n\n" );
+#else
+ fprintf( outfile, "#define __stdcall\n\n" );
+#endif
+
output_stub_funcs( outfile );
/* Build sorted list of all argument types, without duplicates */
diff -u cvs/hq/wine/tools/winebuild/spec32.c wine/tools/winebuild/spec32.c
--- cvs/hq/wine/tools/winebuild/spec32.c Sat Mar 24 13:52:41 2001
+++ wine/tools/winebuild/spec32.c Tue May 22 21:55:35 2001
@@ -441,7 +441,7 @@
AssignOrdinals();
nr_exports = Base <= Limit ? Limit - Base + 1 : 0;
- resolve_imports( outfile );
+ resolve_imports();
fprintf( outfile, "/* File generated automatically from %s; do not edit! */\n\n",
input_file_name );
@@ -451,7 +451,7 @@
fprintf( outfile, "extern char pe_header[];\n" );
fprintf( outfile, "asm(\".section .text\\n\\t\"\n" );
fprintf( outfile, " \".align %d\\n\"\n", get_alignment(page_size) );
- fprintf( outfile, " \"pe_header:\\t.fill %ld,1,0\\n\\t\");\n", page_size );
+ fprintf( outfile, " \"" PREFIX "pe_header:\\t.fill %ld,1,0\\n\\t\");\n", page_size );
fprintf( outfile, "static const char dllname[] = \"%s\";\n\n", DLLName );
fprintf( outfile, "extern int __wine_spec_exports[];\n\n" );
More information about the wine-patches
mailing list