Blame SOURCES/binutils-ppc-weak-undefined-plt-relocs.patch

01a2c8
Only in binutils-2.36.1/bfd: ChangeLog.orig
01a2c8
Only in binutils-2.36.1/bfd: ChangeLog.rej
01a2c8
diff -rup binutils.orig/bfd/elf32-ppc.c binutils-2.36.1/bfd/elf32-ppc.c
01a2c8
--- binutils.orig/bfd/elf32-ppc.c	2021-05-18 11:38:27.644364623 +0100
01a2c8
+++ binutils-2.36.1/bfd/elf32-ppc.c	2021-05-18 11:44:19.809184838 +0100
01a2c8
@@ -5289,7 +5289,12 @@ allocate_dynrelocs (struct elf_link_hash
01a2c8
       for (ent = h->plt.plist; ent != NULL; ent = ent->next)
01a2c8
 	if (ent->plt.refcount > 0)
01a2c8
 	  {
01a2c8
-	    asection *s = htab->elf.splt;
01a2c8
+	    asection *s;
01a2c8
+
01a2c8
+	    if (!ensure_undef_dynamic (info, h))
01a2c8
+	      return FALSE;
01a2c8
+
01a2c8
+	    s = htab->elf.splt;
01a2c8
 
01a2c8
 	    if (!dyn)
01a2c8
 	      {
01a2c8
Only in binutils-2.36.1/bfd: elf32-ppc.c.orig
01a2c8
Only in binutils-2.36.1/bfd: elf32-ppc.c.rej
01a2c8
diff -rup binutils.orig/bfd/elf64-ppc.c binutils-2.36.1/bfd/elf64-ppc.c
01a2c8
--- binutils.orig/bfd/elf64-ppc.c	2021-05-18 11:38:27.646364616 +0100
01a2c8
+++ binutils-2.36.1/bfd/elf64-ppc.c	2021-05-18 11:41:01.635847814 +0100
01a2c8
@@ -9819,6 +9819,9 @@ allocate_dynrelocs (struct elf_link_hash
01a2c8
       for (pent = h->plt.plist; pent != NULL; pent = pent->next)
01a2c8
 	if (pent->plt.refcount > 0)
01a2c8
 	  {
01a2c8
+	    if (!ensure_undef_dynamic (info, h))
01a2c8
+	      return FALSE;
01a2c8
+
01a2c8
 	    if (!htab->elf.dynamic_sections_created
01a2c8
 		|| h->dynindx == -1)
01a2c8
 	      {
01a2c8
Only in binutils-2.36.1/bfd: elf64-ppc.c.orig
01a2c8
Only in binutils-2.36.1/bfd: elf64-ppc.c.rej