summaryrefslogtreecommitdiffstats
path: root/patches/prelink-0.0.20090925
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2010-02-12 09:58:02 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2010-02-16 17:30:12 +0100
commit0ef6e160d48c08d8834798992739ec3c624d3592 (patch)
tree8189693e48daa923cbda21c1868b756d643adc8f /patches/prelink-0.0.20090925
parent1c020c48c60ef81cf98f882ff51350433869c5f2 (diff)
downloadptxdist-0ef6e160d48c08d8834798992739ec3c624d3592.tar.gz
ptxdist-0ef6e160d48c08d8834798992739ec3c624d3592.tar.xz
[prelink] version bump 0.0.20071009 -> 0.0.20090925
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'patches/prelink-0.0.20090925')
-rw-r--r--patches/prelink-0.0.20090925/Makefile.in.dpatch34
-rw-r--r--patches/prelink-0.0.20090925/arm_ld-linux.so.3.patch24
-rw-r--r--patches/prelink-0.0.20090925/fsync.dpatch46
-rw-r--r--patches/prelink-0.0.20090925/prelink.h.dpatch71
-rw-r--r--patches/prelink-0.0.20090925/series4
5 files changed, 179 insertions, 0 deletions
diff --git a/patches/prelink-0.0.20090925/Makefile.in.dpatch b/patches/prelink-0.0.20090925/Makefile.in.dpatch
new file mode 100644
index 000000000..db646824e
--- /dev/null
+++ b/patches/prelink-0.0.20090925/Makefile.in.dpatch
@@ -0,0 +1,34 @@
+#! /bin/sh -e
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Changed optimization level.
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
+
+if [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+case "$1" in
+ -patch) patch $patch_opts -p1 < $0;;
+ -unpatch) patch $patch_opts -p1 -R < $0;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1;;
+esac
+
+exit 0
+@DPATCH@
+
+--- prelink-0.0.20030902.orig/src/Makefile.in 2003-07-01 14:38:41.000000000 +0000
++++ prelink-0.0.20030902/src/Makefile.in 2003-09-16 23:26:16.000000000 +0000
+@@ -108,7 +108,7 @@
+ $(prelink_SYSDEPS)
+
+ prelink_LDADD = @LIBGELF@
+-prelink_LDFLAGS = -all-static
++#prelink_LDFLAGS = -all-static
+
+ extra_DIST = makecrc.c
+ subdir = src
diff --git a/patches/prelink-0.0.20090925/arm_ld-linux.so.3.patch b/patches/prelink-0.0.20090925/arm_ld-linux.so.3.patch
new file mode 100644
index 000000000..bc0baf303
--- /dev/null
+++ b/patches/prelink-0.0.20090925/arm_ld-linux.so.3.patch
@@ -0,0 +1,24 @@
+From: Michael Olbrich <m.olbrich@pengutronix.de>
+Subject: use /lib/ld-linux.so.3 as default dynamic linker
+
+EABI (/lib/ld-linux.so.3) is used more often than OABI (/lib/ld-linux.so.2)
+
+Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
+
+---
+ src/arch-arm.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: b/src/arch-arm.c
+===================================================================
+--- a/src/arch-arm.c
++++ b/src/arch-arm.c
+@@ -832,7 +832,7 @@ PL_ARCH = {
+ .R_COPY = R_ARM_COPY,
+ .R_RELATIVE = R_ARM_RELATIVE,
+ .rtype_class_valid = RTYPE_CLASS_VALID,
+- .dynamic_linker = "/lib/ld-linux.so.2",
++ .dynamic_linker = "/lib/ld-linux.so.3",
+ .adjust_dyn = arm_adjust_dyn,
+ .adjust_rel = arm_adjust_rel,
+ .adjust_rela = arm_adjust_rela,
diff --git a/patches/prelink-0.0.20090925/fsync.dpatch b/patches/prelink-0.0.20090925/fsync.dpatch
new file mode 100644
index 000000000..9aaadc598
--- /dev/null
+++ b/patches/prelink-0.0.20090925/fsync.dpatch
@@ -0,0 +1,46 @@
+#! /bin/sh -e
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Ensures to write the data on the disk when renamed a file
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
+
+if [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+case "$1" in
+ -patch) patch $patch_opts -p1 < $0;;
+ -unpatch) patch $patch_opts -p1 -R < $0;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1;;
+esac
+
+exit 0
+@DPATCH@
+
+diff -urN prelink-0.0.20060522.orig/src/cache.c prelink-0.0.20060522/src/cache.c
+--- prelink-0.0.20060522.orig/src/cache.c 2006-05-22 12:07:57.000000000 +0000
++++ prelink-0.0.20060522/src/cache.c 2006-05-24 15:18:40.000000000 +0000
+@@ -627,6 +627,7 @@
+ if (write (fd, &cache, sizeof (cache)) != sizeof (cache)
+ || write (fd, data, len) != len
+ || fchmod (fd, 0644)
++ || fsync (fd)
+ || close (fd)
+ || rename (prelink_cache_tmp, prelink_cache))
+ {
+diff -urN prelink-0.0.20060522.orig/src/dso.c prelink-0.0.20060522/src/dso.c
+--- prelink-0.0.20060522.orig/src/dso.c 2006-05-22 14:02:34.000000000 +0000
++++ prelink-0.0.20060522/src/dso.c 2006-05-24 15:19:09.000000000 +0000
+@@ -1601,6 +1601,8 @@
+ }
+
+ elf_end (dso->elf);
++ if (dso_is_rdwr (dso))
++ fsync (dso->fd);
+ close (dso->fd);
+ if (dso->elfro)
+ {
diff --git a/patches/prelink-0.0.20090925/prelink.h.dpatch b/patches/prelink-0.0.20090925/prelink.h.dpatch
new file mode 100644
index 000000000..33bc9869a
--- /dev/null
+++ b/patches/prelink-0.0.20090925/prelink.h.dpatch
@@ -0,0 +1,71 @@
+#! /bin/sh -e
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Changed optimization level.
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
+
+if [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+case "$1" in
+ -patch) patch $patch_opts -p1 < $0;;
+ -unpatch) patch $patch_opts -p1 -R < $0;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1;;
+esac
+
+exit 0
+@DPATCH@
+
+--- prelink-0.0.20030902.orig/src/prelink.h 2003-08-11 11:54:01.000000000 +0000
++++ prelink-0.0.20030902/src/prelink.h 2003-09-16 23:26:16.000000000 +0000
+@@ -26,6 +26,45 @@
+ #include <stdio.h>
+ #include <sys/stat.h>
+
++/* http://gcc.gnu.org/ml/gcc/2003-01/msg00922.html */
++#ifndef R_390_TLS_DTPMOD
++#define R_390_TLS_DTPMOD 54
++#define R_390_TLS_DTPOFF 55
++#define R_390_TLS_TPOFF 56
++#endif
++
++/* from http://www.cygwin.com/ml/libc-alpha/2003-02/msg00241.html */
++#ifndef R_PPC_TLS
++#define R_PPC_TLS 67
++#define R_PPC_DTPMOD32 68
++#define R_PPC_TPREL16 69
++#define R_PPC_TPREL16_LO 70
++#define R_PPC_TPREL16_HI 71
++#define R_PPC_TPREL16_HA 72
++#define R_PPC_TPREL32 73
++#define R_PPC_DTPREL16 74
++#define R_PPC_DTPREL16_LO 75
++#define R_PPC_DTPREL16_HI 76
++#define R_PPC_DTPREL16_HA 77
++#define R_PPC_DTPREL32 78
++#define R_PPC_GOT_TLSGD16 79
++#define R_PPC_GOT_TLSGD16_LO 80
++#define R_PPC_GOT_TLSGD16_HI 81
++#define R_PPC_GOT_TLSGD16_HA 82
++#define R_PPC_GOT_TLSLD16 83
++#define R_PPC_GOT_TLSLD16_LO 84
++#define R_PPC_GOT_TLSLD16_HI 85
++#define R_PPC_GOT_TLSLD16_HA 86
++#define R_PPC_GOT_TPREL16 87
++#define R_PPC_GOT_TPREL16_LO 88
++#define R_PPC_GOT_TPREL16_HI 89
++#define R_PPC_GOT_TPREL16_HA 90
++#define R_PPC_GOT_DTPREL16 91
++#define R_PPC_GOT_DTPREL16_LO 92
++#define R_PPC_GOT_DTPREL16_HI 93
++#define R_PPC_GOT_DTPREL16_HA 94
++#endif
++
+ #ifndef DT_GNU_LIBLIST
+ #define DT_GNU_LIBLIST 0x6ffffef9
+ #define DT_GNU_LIBLISTSZ 0x6ffffdf7
diff --git a/patches/prelink-0.0.20090925/series b/patches/prelink-0.0.20090925/series
new file mode 100644
index 000000000..be8b18df5
--- /dev/null
+++ b/patches/prelink-0.0.20090925/series
@@ -0,0 +1,4 @@
+fsync.dpatch
+Makefile.in.dpatch
+prelink.h.dpatch
+arm_ld-linux.so.3.patch