]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
added new tests
authorThomas Tanner <tanner@gmx.de>
Sat, 13 Mar 1999 17:47:55 +0000 (17:47 +0000)
committerThomas Tanner <tanner@gmx.de>
Sat, 13 Mar 1999 17:47:55 +0000 (17:47 +0000)
tests/build-relink.test [new file with mode: 0755]
tests/demo-nofast.test [new file with mode: 0755]

diff --git a/tests/build-relink.test b/tests/build-relink.test
new file mode 100755 (executable)
index 0000000..9fb506e
--- /dev/null
@@ -0,0 +1,94 @@
+#! /bin/sh
+# build-relink.test - check to see whether shlibpath overrides runpath
+
+# Test script header.
+need_prefix=yes
+if test -z "$srcdir"; then
+  srcdir=`echo "$0" | sed 's%/[^/]*$%%'`
+  test "$srcdir" = "$0" && srcdir=.
+  test "${VERBOSE+set}" != "set" && VERBOSE=yes
+fi
+. $srcdir/defs || exit 1
+
+# Check that things are built.
+if test -f ../demo/hell; then :
+else
+  echo "You must run demo-inst.test before $0" 1>&2
+  exit 1
+fi
+
+# Change to our build directory.
+cd ../demo || exit 1
+
+# Unfortunately, we need access to libtool internals for this test.
+objdir=NONE
+eval `egrep -e '^objdir=' ./libtool 2>/dev/null`
+if test "$objdir" = NONE; then
+  echo "objdir not set in ../demo/libtool" 1>&2
+  exit 1
+fi
+
+shlibpath_overrides_runpath=NONE
+eval `egrep -e '^shlibpath_overrides_runpath=' ./libtool 2>/dev/null`
+if test "$shlibpath_overrides_runpath" = NONE; then
+  echo "shlibpath_overrides_runpath not set in ../demo/libtool" 1>&2
+  exit 1
+fi
+
+# Check to make sure we have a dynamic library.
+library_names=NONE
+eval `egrep -e '^library_names=' ./libhello.la 2>/dev/null`
+
+if test "$library_names" = NONE; then
+  echo "library_names not set in ../demo/libhello.la" 1>&2
+  exit 1
+elif test -z "$library_names"; then
+  echo "= Exiting: ../demo/libhello.la is not a shared library"
+  exit 0
+fi
+
+./hell # so that it links on-demand if needed
+
+echo "removing libhello.la from ../demo"
+rm -f libhello.la $objdir/libhello.*
+
+echo "running ../demo/hell"
+if ./hell; then
+  :
+else
+  echo "= Exiting: ../demo/hell does not run, maybe libhello was not installed"
+  exit 1
+fi
+
+echo "linking a broken ../demo/libhello.la"
+if $make libhello.la libhello_la_OBJECTS=hello.lo; then
+  :
+else
+  echo "= Exiting: cannot link broken libhello.la"
+  exit 1
+fi
+rm -f libhello.la
+
+echo "running ../demo/hell with broken libhello.la"
+if (./hell) 2>&1; then
+  echo "= Exiting: ../demo/hell runs even though libhello.la is incomplete"
+  echo "shlibpath_overrides_runpath should be set to no"
+  exit 1
+else
+  echo "Failed, as expected"
+fi
+
+if test "$shlibpath_overrides_runpath" != yes; then
+  rm -f $objdir/lt-hell || exit 1
+  cp $objdir/hell $objdir/lt-hell || exit 1
+  echo "running ../demo/hell with installed libhello.la"
+  if ./hell; then
+    echo "Worked, as expected"
+  else
+    echo "shlibpath_overrides_runpath should be set to yes"
+    status=1
+  fi
+  rm -f $objdir/lt-hell
+fi
+
+exit $status
diff --git a/tests/demo-nofast.test b/tests/demo-nofast.test
new file mode 100755 (executable)
index 0000000..e9c89e8
--- /dev/null
@@ -0,0 +1,30 @@
+#! /bin/sh
+# demo-nofast.test - try configuring the ../demo subdirectory
+
+# Test script header.
+need_prefix=yes
+if test -z "$srcdir"; then
+  srcdir=`echo "$0" | sed 's%/[^/]*$%%'`
+  test "$srcdir" = "$0" && srcdir=.
+  test "${VERBOSE+set}" != "set" && VERBOSE=yes
+fi
+. $srcdir/defs || exit 1
+
+# Maybe we have a VPATH build, in which case, create a new subdir.
+test -d ../demo || mkdir ../demo
+
+# Change to our build directory.
+cd ../demo || exit 1
+
+# Possibly clean up the distribution.
+if test -f Makefile; then
+  echo "= Running $make distclean in ../demo"
+  $make distclean
+fi
+rm -f config.cache
+
+# Configure the demonstration.
+echo "= Configuring in ../demo (prefix=$prefix)"
+CONFIG_SITE=/dev/null ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --enable-fast-install=no || exit 1
+
+exit 0