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

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

automake 1.9.6

File size: 2.1 KB
Line 
1#! /bin/sh
2# Copyright (C) 2002, 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# Try to build and package a program linked to a Libtool library.
22# Also make sure we do not bloat the Makefile with unneeded rules.
23
24required='libtoolize gcc'
25. ./defs || exit 1
26
27set -e
28
29cat >> configure.in << 'END'
30AC_PROG_CC
31AM_PROG_LIBTOOL
32AC_OUTPUT
33END
34
35cat > Makefile.am << 'END'
36lib_LTLIBRARIES = lib0.la liba/liba.la
37lib0_la_SOURCES = 0.c
38liba_liba_la_SOURCES = liba/a.c
39
40bin_PROGRAMS = 1
411_SOURCES = sub/1.c
421_LDADD = lib0.la $(top_builddir)/liba/liba.la
43END
44
45mkdir liba sub
46
47cat > 0.c << 'END'
48int
49zero (void)
50{
51 return 0;
52}
53END
54
55cat > sub/1.c << 'END'
56int zero ();
57
58int
59main ()
60{
61 return zero ();
62}
63END
64
65cat > liba/a.c << 'END'
66int
67a (void)
68{
69 return 'a';
70}
71END
72
73# Use --copy to workaround a bug in Cygwin's `cp -p' during distcheck.
74# (This bug is already exhibited by subobj9.test.) In brief: Cygwin's
75# `cp -p' tries to preserve group and owner of the source and fails
76# to do so under normal accounts. With --copy we ensure we own all files.
77
78libtoolize --force --copy
79$ACLOCAL
80$AUTOCONF
81$AUTOMAKE --add-missing --copy
82
83# We need explicit rules to build 1.o and a.lo. Make sure
84# Automake did not output additional rules for 1.lo and and a.lo.
85$FGREP '1.o:' Makefile.in
86$FGREP '1.lo:' Makefile.in && exit 1
87$FGREP 'a.o:' Makefile.in && exit 1
88$FGREP 'a.lo:' Makefile.in
89
90./configure
91
92$MAKE
93$MAKE distcheck
Note: See TracBrowser for help on using the repository browser.