diff --git a/ChangeLog b/ChangeLog index 4cfe515f..4df0afb8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2004-10-13 Gary V. Vaughan + + * tests/cdemo-undef.test: New test for hosts that allow shared + libraries with undefined symbols, but have no C++ compiler + installed. + * tests/Makefile.am (COMMON_TESTS): Add it. + 2004-10-13 Peter O'Gorman * config/ltmain.m4sh: Make sure that we $show what we will $run, diff --git a/tests/Makefile.am b/tests/Makefile.am index ced591e4..101cda28 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -63,7 +63,8 @@ COMMON_TESTS = \ depdemo-shared.test depdemo-make.test depdemo-exec.test \ depdemo-inst.test depdemo-relink.test depdemo-unst.test \ mdemo-shared.test mdemo-make.test mdemo-exec.test \ - mdemo-inst.test mdemo-unst.test + mdemo-inst.test mdemo-unst.test \ + cdemo-undef.test cdemo-make.test cdemo-exec.test if HAVE_CXX if HAVE_F77 diff --git a/tests/cdemo-undef.test b/tests/cdemo-undef.test new file mode 100755 index 00000000..1c689474 --- /dev/null +++ b/tests/cdemo-undef.test @@ -0,0 +1,47 @@ +#! /bin/sh +# cdemo-undef - test generating shared libraries with undefined symbols + +# Copyright (C) 2003, 2004 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, a copy can be downloaded from +# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free +# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. + +. ./defs || exit 1 + +func_mkprefixdir +func_cd "cdemo" +func_make_distclean +func_configure "--disable-static" + +grep '^allow_undefined=.?unsupported.?$' ./libtool >/dev/null 2>&1 \ + && func_skip "$host doesn't support undefined symbols in shared libs" + +if test -f ./libtool; then + $SED 's,allow_undefined=no,allow_undefined=yes,g' ./libtool > ltnew +else + exit 1 +fi + +if test -f ./ltnew; then + rm -f libtool + mv ltnew libtool +else + exit 1 +fi + +exit 0