42 lines
1.4 KiB
Diff
42 lines
1.4 KiB
Diff
#! /bin/sh -e
|
|
## 120_mips_xgot_multigot_workaround.dpatch
|
|
##
|
|
## DP: Description: Make multigot/xgot handling mutually exclusive.
|
|
## DP: Author: Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
|
## DP: Upstream status: Not submitted
|
|
## DP: Date: 2004-09-17
|
|
|
|
if [ $# -lt 1 ]; then
|
|
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
|
|
exit 1
|
|
fi
|
|
|
|
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
|
patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
|
|
|
|
case "$1" in
|
|
-patch) patch -p1 ${patch_opts} < $0;;
|
|
-unpatch) patch -R -p1 ${patch_opts} < $0;;
|
|
*)
|
|
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
|
|
exit 1;;
|
|
esac
|
|
|
|
exit 0
|
|
|
|
@DPATCH@
|
|
diff -urNad /home/james/debian/packages/binutils/binutils-2.15/bfd/elfxx-mips.c binutils-2.15/bfd/elfxx-mips.c
|
|
--- /home/james/debian/packages/binutils/binutils-2.15/bfd/elfxx-mips.c 2004-09-23 22:41:37.156466673 +0100
|
|
+++ binutils-2.15/bfd/elfxx-mips.c 2004-09-23 22:42:15.998362861 +0100
|
|
@@ -6594,7 +6594,9 @@
|
|
|
|
mips_elf_resolve_final_got_entries (g);
|
|
|
|
- if (s->size > MIPS_ELF_GOT_MAX_SIZE (output_bfd))
|
|
+ if (s->size > MIPS_ELF_GOT_MAX_SIZE (output_bfd)
|
|
+ && g->global_gotno <= (MIPS_ELF_GOT_MAX_SIZE (output_bfd)
|
|
+ / MIPS_ELF_GOT_SIZE (output_bfd)))
|
|
{
|
|
if (! mips_elf_multi_got (output_bfd, info, g, s, local_gotno))
|
|
return FALSE;
|