Hi, The ELF RPATH header (an executable-specific search path for shared libraries) can include the special string $ORIGIN, which should be substituted with the directory in which the binary resides. On Hurd this is not implemented yet; the filename used is not available to a newly executed binary.
This series builds on Emilio's file_exec_file_name patches from last year and is the libc counterpart to the Hurd patches posted here: http://lists.gnu.org/archive/html/bug-hurd/2011-08/msg00047.html Emilio Pozuelo Monfort (2): Use the new file_exec_file_name RPC Add check for file_exec_file_name Jeremie Koenig (5): Hurd startup: fetch the exec filename using exec_startup_get_info_2 Hurd dl-origin.c: start with a copy of elf/dl-origin.c Hurd dl-origin.c: Use _hurd_init_filename if available Propagate _hurd_init_filename beyond dynamic loading _hurd_exec_file_name: canonicalize filename aclocal.m4 | 17 +++++++ hurd/Versions | 3 + hurd/hurd.h | 25 +++++++++- hurd/hurdexec.c | 64 ++++++++++++++++++++++----- hurd/hurdstartup.c | 25 ++++++++++- hurd/hurdstartup.h | 2 + sysdeps/mach/hurd/configure.in | 6 +++ sysdeps/mach/hurd/dl-origin.c | 76 ++++++++++++++++++++++++++++++++ sysdeps/mach/hurd/execve.c | 6 ++- sysdeps/mach/hurd/fexecve.c | 7 ++- sysdeps/mach/hurd/i386/init-first.c | 1 + sysdeps/mach/hurd/powerpc/init-first.c | 1 + sysdeps/mach/hurd/spawni.c | 59 +++++++++++++++---------- 13 files changed, 248 insertions(+), 44 deletions(-) create mode 100644 sysdeps/mach/hurd/dl-origin.c -- 1.7.5.4