Fix build for OLD_FREEBSD_ABI_LABEL
authorH.J. Lu <hjl.tools@gmail.com>
Mon, 29 Sep 2014 15:35:49 +0000 (08:35 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Mon, 29 Sep 2014 15:35:49 +0000 (08:35 -0700)
PR ld/17440
* elf32-i386.c (elf_i386_fbsd_post_process_headers): Fix build
for OLD_FREEBSD_ABI_LABEL.

bfd/ChangeLog
bfd/elf32-i386.c

index f70cad6..e4445dc 100644 (file)
@@ -1,3 +1,9 @@
+2014-09-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/17440
+       * elf32-i386.c (elf_i386_fbsd_post_process_headers): Fix build
+       for OLD_FREEBSD_ABI_LABEL.
+
 2014-09-24  Markus Trippelsdorf  <markus@trippelsdorf.de>
 
        PR 17422
index a00d47c..afa21b5 100644 (file)
@@ -5120,8 +5120,11 @@ elf_i386_fbsd_post_process_headers (bfd *abfd, struct bfd_link_info *info)
   _bfd_elf_post_process_headers (abfd, info);
 
 #ifdef OLD_FREEBSD_ABI_LABEL
-  /* The ABI label supported by FreeBSD <= 4.0 is quite nonstandard.  */
-  memcpy (&i_ehdrp->e_ident[EI_ABIVERSION], "FreeBSD", 8);
+  {
+    /* The ABI label supported by FreeBSD <= 4.0 is quite nonstandard.  */
+    Elf_Internal_Ehdr *i_ehdrp = elf_elfheader (abfd);
+    memcpy (&i_ehdrp->e_ident[EI_ABIVERSION], "FreeBSD", 8);
+  }
 #endif
 }