summaryrefslogtreecommitdiff
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