aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-target.h
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>1999-12-10 01:41:22 +0000
committerNick Clifton <nickc@redhat.com>1999-12-10 01:41:22 +0000
commitad247e3c7de719151c02516afc9c682a32a181cc (patch)
tree9bbb9e72bbacd188c81701ec1148e0e45e5bf187 /bfd/elfxx-target.h
parentc7d85a8d921dafd1c9eb0f132977427d3d107226 (diff)
downloadfsf-binutils-gdb-ad247e3c7de719151c02516afc9c682a32a181cc.zip
fsf-binutils-gdb-ad247e3c7de719151c02516afc9c682a32a181cc.tar.gz
fsf-binutils-gdb-ad247e3c7de719151c02516afc9c682a32a181cc.tar.bz2
Change AR for ELF so that common symbols are not included in archive map.
Change LD for ELF so that archive elements whoes archive map contains a reference to a common symbol will get linkled in. Add new field to bfd_target structure and initialise it for all bfd targets.
Diffstat (limited to 'bfd/elfxx-target.h')
-rw-r--r--bfd/elfxx-target.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/bfd/elfxx-target.h b/bfd/elfxx-target.h
index 0a69dd8..6963d4e 100644
--- a/bfd/elfxx-target.h
+++ b/bfd/elfxx-target.h
@@ -485,6 +485,13 @@ const bfd_target TARGET_BIG_SYM =
#ifdef bfd_elfNN_archive_functions
BFD_JUMP_TABLE_ARCHIVE (bfd_elfNN_archive),
#else
+ /* For ELF based targets we do not want to put common symbols into the
+ archive map. This is a change from the old behaviour, and it is
+ being done because of a corresponding change in the linker, whereby
+ it will link in any archive element that contains a symbol which is
+ currently common. (See elflink.h:elf_link_add_archive_symbol). */
+#undef _bfd_archive_coff_allow_commons_in_armap
+#define _bfd_archive_coff_allow_commons_in_armap bfd_false
BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff),
#endif
BFD_JUMP_TABLE_SYMBOLS (bfd_elfNN),
@@ -580,6 +587,8 @@ const bfd_target TARGET_LITTLE_SYM =
#ifdef bfd_elfNN_archive_functions
BFD_JUMP_TABLE_ARCHIVE (bfd_elfNN_archive),
#else
+#undef _bfd_archive_coff_allow_commons_in_armap
+#define _bfd_archive_coff_allow_commons_in_armap bfd_false
BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff),
#endif
BFD_JUMP_TABLE_SYMBOLS (bfd_elfNN),