libtool/tests/link-2.test

49 lines
1.5 KiB
Plaintext
Raw Normal View History

1997-04-02 03:18:28 +08:00
#! /bin/sh
2003-10-15 05:46:13 +08:00
# link-2.test - check that .lo files aren't made into programs.
# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
2003-10-15 05:46:13 +08:00
# 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.
1997-04-02 03:18:28 +08:00
Since defs can change (path to grep for example) when it is made for a different host, it can't be shipped. That also means that defs will always be generated in the build tree, so each test case can have the srcdir discovery factored away into tests/defs.in: * Makefile.am (EXTRA_DIST): s/defs/defs.in/g * tests/Makefile.am (defs): New rule to remake defs from the parent directory's Makefile. * tests/cdemo-conf.test, tests/cdemo-exec.test, tests/cdemo-make.test, tests/cdemo-shared.test, tests/cdemo-static.test, tests/demo-conf.test, tests/demo-deplibs.test, tests/demo-exec.test, tests/demo-hardcode.test, tests/demo-inst.test, tests/demo-make.test, tests/demo-nofast.test, tests/demo-noinst-link.test, tests/demo-nopic.test, tests/demo-pic.test, tests/demo-relink.test, tests/demo-shared.test, tests/demo-static.test, tests/demo-unst.test, tests/depdemo-conf.test, tests/depdemo-exec.test, tests/depdemo-inst.test, tests/depdemo-make.test, tests/depdemo-nofast.test, tests/depdemo-relink.test, tests/depdemo-shared.test, tests/depdemo-static.test, tests/depdemo-unst.test, tests/f77demo-conf.test, tests/f77demo-exec.test, tests/f77demo-make.test, tests/f77demo-shared.test, tests/f77demo-static.test, tests/link-2.test, tests/link.test, tests/mdemo-conf.test, tests/mdemo-dryrun.test, tests/mdemo-exec.test, tests/mdemo-inst.test, tests/mdemo-make.test, tests/mdemo-shared.test, tests/mdemo-static.test, tests/mdemo-unst.test, tests/mdemo2-conf.test, tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test, tests/pdemo-exec.test, tests/pdemo-inst.test, tests/pdemo-make.test, tests/quote.test, tests/sh.test, tests/suffix.test, tests/tagdemo-conf.test, tests/tagdemo-exec.test, tests/tagdemo-make.test, tests/tagdemo-shared.test, tests/tagdemo-static.test, tests/tagtrace.test: Removed srcdir discovery boilerplate... * tests/defs.in: ...and put it here.
2004-09-23 21:07:15 +08:00
. defs || exit 1
1997-04-02 03:18:28 +08:00
rm -f hell.lo
cat > hell.lo <<EOF
# Generated by libtool
pic_object=none
non_pic_object=hell.o
EOF
1997-04-02 03:18:28 +08:00
# Try a sample link command.
linkresult=`$LIBTOOL -n --mode=link $CC -o something foo.o hell.lo`
res=$?
rm -f hell.lo
1997-04-02 03:18:28 +08:00
2003-10-15 05:46:13 +08:00
test $res -eq 0 || exit $EXIT_FAILURE
1997-04-02 03:18:28 +08:00
echo "$linkresult"
case "$linkresult" in
*".lo "*)
2003-10-15 05:46:13 +08:00
func_fail "$progname: .lo files should not be linked into programs"
1997-04-02 03:18:28 +08:00
;;
esac
2003-10-15 05:46:13 +08:00
exit $EXIT_SUCCESS