summaryrefslogtreecommitdiff
path: root/elf/ldd.sh.in
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-10-09 07:06:29 +0000
committerRoland McGrath <roland@gnu.org>1995-10-09 07:06:29 +0000
commitb122c7038e826eeabbc0118612b988c1a0f5b991 (patch)
tree1f3963026427771b6504b8afb91216895d95ba45 /elf/ldd.sh.in
parent80fd73873bd51e58039983a9416ef3bb97bdac57 (diff)
Mon Oct 9 02:54:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makeconfig (config-LDFLAGS): Define to -Wl-dynamic-linker=$(libdir)$(rtld-installed-name). (rtld-installed-name): New variable. * elf/Makefile (install-lib): Variable removed. (install-others): Define this instead, to $(libdir)(rtld-installed-name). ($(libdir)(rtld-installed-name)): New target; install from ld.so. * elf/ldd.sh.in: New file. * elf/Makefile (distribute): Add ldd.sh.in. (install-bin): Add ldd. ($(objpfx)ldd: ldd.sh.in): New rule. * sysdeps/mach/hurd/dl-sysdep.c: Use __hurd_fail throughout. * hurd/hurd.h (__hurd_fail): Replace macro with inline function. Translate some Mach errors to Hurd errors. * elf/rtld.c (dl_main): Under --list, print msg if executable is statically linked. * elf/dl-load.c (_dl_map_object_from_fd): Rewrote program header table processing. Sat Oct 7 01:25:48 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/stub/machine-gmon.h: Add #error. Fri Oct 6 01:49:48 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * elf/dynamic-link.h (elf_get_dynamic_info): If DYN is null, don't examine it.
Diffstat (limited to 'elf/ldd.sh.in')
-rw-r--r--elf/ldd.sh.in26
1 files changed, 26 insertions, 0 deletions
diff --git a/elf/ldd.sh.in b/elf/ldd.sh.in
new file mode 100644
index 0000000000..58ae501e53
--- /dev/null
+++ b/elf/ldd.sh.in
@@ -0,0 +1,26 @@
+#! /bin/sh
+
+# This is the `ldd' command, which lists what shared libraries are
+# used by given dynamically-linked executables. It works by invoking the
+# run-time dynamic linker as a command and giving it the special `--list'
+# switch.
+
+RTLD=@RTLD@
+
+case $# in
+0)
+ echo >&2 "Usage: $0 FILE..."
+ exit 1 ;;
+1)
+ # We don't list the file name when there is only one.
+ exec ${RTLD} --list "$1" && exit 1
+ exit ;;
+*)
+ set -e # Bail out immediately if ${RTLD} loses on any argument.
+ for file; do
+ echo "${file}:"
+ ${RTLD} --list "$file"
+ done
+esac
+
+exit 0