300-012_check_ldrunpath_length.patch 857 B

123456789101112131415161718192021
  1. diff -Nura binutils-2.21.orig/ld/emultempl/elf32.em binutils-2.21/ld/emultempl/elf32.em
  2. --- binutils-2.21.orig/ld/emultempl/elf32.em 2010-10-29 09:10:36.000000000 -0300
  3. +++ binutils-2.21/ld/emultempl/elf32.em 2010-12-10 09:26:56.746102724 -0300
  4. @@ -1270,6 +1270,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. @@ -1497,6 +1499,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. for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next)
  20. if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)