r1338 - in glibc-package/trunk/debian/patches: . any hppa
Author: aurel32
Date: 2006-04-06 22:44:15 +0000 (Thu, 06 Apr 2006)
New Revision: 1338
Added:
glibc-package/trunk/debian/patches/any/local-ld-multiarch.diff
glibc-package/trunk/debian/patches/hppa/cvs-pie-relocs.diff
Removed:
glibc-package/trunk/debian/patches/hppa-pie-relocs.diff
glibc-package/trunk/debian/patches/ld-multiarch.diff
Log:
Move more patches to the new naming scheme
Added: glibc-package/trunk/debian/patches/any/local-ld-multiarch.diff
===================================================================
--- glibc-package/trunk/debian/patches/any/local-ld-multiarch.diff 2006-04-06 22:43:11 UTC (rev 1337)
+++ glibc-package/trunk/debian/patches/any/local-ld-multiarch.diff 2006-04-06 22:44:15 UTC (rev 1338)
@@ -0,0 +1,29 @@
+2005-01-20 Tollef Fog Heen <tfheen@debian.org>
+
+ * Makeconfig: add multiarch support
+
+--- glibc-2.3.6/Makeconfig 2006-02-22 12:44:52.424091146 +0100
++++ glibc-2.3.6/Makeconfig 2006-02-22 12:45:52.161604171 +0100
+@@ -176,6 +176,11 @@
+ endif
+ inst_libdir = $(install_root)$(libdir)
+
++# Extra places to look for libraries
++ifndef extra_libdir
++extra_libdir = /lib/$(config-machine)-$(config-os):$(exec_prefix)/lib/$(config-machine)-$(config-os)
++endif
++
+ # Where to install the shared library and dynamic linker.
+ ifndef slibdir
+ slibdir = $(exec_prefix)/lib
+@@ -479,6 +484,10 @@
+ default-rpath = $(libdir)
+ endif
+
++ifdef extra_libdir
++default-rpath += :$(extra_libdir)
++endif
++
+ ifndef link-extra-libs
+ link-extra-libs = $(LDLIBS-$(@F))
+ link-extra-libs-static = $(link-extra-libs)
Added: glibc-package/trunk/debian/patches/hppa/cvs-pie-relocs.diff
===================================================================
--- glibc-package/trunk/debian/patches/hppa/cvs-pie-relocs.diff 2006-04-06 22:43:11 UTC (rev 1337)
+++ glibc-package/trunk/debian/patches/hppa/cvs-pie-relocs.diff 2006-04-06 22:44:15 UTC (rev 1338)
@@ -0,0 +1,120 @@
+2005-06-10 Randolph Chung <tausq@debian.org>
+
+ * elf/elf.h (R_PARISC_PLABEL21L, R_PARISC_PLABEL14R): Define.
+ * sysdeps/hppa/dl-machine.h (reassemble_21, reassemble_14): Define.
+ (elf_machine_rela): Handle R_PARISC_DIR21L/14R and
+ R_PARISC_PLABEL21L/14R relocations.
+
+===================================================================
+RCS file: /var/lib/cvs/glibc/elf/elf.h,v
+retrieving revision 1.3
+retrieving revision 1.4
+diff -u -r1.3 -r1.4
+--- glibc/elf/elf.h 2005/06/09 01:14:04 1.3
++++ glibc/elf/elf.h 2005/06/10 23:41:20 1.4
+@@ -1703,6 +1703,8 @@
+ #define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */
+ #define R_PARISC_FPTR64 64 /* 64 bits function address. */
+ #define R_PARISC_PLABEL32 65 /* 32 bits function address. */
++#define R_PARISC_PLABEL21L 66 /* Left 21 bits of fct ptr. */
++#define R_PARISC_PLABEL14R 70 /* Left 21 bits of fct ptr. */
+ #define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */
+ #define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */
+ #define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */
+
+===================================================================
+RCS file: /var/lib/cvs/glibc/sysdeps/hppa/dl-machine.h,v
+retrieving revision 1.3
+retrieving revision 1.4
+diff -u -r1.3 -r1.4
+--- glibc/sysdeps/hppa/dl-machine.h 2005/06/09 04:27:13 1.3
++++ glibc/sysdeps/hppa/dl-machine.h 2005/06/10 23:41:20 1.4
+@@ -223,7 +223,8 @@
+ }
+ else
+ {
+- if (_dl_name_match_p (GLRO(dl_profile), l))
++ if (GLRO(dl_profile) != NULL
++ && _dl_name_match_p (GLRO(dl_profile), l))
+ {
+ /* This is the object we are looking for. Say that
+ we really want profiling and the timers are
+@@ -514,6 +515,18 @@
+ /* These are only actually used where RESOLVE_MAP is defined, anyway. */
+ #ifdef RESOLVE_MAP
+
++
++#define reassemble_21(as21) \
++ ( (((as21) & 0x100000) >> 20) \
++ | (((as21) & 0x0ffe00) >> 8) \
++ | (((as21) & 0x000180) << 7) \
++ | (((as21) & 0x00007c) << 14) \
++ | (((as21) & 0x000003) << 12))
++
++#define reassemble_14(as14) \
++ ( (((as14) & 0x1fff) << 1) \
++ | (((as14) & 0x2000) >> 13))
++
+ auto void __attribute__((always_inline))
+ elf_machine_rela (struct link_map *map,
+ const Elf32_Rela *reloc,
+@@ -573,6 +586,27 @@
+ }
+ break;
+
++ case R_PARISC_DIR21L:
++ {
++ unsigned int insn = *(unsigned int *)reloc_addr;
++ value = sym_map->l_addr + sym->st_value
++ + ((reloc->r_addend + 0x1000) & -0x2000);
++ value = value >> 11;
++ insn = (insn &~ 0x1fffff) | reassemble_21 (value);
++ *(unsigned int *)reloc_addr = insn;
++ }
++ return;
++
++ case R_PARISC_DIR14R:
++ {
++ unsigned int insn = *(unsigned int *)reloc_addr;
++ value = ((sym_map->l_addr + sym->st_value) & 0x7ff)
++ + (((reloc->r_addend & 0x1fff) ^ 0x1000) - 0x1000);
++ insn = (insn &~ 0x3fff) | reassemble_14 (value);
++ *(unsigned int *)reloc_addr = insn;
++ }
++ return;
++
+ case R_PARISC_PLABEL32:
+ /* Easy rule: If there is a symbol and it is global, then we
+ need to make a dynamic function descriptor. Otherwise we
+@@ -591,6 +625,31 @@
+ value = (Elf32_Addr)((unsigned int)_dl_make_fptr (sym_map, sym, value) | 2);
+ break;
+
++ case R_PARISC_PLABEL21L:
++ case R_PARISC_PLABEL14R:
++ {
++ unsigned int insn = *(unsigned int *)reloc_addr;
++
++ if (__builtin_expect (sym == NULL, 0))
++ break;
++
++ value = (Elf32_Addr)((unsigned int)_dl_make_fptr (sym_map, sym, value) | 2);
++
++ if (r_type == R_PARISC_PLABEL21L)
++ {
++ value >>= 11;
++ insn = (insn &~ 0x1fffff) | reassemble_21 (value);
++ }
++ else
++ {
++ value &= 0x7ff;
++ insn = (insn &~ 0x3fff) | reassemble_14 (value);
++ }
++
++ *(unsigned int *)reloc_addr = insn;
++ }
++ return;
++
+ case R_PARISC_IPLT:
+ if (__builtin_expect (sym_map != NULL, 1))
+ {
Deleted: glibc-package/trunk/debian/patches/hppa-pie-relocs.diff
===================================================================
--- glibc-package/trunk/debian/patches/hppa-pie-relocs.diff 2006-04-06 22:43:11 UTC (rev 1337)
+++ glibc-package/trunk/debian/patches/hppa-pie-relocs.diff 2006-04-06 22:44:15 UTC (rev 1338)
@@ -1,120 +0,0 @@
-2005-06-10 Randolph Chung <tausq@debian.org>
-
- * elf/elf.h (R_PARISC_PLABEL21L, R_PARISC_PLABEL14R): Define.
- * sysdeps/hppa/dl-machine.h (reassemble_21, reassemble_14): Define.
- (elf_machine_rela): Handle R_PARISC_DIR21L/14R and
- R_PARISC_PLABEL21L/14R relocations.
-
-===================================================================
-RCS file: /var/lib/cvs/glibc/elf/elf.h,v
-retrieving revision 1.3
-retrieving revision 1.4
-diff -u -r1.3 -r1.4
---- glibc/elf/elf.h 2005/06/09 01:14:04 1.3
-+++ glibc/elf/elf.h 2005/06/10 23:41:20 1.4
-@@ -1703,6 +1703,8 @@
- #define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */
- #define R_PARISC_FPTR64 64 /* 64 bits function address. */
- #define R_PARISC_PLABEL32 65 /* 32 bits function address. */
-+#define R_PARISC_PLABEL21L 66 /* Left 21 bits of fct ptr. */
-+#define R_PARISC_PLABEL14R 70 /* Left 21 bits of fct ptr. */
- #define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */
- #define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */
- #define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */
-
-===================================================================
-RCS file: /var/lib/cvs/glibc/sysdeps/hppa/dl-machine.h,v
-retrieving revision 1.3
-retrieving revision 1.4
-diff -u -r1.3 -r1.4
---- glibc/sysdeps/hppa/dl-machine.h 2005/06/09 04:27:13 1.3
-+++ glibc/sysdeps/hppa/dl-machine.h 2005/06/10 23:41:20 1.4
-@@ -223,7 +223,8 @@
- }
- else
- {
-- if (_dl_name_match_p (GLRO(dl_profile), l))
-+ if (GLRO(dl_profile) != NULL
-+ && _dl_name_match_p (GLRO(dl_profile), l))
- {
- /* This is the object we are looking for. Say that
- we really want profiling and the timers are
-@@ -514,6 +515,18 @@
- /* These are only actually used where RESOLVE_MAP is defined, anyway. */
- #ifdef RESOLVE_MAP
-
-+
-+#define reassemble_21(as21) \
-+ ( (((as21) & 0x100000) >> 20) \
-+ | (((as21) & 0x0ffe00) >> 8) \
-+ | (((as21) & 0x000180) << 7) \
-+ | (((as21) & 0x00007c) << 14) \
-+ | (((as21) & 0x000003) << 12))
-+
-+#define reassemble_14(as14) \
-+ ( (((as14) & 0x1fff) << 1) \
-+ | (((as14) & 0x2000) >> 13))
-+
- auto void __attribute__((always_inline))
- elf_machine_rela (struct link_map *map,
- const Elf32_Rela *reloc,
-@@ -573,6 +586,27 @@
- }
- break;
-
-+ case R_PARISC_DIR21L:
-+ {
-+ unsigned int insn = *(unsigned int *)reloc_addr;
-+ value = sym_map->l_addr + sym->st_value
-+ + ((reloc->r_addend + 0x1000) & -0x2000);
-+ value = value >> 11;
-+ insn = (insn &~ 0x1fffff) | reassemble_21 (value);
-+ *(unsigned int *)reloc_addr = insn;
-+ }
-+ return;
-+
-+ case R_PARISC_DIR14R:
-+ {
-+ unsigned int insn = *(unsigned int *)reloc_addr;
-+ value = ((sym_map->l_addr + sym->st_value) & 0x7ff)
-+ + (((reloc->r_addend & 0x1fff) ^ 0x1000) - 0x1000);
-+ insn = (insn &~ 0x3fff) | reassemble_14 (value);
-+ *(unsigned int *)reloc_addr = insn;
-+ }
-+ return;
-+
- case R_PARISC_PLABEL32:
- /* Easy rule: If there is a symbol and it is global, then we
- need to make a dynamic function descriptor. Otherwise we
-@@ -591,6 +625,31 @@
- value = (Elf32_Addr)((unsigned int)_dl_make_fptr (sym_map, sym, value) | 2);
- break;
-
-+ case R_PARISC_PLABEL21L:
-+ case R_PARISC_PLABEL14R:
-+ {
-+ unsigned int insn = *(unsigned int *)reloc_addr;
-+
-+ if (__builtin_expect (sym == NULL, 0))
-+ break;
-+
-+ value = (Elf32_Addr)((unsigned int)_dl_make_fptr (sym_map, sym, value) | 2);
-+
-+ if (r_type == R_PARISC_PLABEL21L)
-+ {
-+ value >>= 11;
-+ insn = (insn &~ 0x1fffff) | reassemble_21 (value);
-+ }
-+ else
-+ {
-+ value &= 0x7ff;
-+ insn = (insn &~ 0x3fff) | reassemble_14 (value);
-+ }
-+
-+ *(unsigned int *)reloc_addr = insn;
-+ }
-+ return;
-+
- case R_PARISC_IPLT:
- if (__builtin_expect (sym_map != NULL, 1))
- {
Deleted: glibc-package/trunk/debian/patches/ld-multiarch.diff
===================================================================
--- glibc-package/trunk/debian/patches/ld-multiarch.diff 2006-04-06 22:43:11 UTC (rev 1337)
+++ glibc-package/trunk/debian/patches/ld-multiarch.diff 2006-04-06 22:44:15 UTC (rev 1338)
@@ -1,29 +0,0 @@
-2005-01-20 Tollef Fog Heen <tfheen@debian.org>
-
- * Makeconfig: add multiarch support
-
---- glibc-2.3.6/Makeconfig 2006-02-22 12:44:52.424091146 +0100
-+++ glibc-2.3.6/Makeconfig 2006-02-22 12:45:52.161604171 +0100
-@@ -176,6 +176,11 @@
- endif
- inst_libdir = $(install_root)$(libdir)
-
-+# Extra places to look for libraries
-+ifndef extra_libdir
-+extra_libdir = /lib/$(config-machine)-$(config-os):$(exec_prefix)/lib/$(config-machine)-$(config-os)
-+endif
-+
- # Where to install the shared library and dynamic linker.
- ifndef slibdir
- slibdir = $(exec_prefix)/lib
-@@ -479,6 +484,10 @@
- default-rpath = $(libdir)
- endif
-
-+ifdef extra_libdir
-+default-rpath += :$(extra_libdir)
-+endif
-+
- ifndef link-extra-libs
- link-extra-libs = $(LDLIBS-$(@F))
- link-extra-libs-static = $(link-extra-libs)
Reply to: