aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog7
-rw-r--r--ld/emultempl/elf32.em7
2 files changed, 11 insertions, 3 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 2ffe397..d426fe1 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,10 @@
+2007-09-15 Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/5025
+ * emultempl/elf32.em (write_build_id_section): Correct test for
+ "missing" .note.gnu.build-id. Downgrade error to a warning if
+ it has been discarded.
+
2007-09-08 Alan Modra <amodra@bigpond.net.au>
* ldwrite.c (build_link_order <lang_padding_statement_enum>): Correct
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 8838140..775458c 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -936,10 +936,11 @@ gld${EMULATION_NAME}_write_build_id_section (bfd *abfd)
Elf_External_Note *e_note;
asec = info->sec;
- if (asec->output_section == NULL)
+ if (bfd_is_abs_section (asec->output_section))
{
- einfo (_("%P: .note.gnu.build-id section missing"));
- return FALSE;
+ einfo (_("%P: warning: .note.gnu.build-id section discarded,"
+ " --build-id ignored.\n"));
+ return TRUE;
}
i_shdr = &elf_section_data (asec->output_section)->this_hdr;