source: trunk/essentials/sys-devel/automake-1.9/tests/cond36.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) 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# Check rules output for parser defined conditionally.
22
23required='flex bison gcc'
24. ./defs
25
26set -e
27
28cat >>configure.in <<'EOF'
29AM_CONDITIONAL([CASE_A], test -z "$case_B")
30AC_PROG_CC
31AM_PROG_LEX
32AC_PROG_YACC
33AC_OUTPUT
34EOF
35
36cat >>Makefile.am <<'EOF'
37AM_YFLAGS = -d
38
39BUILT_SOURCES = tparse.h
40
41if CASE_A
42bin_PROGRAMS = ta
43ta_SOURCES = ta.c tparse.h tscan.l tparse.y
44ta_LDADD = $(LEXLIB)
45else
46bin_PROGRAMS = tb
47tb_SOURCES = tb.c tparse.h tscan.l tparse.y
48tb_LDADD = $(LEXLIB)
49tparse.h: tparce.c
50 echo whatever
51endif
52EOF
53
54$ACLOCAL
55
56# Presently Automake doesn't fully support partially overriden rules
57# and should complain.
58AUTOMAKE_fails --add-missing
59grep 'tparse.h.*already defined' stderr
60$AUTOMAKE -Wno-error
61
62# Still and all, it should generate two rules.
63test `grep tparse.h: Makefile.in | wc -l` = 2
64grep '@CASE_A_TRUE@tparse.h:' Makefile.in
65grep '@CASE_A_FALSE@tparse.h:' Makefile.in
Note: See TracBrowser for help on using the repository browser.