about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rwxr-xr-xconfigure31
-rw-r--r--configure.in12
-rw-r--r--elf/Makefile2
-rw-r--r--elf/ldd.sh.in10
5 files changed, 48 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 5e0887b88a..f427e33cea 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 Mon Oct 16 03:22:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
 
+	* elf/Makefile (install-others): Add missing slash.
+
+	* elf/ldd.sh.in: Prepend `./' to relative file names so ld.so
+	won't search LD_LIBRARY_PATH.
+
 	* Makefile (subdirs): Replace stdio with stdio-common and $(stdio).
 	* configure.in: Grok arg --enable-libio.
 	($stdio = libio): Define USE_IN_LIBIO.
diff --git a/configure b/configure
index 724725bce2..08609a496e 100755
--- a/configure
+++ b/configure
@@ -27,6 +27,8 @@ ac_help="$ac_help
 ac_help="$ac_help
   --with-weak-symbols	  if weak symbols are available in as and ld"
 ac_help="$ac_help
+  --enable-libio          build in GNU libio instead of GNU stdio"
+ac_help="$ac_help
   --enable-shared         build shared library [default=yes if GNU ld & ELF]"
 ac_help="$ac_help
   --enable-profile        build profiled library [default=yes]"
@@ -607,6 +609,15 @@ else
 fi
 
 
+# Check whether --enable-libio or --disable-libio was given.
+if test "${enable_libio+set}" = set; then
+  enableval="$enable_libio"
+  stdio=libio
+else
+  stdio=stdio
+fi
+
+
 # Check whether --enable-shared or --disable-shared was given.
 if test "${enable_shared+set}" = set; then
   enableval="$enable_shared"
@@ -632,6 +643,16 @@ else
 fi
 
 
+echo $ac_n "checking stdio selection""... $ac_c" 1>&4
+
+if test $stdio = libio; then
+  cat >> confdefs.h <<\EOF
+#define USE_IN_LIBIO 1
+EOF
+
+fi
+echo "$ac_t""$stdio" 1>&4
+
 ac_aux_dir=
 for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
   if test -f $ac_dir/install-sh; then
@@ -1112,7 +1133,7 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 1116 "configure"
+#line 1137 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
@@ -1126,7 +1147,7 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 1130 "configure"
+#line 1151 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
@@ -1180,7 +1201,7 @@ if eval "test \"`echo '$''{'libc_cv_friendly_stddef'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&4
 else
   cat > conftest.$ac_ext <<EOF
-#line 1184 "configure"
+#line 1205 "configure"
 #include "confdefs.h"
 #define __need_size_t
 #define __need_wchar_t
@@ -1303,7 +1324,7 @@ if eval "test \"`echo '$''{'libc_cv_have_initfini'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&4
 else
   cat > conftest.$ac_ext <<EOF
-#line 1307 "configure"
+#line 1328 "configure"
 #include "confdefs.h"
 
 int main() { return 0; }
@@ -1438,7 +1459,6 @@ fi
 
 
 
-
 if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
   config_makefile=
 else
@@ -1560,6 +1580,7 @@ s%@includedir@%$includedir%g
 s%@oldincludedir@%$oldincludedir%g
 s%@infodir@%$infodir%g
 s%@mandir@%$mandir%g
+s%@stdio@%$stdio%g
 s%@host@%$host%g
 s%@host_alias@%$host_alias%g
 s%@host_cpu@%$host_cpu%g
diff --git a/configure.in b/configure.in
index 239e7fd874..dbfb695a0b 100644
--- a/configure.in
+++ b/configure.in
@@ -43,7 +43,6 @@ AC_ARG_WITH(weak-symbols, dnl
 AC_ARG_ENABLE(libio, dnl
 [  --enable-libio          build in GNU libio instead of GNU stdio],
  	      stdio=libio, stdio=stdio)
-AC_SUBST(stdio)
 
 dnl Arguments to enable or disable building the shared, profiled, and
 dnl -fomit-frame-pointer libraries.
@@ -57,6 +56,13 @@ AC_ARG_ENABLE(omitfp, dnl
 [  --enable-omitfp       build undebuggable optimized library [default=no]],
 	    omitfp=$enableval, omitfp=no)
 
+AC_MSG_CHECKING(stdio selection)
+AC_SUBST(stdio)
+if test $stdio = libio; then
+  AC_DEFINE(USE_IN_LIBIO)
+fi
+AC_MSG_RESULT($stdio)
+
 AC_CANONICAL_HOST
 # We keep the original values in `$config_*' and never modify them, so we
 # can write them unchanged into config.make.  Everything else uses
@@ -490,10 +496,6 @@ fi
 AC_SUBST(profile)
 AC_SUBST(omitfp)
 
-if test $stdio = libio; then
-  AC_DEFINE(USE_IN_LIBIO)
-fi
-
 if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
   config_makefile=
 else
diff --git a/elf/Makefile b/elf/Makefile
index 45c2cfe854..21d2fc5fd5 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -37,7 +37,7 @@ include ../Makeconfig
 
 ifeq (yes,$(build-shared))
 extra-objs	= $(rtld-routines:=.so) soinit.so sofini.so
-install-others	= $(libdir)$(rtld-installed-name)
+install-others	= $(libdir)/$(rtld-installed-name)
 install-bin	= ldd
 endif
 
diff --git a/elf/ldd.sh.in b/elf/ldd.sh.in
index 58ae501e53..ed43789cfa 100644
--- a/elf/ldd.sh.in
+++ b/elf/ldd.sh.in
@@ -13,12 +13,20 @@ case $# in
   exit 1 ;;
 1)
   # We don't list the file name when there is only one.
-  exec ${RTLD} --list "$1" && exit 1
+  case "$1" in
+  /*) file="$1" ;;
+  *) file="./$1" ;;
+  esac
+  exec ${RTLD} --list "$file" && exit 1
   exit ;;
 *)
   set -e	# Bail out immediately if ${RTLD} loses on any argument.
   for file; do
     echo "${file}:"
+    case "$file" in
+    /*) file="$file" ;;
+    *) file="./$file" ;;
+    esac
     ${RTLD} --list "$file"
   done
 esac