mirror of
https://github.com/reactos/wine.git
synced 2024-11-24 12:20:07 +00:00
winebuild: Get rid of the ignored symbol support.
This commit is contained in:
parent
b03059cbda
commit
4bfdad159b
@ -256,7 +256,6 @@ extern void output_gnu_stack_note(void);
|
|||||||
|
|
||||||
extern void add_import_dll( const char *name, const char *filename );
|
extern void add_import_dll( const char *name, const char *filename );
|
||||||
extern void add_delayed_import( const char *name );
|
extern void add_delayed_import( const char *name );
|
||||||
extern void add_ignore_symbol( const char *name );
|
|
||||||
extern void add_extra_ld_symbol( const char *name );
|
extern void add_extra_ld_symbol( const char *name );
|
||||||
extern void read_undef_symbols( DLLSPEC *spec, char **argv );
|
extern void read_undef_symbols( DLLSPEC *spec, char **argv );
|
||||||
extern void resolve_imports( DLLSPEC *spec );
|
extern void resolve_imports( DLLSPEC *spec );
|
||||||
|
@ -57,7 +57,6 @@ struct name_table
|
|||||||
};
|
};
|
||||||
|
|
||||||
static struct name_table undef_symbols; /* list of undefined symbols */
|
static struct name_table undef_symbols; /* list of undefined symbols */
|
||||||
static struct name_table ignore_symbols; /* list of symbols to ignore */
|
|
||||||
static struct name_table extra_ld_symbols; /* list of extra symbols that ld should resolve */
|
static struct name_table extra_ld_symbols; /* list of extra symbols that ld should resolve */
|
||||||
static struct name_table delayed_imports; /* list of delayed import dlls */
|
static struct name_table delayed_imports; /* list of delayed import dlls */
|
||||||
static struct name_table ext_link_imports; /* list of external symbols to link to */
|
static struct name_table ext_link_imports; /* list of external symbols to link to */
|
||||||
@ -339,23 +338,6 @@ static void remove_import_dll( int index )
|
|||||||
free_imports( imp );
|
free_imports( imp );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* add a symbol to the ignored symbol list */
|
|
||||||
/* if the name starts with '-' the symbol is removed instead */
|
|
||||||
void add_ignore_symbol( const char *name )
|
|
||||||
{
|
|
||||||
unsigned int i;
|
|
||||||
|
|
||||||
if (name[0] == '-') /* remove it */
|
|
||||||
{
|
|
||||||
if (!name[1]) empty_name_table( &ignore_symbols ); /* remove everything */
|
|
||||||
else for (i = 0; i < ignore_symbols.count; i++)
|
|
||||||
{
|
|
||||||
if (!strcmp( ignore_symbols.names[i], name+1 )) remove_name( &ignore_symbols, i-- );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else add_name( &ignore_symbols, name );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* add a symbol to the list of extra symbols that ld must resolve */
|
/* add a symbol to the list of extra symbols that ld must resolve */
|
||||||
void add_extra_ld_symbol( const char *name )
|
void add_extra_ld_symbol( const char *name )
|
||||||
{
|
{
|
||||||
@ -582,7 +564,6 @@ void resolve_imports( DLLSPEC *spec )
|
|||||||
unsigned int j, removed;
|
unsigned int j, removed;
|
||||||
ORDDEF *odp;
|
ORDDEF *odp;
|
||||||
|
|
||||||
sort_names( &ignore_symbols );
|
|
||||||
check_undefined_forwards( spec );
|
check_undefined_forwards( spec );
|
||||||
|
|
||||||
for (i = 0; i < nb_imports; i++)
|
for (i = 0; i < nb_imports; i++)
|
||||||
@ -591,7 +572,6 @@ void resolve_imports( DLLSPEC *spec )
|
|||||||
|
|
||||||
for (j = removed = 0; j < undef_symbols.count; j++)
|
for (j = removed = 0; j < undef_symbols.count; j++)
|
||||||
{
|
{
|
||||||
if (find_name( undef_symbols.names[j], &ignore_symbols )) continue;
|
|
||||||
odp = find_export( undef_symbols.names[j], imp->exports, imp->nb_exports );
|
odp = find_export( undef_symbols.names[j], imp->exports, imp->nb_exports );
|
||||||
if (odp)
|
if (odp)
|
||||||
{
|
{
|
||||||
|
@ -243,7 +243,6 @@ static const char usage_str[] =
|
|||||||
" --fake-module Create a fake binary module\n"
|
" --fake-module Create a fake binary module\n"
|
||||||
" -h, --help Display this help message\n"
|
" -h, --help Display this help message\n"
|
||||||
" -H, --heap=SIZE Set the heap size for a Win16 dll\n"
|
" -H, --heap=SIZE Set the heap size for a Win16 dll\n"
|
||||||
" -i, --ignore=SYM[,SYM] Ignore specified symbols when resolving imports\n"
|
|
||||||
" -I DIR Ignored for C flags compatibility\n"
|
" -I DIR Ignored for C flags compatibility\n"
|
||||||
" -k, --kill-at Kill stdcall decorations in generated .def files\n"
|
" -k, --kill-at Kill stdcall decorations in generated .def files\n"
|
||||||
" -K, FLAGS Compiler flags (only -KPIC is supported)\n"
|
" -K, FLAGS Compiler flags (only -KPIC is supported)\n"
|
||||||
@ -291,7 +290,7 @@ enum long_options_values
|
|||||||
LONG_OPT_VERSION
|
LONG_OPT_VERSION
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char short_options[] = "C:D:E:F:H:I:K:L:M:N:b:d:e:f:hi:kl:m:o:r:u:vw";
|
static const char short_options[] = "C:D:E:F:H:I:K:L:M:N:b:d:e:f:hkl:m:o:r:u:vw";
|
||||||
|
|
||||||
static const struct option long_options[] =
|
static const struct option long_options[] =
|
||||||
{
|
{
|
||||||
@ -318,7 +317,6 @@ static const struct option long_options[] =
|
|||||||
{ "filename", 1, 0, 'F' },
|
{ "filename", 1, 0, 'F' },
|
||||||
{ "help", 0, 0, 'h' },
|
{ "help", 0, 0, 'h' },
|
||||||
{ "heap", 1, 0, 'H' },
|
{ "heap", 1, 0, 'H' },
|
||||||
{ "ignore", 1, 0, 'i' },
|
|
||||||
{ "kill-at", 0, 0, 'k' },
|
{ "kill-at", 0, 0, 'k' },
|
||||||
{ "library", 1, 0, 'l' },
|
{ "library", 1, 0, 'l' },
|
||||||
{ "library-path", 1, 0, 'L' },
|
{ "library-path", 1, 0, 'L' },
|
||||||
@ -413,18 +411,6 @@ static char **parse_options( int argc, char **argv, DLLSPEC *spec )
|
|||||||
case 'h':
|
case 'h':
|
||||||
usage(0);
|
usage(0);
|
||||||
break;
|
break;
|
||||||
case 'i':
|
|
||||||
{
|
|
||||||
char *str = xstrdup( optarg );
|
|
||||||
char *token = strtok( str, "," );
|
|
||||||
while (token)
|
|
||||||
{
|
|
||||||
add_ignore_symbol( token );
|
|
||||||
token = strtok( NULL, "," );
|
|
||||||
}
|
|
||||||
free( str );
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'k':
|
case 'k':
|
||||||
kill_at = 1;
|
kill_at = 1;
|
||||||
break;
|
break;
|
||||||
|
@ -122,14 +122,6 @@ Display a usage message and exit.
|
|||||||
Specify the size of the module local heap in bytes (only valid for
|
Specify the size of the module local heap in bytes (only valid for
|
||||||
Win16 modules); default is no local heap.
|
Win16 modules); default is no local heap.
|
||||||
.TP
|
.TP
|
||||||
.BI \-i,\ --ignore= [-]symbol[,[-]symbol]
|
|
||||||
Specify a list of symbols that should be ignored when resolving
|
|
||||||
undefined symbols against the imported libraries. This forces these
|
|
||||||
symbols to be resolved from the Unix C library (or from another Unix
|
|
||||||
library linked with the application). If a symbol is prefixed by '-'
|
|
||||||
it is removed from the list instead of being added; a stand-alone '-'
|
|
||||||
clears the whole list.
|
|
||||||
.TP
|
|
||||||
.BI \-I\ directory
|
.BI \-I\ directory
|
||||||
Ignored for compatibility with the C compiler.
|
Ignored for compatibility with the C compiler.
|
||||||
.TP
|
.TP
|
||||||
|
Loading…
Reference in New Issue
Block a user