From ad247e3c7de719151c02516afc9c682a32a181cc Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 10 Dec 1999 01:41:22 +0000 Subject: 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. --- bfd/elfxx-target.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'bfd/elfxx-target.h') 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), -- cgit v1.1