* ldlang.c (walk_wild_section): Exclude object file if enclosing
archive is excluded.
This commit is contained in:
parent
c25b74acfa
commit
34efb44947
2 changed files with 21 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2002-01-08 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* ldlang.c (walk_wild_section): Exclude object file if enclosing
|
||||
archive is excluded.
|
||||
|
||||
2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
|
||||
|
|
17
ld/ldlang.c
17
ld/ldlang.c
|
@ -1,6 +1,6 @@
|
|||
/* Linker command language support.
|
||||
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
||||
2001
|
||||
2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GLD, the Gnu Linker.
|
||||
|
@ -270,6 +270,21 @@ walk_wild_section (ptr, file, callback, data)
|
|||
else
|
||||
skip = strcmp (list_tmp->name, file->filename) == 0;
|
||||
|
||||
/* If this file is part of an archive, and the archive is
|
||||
excluded, exclude this file. */
|
||||
if (! skip && file->the_bfd != NULL
|
||||
&& file->the_bfd->my_archive != NULL
|
||||
&& file->the_bfd->my_archive->filename != NULL)
|
||||
{
|
||||
if (wildcardp (list_tmp->name))
|
||||
skip = fnmatch (list_tmp->name,
|
||||
file->the_bfd->my_archive->filename,
|
||||
0) == 0;
|
||||
else
|
||||
skip = strcmp (list_tmp->name,
|
||||
file->the_bfd->my_archive->filename) == 0;
|
||||
}
|
||||
|
||||
if (skip)
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue