From 27d86283a44a3bc17a80c7f663c5adff666ef0fd Mon Sep 17 00:00:00 2001 From: Thomas Tanner Date: Sat, 13 Mar 1999 17:47:55 +0000 Subject: [PATCH] added new tests --- tests/build-relink.test | 94 +++++++++++++++++++++++++++++++++++++++++ tests/demo-nofast.test | 30 +++++++++++++ 2 files changed, 124 insertions(+) create mode 100755 tests/build-relink.test create mode 100755 tests/demo-nofast.test diff --git a/tests/build-relink.test b/tests/build-relink.test new file mode 100755 index 000000000..9fb506e04 --- /dev/null +++ b/tests/build-relink.test @@ -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 index 000000000..e9c89e8b5 --- /dev/null +++ b/tests/demo-nofast.test @@ -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 -- 2.47.2