300-012_check_ldrunpath_length.patch 874 B

123456789101112131415161718192021
  1. diff -u binutils-2.17.50.0.17.oorig/ld/emultempl/elf32.em binutils-2.17.50.0.17/ld/emultempl/elf32.em
  2. --- binutils-2.17.50.0.17.oorig/ld/emultempl/elf32.em 2007-06-18 19:31:40.000000000 +0200
  3. +++ binutils-2.17.50.0.17/ld/emultempl/elf32.em 2007-06-25 10:01:25.000000000 +0200
  4. @@ -1007,6 +1007,8 @@
  5. && command_line.rpath == NULL)
  6. {
  7. lib_path = (const char *) getenv ("LD_RUN_PATH");
  8. + if ((lib_path) && (strlen (lib_path) == 0))
  9. + lib_path = NULL;
  10. if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
  11. force))
  12. break;
  13. @@ -1191,6 +1193,8 @@
  14. rpath = command_line.rpath;
  15. if (rpath == NULL)
  16. rpath = (const char *) getenv ("LD_RUN_PATH");
  17. + if ((rpath) && (strlen (rpath) == 0))
  18. + rpath = NULL;
  19. if (! (bfd_elf_size_dynamic_sections
  20. (output_bfd, command_line.soname, rpath,
  21. command_line.filter_shlib,