aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-ppc.c24
2 files changed, 11 insertions, 19 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 66953c0..d8ae120 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+Tue Jan 23 14:33:05 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if
+ the embedded bit is set on some objects and not on others. Just
+ or it together.
+
Tue Jan 23 14:22:45 1996 Ian Lance Taylor <ian@cygnus.com>
* coffcode.h (coff_set_section_contents): Fix the handling of the
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index a7be7a1..9750442 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -1134,26 +1134,12 @@ ppc_elf_merge_private_bfd_data (ibfd, obfd)
else if ((new_flags & EF_PPC_RELOCATABLE_LIB) != 0)
elf_elfheader (obfd)->e_flags |= EF_PPC_RELOCATABLE_LIB;
- new_flags &= ~ (EF_PPC_RELOCATABLE | EF_PPC_RELOCATABLE_LIB);
- old_flags &= ~ (EF_PPC_RELOCATABLE | EF_PPC_RELOCATABLE_LIB);
- /* Warn about eabi vs. V.4 mismatch */
- if ((new_flags & EF_PPC_EMB) != 0 && (old_flags & EF_PPC_EMB) == 0)
- {
- new_flags &= ~EF_PPC_EMB;
- error = true;
- (*_bfd_error_handler)
- ("%s: compiled for the eabi and linked with modules compiled for System V",
- bfd_get_filename (ibfd));
- }
- else if ((new_flags & EF_PPC_EMB) == 0 && (old_flags & EF_PPC_EMB) != 0)
- {
- old_flags &= ~EF_PPC_EMB;
- error = true;
- (*_bfd_error_handler)
- ("%s: compiled for System V and linked with modules compiled for eabi",
- bfd_get_filename (ibfd));
- }
+ /* Do not warn about eabi vs. V.4 mismatch, just or in the bit if any module uses it */
+ elf_elfheader (obfd)->e_flags |= (new_flags & EF_PPC_EMB);
+
+ new_flags &= ~ (EF_PPC_RELOCATABLE | EF_PPC_RELOCATABLE_LIB | EF_PPC_EMB);
+ old_flags &= ~ (EF_PPC_RELOCATABLE | EF_PPC_RELOCATABLE_LIB | EF_PPC_EMB);
/* Warn about any other mismatches */
if (new_flags != old_flags)