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

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

automake 1.9.6

File size: 1.8 KB
Line 
1#! /bin/sh
2# Copyright (C) 2003 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
23required='libtoolize gcc'
24. ./defs || exit 1
25
26set -e
27
28cat >> configure.in << 'END'
29AC_PROG_CC
30AC_LIBTOOL_DLOPEN
31AM_PROG_LIBTOOL
32AC_OUTPUT
33END
34
35cat > Makefile.am << 'END'
36lib_LTLIBRARIES = libmod1.la mod2.la
37libmod1_la_SOURCES = mod1.c
38libmod1_la_LDFLAGS = -module
39libmod1_la_LIBADD = -dlopen mod2.la
40mod2_la_SOURCES = mod2.c
41mod2_la_LDFLAGS = -module
42
43bin_PROGRAMS = prg
44prg_SOURCES = prg.c
45prg_LDADD = -dlopen libmod1.la -dlpreopen mod2.la
46
47print:
48 @echo 1BEG: $(prg_DEPENDENCIES) :END1
49 @echo 2BEG: $(libmod1_la_DEPENDENCIES) :END2
50
51END
52
53mkdir liba
54
55cat > mod1.c << 'END'
56int
57mod1 ()
58{
59 return 1;
60}
61END
62
63cat > mod2.c << 'END'
64int
65mod2 ()
66{
67 return 2;
68}
69END
70
71cat > prg.c << 'END'
72int
73main ()
74{
75 return 0;
76}
77END
78
79libtoolize --force --copy
80$ACLOCAL
81$AUTOCONF
82$AUTOMAKE --add-missing --copy
83
84./configure
85$MAKE print >output 2>&1
86cat output
87grep '1BEG: libmod1.la mod2.la :END1' output
88grep '2BEG: mod2.la :END2' output
89$MAKE
Note: See TracBrowser for help on using the repository browser.