Index: elf32-arm.c =================================================================== RCS file: /cvs/src/src/bfd/elf32-arm.c,v retrieving revision 1.12 diff -u -p -r1.12 elf32-arm.c --- elf32-arm.c 30 Nov 2004 17:45:53 -0000 1.12 +++ elf32-arm.c 1 Dec 2004 17:18:09 -0000 @@ -3428,6 +3428,10 @@ elf32_arm_copy_private_bfd_data (bfd *ib elf_elfheader (obfd)->e_flags = in_flags; elf_flags_init (obfd) = TRUE; + /* Also copy the EI_OSABI field. */ + elf_elfheader (obfd)->e_ident[EI_OSABI] = + elf_elfheader (ibfd)->e_ident[EI_OSABI]; + return TRUE; } @@ -5352,7 +5356,10 @@ elf32_arm_post_process_headers (bfd * ab i_ehdrp = elf_elfheader (abfd); - i_ehdrp->e_ident[EI_OSABI] = ARM_ELF_OS_ABI_VERSION; + if (EF_ARM_EABI_VERSION (i_ehdrp->e_flags) == EF_ARM_EABI_UNKNOWN) + i_ehdrp->e_ident[EI_OSABI] = ELFOSABI_ARM; + else + i_ehdrp->e_ident[EI_OSABI] = 0; i_ehdrp->e_ident[EI_ABIVERSION] = ARM_ELF_ABI_VERSION; if (link_info)