source: trunk/essentials/sys-devel/automake-1.8/tests/ansi7.test

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

automake 1.8.5

File size: 1.9 KB
Line 
1#! /bin/sh
2# Copyright (C) 2002 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., 59 Temple Place - Suite 330,
19# Boston, MA 02111-1307, USA.
20
21# Check ansi2knr on a source file in subdirectory.
22# ansi6.test is the same test without subdir-objects.
23# From Kevin Ryde.
24
25required=gcc
26. ./defs || exit 1
27
28cat > configure.in << 'END'
29AC_INIT(ansi6, 1.0)
30AM_INIT_AUTOMAKE
31AC_PROG_CC
32AM_PROG_CC_C_O
33AM_C_PROTOTYPES
34AC_EXEEXT
35AC_OBJEXT
36AC_CONFIG_FILES(Makefile)
37AC_OUTPUT
38END
39
40cat > Makefile.am << 'END'
41AUTOMAKE_OPTIONS = ansi2knr subdir-objects
42bin_PROGRAMS = hello
43hello_SOURCES = hello.c sub/dir.c
44END
45
46cat > hello.c << 'END'
47#include <stdio.h>
48
49extern int foo ();
50
51int
52main (int argc, char **argv)
53{
54 printf ("%d\n", foo ());
55}
56END
57
58mkdir sub
59
60cat > sub/dir.c << 'END'
61int
62foo ()
63{
64 return 23;
65}
66END
67
68set -e
69
70$ACLOCAL
71$AUTOCONF
72$AUTOMAKE -a
73
74# Sanity check: make sure it's ok to set ac_cv_prog_cc_stdc as we do.
75grep ac_cv_prog_cc_stdc configure
76
77./configure ac_cv_prog_cc_stdc=no
78$MAKE
79
80test -f hello_.c
81test -f sub/dir_.c # Must be in sub directory, unlike ansi6.test.
82test ! -f dir_.c
83$MAKE distclean
84test ! -f hello_.c
85test ! -f sub/dir_.c
86
87# Also run without forcing ansi2knr, so we make sure the
88# rules work with ANSI compilers.
89# Report from Andreas Schwab.
90
91./configure
92$MAKE
Note: See TracBrowser for help on using the repository browser.