patches/binutils/2.20/140-check_ldrunpath_length.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Jan 03 23:40:22 2011 +0100 (2011-01-03)
changeset 2267 7af68e6083aa
parent 1614 3f76cdbceb6e
permissions -rw-r--r--
libc-glibc: remove 2.3.6

This is an obsolete version which is no longer used by any sample (the only
user, the ia64 sample, has been removed).

It also makes the code path a bit complex, with twists just to accomodate
that version. Removing the version will make those twists go away, and
will ease commonalisation of glibc and eglibc in the future (hopefully!).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1614
     1
#!/bin/sh -e
yann@1614
     2
## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org>
yann@1614
     3
##
yann@1614
     4
## All lines beginning with `## DP:' are a description of the patch.
yann@1614
     5
## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for
yann@1614
     6
## DP: cases where -rpath isn't specified. (#151024)
yann@1614
     7
yann@1614
     8
if [ $# -ne 1 ]; then
yann@1614
     9
    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
yann@1614
    10
    exit 1
yann@1614
    11
fi
yann@1614
    12
yann@1614
    13
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
yann@1614
    14
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
yann@1614
    15
yann@1614
    16
case "$1" in
yann@1614
    17
       -patch) patch $patch_opts -p1 < $0;;
yann@1614
    18
       -unpatch) patch $patch_opts -p1 -R < $0;;
yann@1614
    19
        *)
yann@1614
    20
                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
yann@1614
    21
                exit 1;;
yann@1614
    22
esac
yann@1614
    23
yann@1614
    24
exit 0
yann@1614
    25
yann@1614
    26
@DPATCH@
yann@1614
    27
diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em
yann@1614
    28
--- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em	2004-05-21 23:12:58.000000000 +0100
fr@1621
    29
+++ binutils-2.20/ld/emultempl/elf32.em	2004-05-21 23:12:59.000000000 +0100
yann@1614
    30
@@ -692,6 +692,8 @@
yann@1614
    31
 	      && command_line.rpath == NULL)
yann@1614
    32
 	    {
yann@1614
    33
 	      lib_path = (const char *) getenv ("LD_RUN_PATH");
yann@1614
    34
+	      if ((lib_path) && (strlen (lib_path) == 0))
yann@1614
    35
+		  lib_path = NULL;
yann@1614
    36
 	      if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
yann@1614
    37
 						      force))
yann@1614
    38
 		break;
yann@1614
    39
@@ -871,6 +873,8 @@
yann@1614
    40
   rpath = command_line.rpath;
yann@1614
    41
   if (rpath == NULL)
yann@1614
    42
     rpath = (const char *) getenv ("LD_RUN_PATH");
yann@1614
    43
+  if ((rpath) && (strlen (rpath) == 0))
yann@1614
    44
+      rpath = NULL;
yann@1614
    45
   if (! (bfd_elf_size_dynamic_sections
fr@1621
    46
 	 (link_info.output_bfd, command_line.soname, rpath,
yann@1614
    47
 	  command_line.filter_shlib,