summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2019-02-09 11:33:13 -0500
committermidipix <writeonce@midipix.org>2019-02-09 21:39:14 -0500
commitd995f4e29630a2bbdb1c5f635fefe4aec7b30ad9 (patch)
tree1993510e72676edb0dc966b7f8d16f7aafefd850
parent7309536a8066effa6ac16ae20fd363b0471818cb (diff)
downloadchainport-d995f4e29630a2bbdb1c5f635fefe4aec7b30ad9.tar.bz2
chainport-d995f4e29630a2bbdb1c5f635fefe4aec7b30ad9.tar.xz
binutils-2.24.51: support .got entries created in .dsosyms.
-rw-r--r--binutils-2.24.51.midipix.patch13
1 files changed, 7 insertions, 6 deletions
diff --git a/binutils-2.24.51.midipix.patch b/binutils-2.24.51.midipix.patch
index c6baf39..26c583d 100644
--- a/binutils-2.24.51.midipix.patch
+++ b/binutils-2.24.51.midipix.patch
@@ -571,17 +571,18 @@ diff -ru a/ld/pe-dll.c b/ld/pe-dll.c
name = xmalloc (strlen ("__imp_") + strlen (sn) + 1);
sprintf (name, "%s%s", "__imp_", sn);
-@@ -745,7 +764,8 @@
+@@ -745,7 +764,9 @@
free (name);
if (blhe && blhe->type == bfd_link_hash_defined)
- continue;
+ if (strncmp (blhe->u.def.section->name, ".got$", 5))
-+ continue;
++ if (strncmp (blhe->u.def.section->name, ".dsosyms$", 9))
++ continue;
}
if (pe_details->underscored && *sn == '_')
-@@ -756,12 +776,30 @@
+@@ -756,12 +777,30 @@
int is_dup = 0;
def_file_export *p;
@@ -618,7 +619,7 @@ diff -ru a/ld/pe-dll.c b/ld/pe-dll.c
}
}
}
-@@ -910,6 +943,7 @@
+@@ -910,6 +949,7 @@
if (blhe
&& (blhe->type == bfd_link_hash_defined
@@ -626,7 +627,7 @@ diff -ru a/ld/pe-dll.c b/ld/pe-dll.c
|| (blhe->type == bfd_link_hash_common)))
{
count_exported++;
-@@ -919,7 +953,7 @@
+@@ -919,7 +959,7 @@
/* Only fill in the sections. The actual offsets are computed
in fill_exported_offsets() after common symbols are laid
out. */
@@ -635,7 +636,7 @@ diff -ru a/ld/pe-dll.c b/ld/pe-dll.c
exported_symbol_sections[i] = blhe->u.def.section;
else
exported_symbol_sections[i] = blhe->u.c.p->section;
-@@ -2688,6 +2722,150 @@
+@@ -2688,6 +2728,150 @@
}