#! /bin/sh # Copyright (C) 2001, 2002, 2003, 2011 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Test of yacc functionality, derived from GNU binutils # by Tim Van Holder. . ./defs || Exit 1 set -e cat > configure.in << 'END' AC_INIT AM_INIT_AUTOMAKE(nonesuch, nonesuch) AC_PROG_CC AM_PROG_CC_C_O AC_PROG_YACC AC_OUTPUT(Makefile) END cat > Makefile.am << 'END' bin_PROGRAMS = maude maude_SOURCES = sub/maude.y END mkdir sub : > sub/maude.y $ACLOCAL $AUTOMAKE -a grep '^maude\.c:.*maude\.y' Makefile.in ## Try again with subdir-objects. cat > Makefile.am << 'END' AUTOMAKE_OPTIONS = subdir-objects bin_PROGRAMS = maude maude_SOURCES = sub/maude.y END $ACLOCAL $AUTOMAKE -a # No rule needed, the default .y.c: inference rule is enough # (but there may be an additional dependency on a dirstamp file). grep '^sub/maude\.c:.*maude\.y' Makefile.in && Exit 1 ## Try again with per-exe flags. cat > Makefile.am << 'END' bin_PROGRAMS = maude maude_SOURCES = sub/maude.y ## A particularly trickey case. maude_YFLAGS = -d END $ACLOCAL || Exit 1 $AUTOMAKE -a || Exit 1 # Rule should use maude_YFLAGS. grep 'AM_YFLAGS.*maude' Makefile.in && Exit 1 # Silly regression. grep 'maudec' Makefile.in && Exit 1 # Make sure the .o file is required. grep '^am_maude_OBJECTS.*maude' Makefile.in :