Module: wine Branch: master Commit: 054406f78c4acfcee39d8ee07510b66863c8e3bf URL: http://source.winehq.org/git/wine.git/?a=commit;h=054406f78c4acfcee39d8ee075...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Dec 30 12:50:17 2009 +0100
winebuild: Don't output private symbols at all when building an import library.
---
tools/winebuild/build.h | 2 +- tools/winebuild/import.c | 2 +- tools/winebuild/main.c | 2 +- tools/winebuild/spec32.c | 5 +++-- 4 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/tools/winebuild/build.h b/tools/winebuild/build.h index 0543eb1..8e21a45 100644 --- a/tools/winebuild/build.h +++ b/tools/winebuild/build.h @@ -257,6 +257,7 @@ extern int load_res32_file( const char *name, DLLSPEC *spec ); extern void output_resources( DLLSPEC *spec ); extern void output_bin_resources( DLLSPEC *spec, unsigned int start_rva ); extern void output_fake_module( DLLSPEC *spec ); +extern void output_def_file( DLLSPEC *spec, int include_private ); extern void load_res16_file( const char *name, DLLSPEC *spec ); extern void output_res16_data( DLLSPEC *spec ); extern void output_bin_res16_data( DLLSPEC *spec ); @@ -270,7 +271,6 @@ extern void BuildRelays16(void); extern void BuildRelays32(void); extern void BuildSpec16File( DLLSPEC *spec ); extern void BuildSpec32File( DLLSPEC *spec ); -extern void BuildDef32File( DLLSPEC *spec );
extern void add_16bit_exports( DLLSPEC *spec32, DLLSPEC *spec16 ); extern int parse_spec_file( FILE *file, DLLSPEC *spec ); diff --git a/tools/winebuild/import.c b/tools/winebuild/import.c index 648d29f..a81d564 100644 --- a/tools/winebuild/import.c +++ b/tools/winebuild/import.c @@ -1319,7 +1319,7 @@ void output_import_lib( DLLSPEC *spec, char **argv ) fclose( output_file ); if (!(output_file = fopen( def_file, "w" ))) fatal_error( "Unable to create output file '%s'\n", def_file ); - BuildDef32File( spec ); + output_def_file( spec, 0 ); fclose( output_file ); output_file = NULL;
diff --git a/tools/winebuild/main.c b/tools/winebuild/main.c index 138ec68..d04d276 100644 --- a/tools/winebuild/main.c +++ b/tools/winebuild/main.c @@ -667,7 +667,7 @@ int main(int argc, char **argv) if (argv[0]) fatal_error( "file argument '%s' not allowed in this mode\n", argv[0] ); if (!spec_file_name) fatal_error( "missing .spec file\n" ); if (!parse_input_file( spec )) break; - BuildDef32File( spec ); + output_def_file( spec, 1 ); break; case MODE_IMPLIB: if (!spec_file_name) fatal_error( "missing .spec file\n" ); diff --git a/tools/winebuild/spec32.c b/tools/winebuild/spec32.c index 08703a2..a594deb 100644 --- a/tools/winebuild/spec32.c +++ b/tools/winebuild/spec32.c @@ -762,11 +762,11 @@ void output_fake_module( DLLSPEC *spec )
/******************************************************************* - * BuildDef32File + * output_def_file * * Build a Win32 def file from a spec file. */ -void BuildDef32File( DLLSPEC *spec ) +void output_def_file( DLLSPEC *spec, int include_private ) { DLLSPEC *spec32 = NULL; const char *name; @@ -802,6 +802,7 @@ void BuildDef32File( DLLSPEC *spec ) else continue;
if (!(odp->flags & FLAG_PRIVATE)) total++; + else if (!include_private) continue;
if (odp->type == TYPE_STUB) continue;