| #!/bin/sh -e |
| ## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> |
| ## |
| ## All lines beginning with `## DP:' are a description of the patch. |
| ## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for |
| ## DP: cases where -rpath isn't specified. (#151024) |
| |
| if [ $# -ne 1 ]; then |
| echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" |
| exit 1 |
| fi |
| |
| [ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts |
| patch_opts="${patch_opts:--f --no-backup-if-mismatch}" |
| |
| 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 -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em |
| --- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 |
| +++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 |
| @@ -692,6 +692,8 @@ |
| && command_line.rpath == NULL) |
| { |
| lib_path = (const char *) getenv ("LD_RUN_PATH"); |
| + if ((lib_path) && (strlen (lib_path) == 0)) |
| + lib_path = NULL; |
| if (gld${EMULATION_NAME}_search_needed (lib_path, &n, |
| force)) |
| break; |
| @@ -871,6 +873,8 @@ |
| rpath = command_line.rpath; |
| if (rpath == NULL) |
| rpath = (const char *) getenv ("LD_RUN_PATH"); |
| + if ((rpath) && (strlen (rpath) == 0)) |
| + rpath = NULL; |
| if (! (bfd_elf_size_dynamic_sections |
| (output_bfd, command_line.soname, rpath, |
| command_line.filter_shlib, |