source: trunk/essentials/sys-devel/automake-1.10/tests/libtool7.test

Last change on this file was 3147, checked in by bird, 18 years ago

automake 1.10

File size: 2.1 KB
Line 
1#! /bin/sh
2# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
3#
4# This file is part of GNU Automake.
5#
6# GNU Automake is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2, or (at your option)
9# any later version.
10#
11# GNU Automake is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with Automake; see the file COPYING. If not, write to
18# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19# Boston, MA 02110-1301, USA.
20
21# Make sure we allow Libtool's -dlopen/-dlpreopen
22# Also check basic support for AM_LIBTOOLFLAGS/LIBTOOLFLAGS
23
24required='libtoolize gcc'
25. ./defs || exit 1
26
27set -e
28
29cat >> configure.in << 'END'
30AC_PROG_CC
31AC_LIBTOOL_DLOPEN
32AM_PROG_LIBTOOL
33AC_OUTPUT
34END
35
36cat > Makefile.am << 'END'
37AUTOMAKE_OPTIONS = subdir-objects
38AM_LIBTOOLFLAGS = --silent
39lib_LTLIBRARIES = libmod1.la mod2.la
40libmod1_la_SOURCES = sub/mod1.c
41libmod1_la_LDFLAGS = -module
42libmod1_la_LIBADD = -dlopen mod2.la
43mod2_la_SOURCES = mod2.c
44mod2_la_LDFLAGS = -module
45mod2_la_LIBTOOLFLAGS =
46
47bin_PROGRAMS = prg
48prg_SOURCES = prg.c
49prg_LDADD = -dlopen libmod1.la -dlpreopen mod2.la
50
51print:
52 @echo 1BEG: $(prg_DEPENDENCIES) :END1
53 @echo 2BEG: $(libmod1_la_DEPENDENCIES) :END2
54 @echo 3BEG: $(LTCOMPILE) :END3
55END
56
57mkdir sub liba
58
59cat > sub/mod1.c << 'END'
60int
61mod1 ()
62{
63 return 1;
64}
65END
66
67cat > mod2.c << 'END'
68int
69mod2 ()
70{
71 return 2;
72}
73END
74
75cat > prg.c << 'END'
76int
77main ()
78{
79 return 0;
80}
81END
82
83libtoolize --force --copy
84$ACLOCAL
85$AUTOCONF
86$AUTOMAKE --add-missing --copy
87
88./configure
89env LIBTOOLFLAGS=--silent $MAKE print >output 2>&1
90cat output
91grep '1BEG: libmod1.la mod2.la :END1' output
92grep '2BEG: mod2.la :END2' output
93grep '3BEG: .*silent.*silent.* :END3' output
94test 2 -le `grep mod2_la_LIBTOOLFLAGS Makefile | wc -l`
95$MAKE
Note: See TracBrowser for help on using the repository browser.