Install msysDTK-1.0.1
[msysgit.git] / share / automake-1.7 / am / yacc.am
blob8dcbdb8cda6ad625e4193464b440e1c1665fa99c
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright 1998, 1999, 2001  Free Software Foundation, Inc.
4 ## This program is free software; you can redistribute it and/or modify
5 ## it under the terms of the GNU General Public License as published by
6 ## the Free Software Foundation; either version 2, or (at your option)
7 ## any later version.
9 ## This program is distributed in the hope that it will be useful,
10 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 ## GNU General Public License for more details.
14 ## You should have received a copy of the GNU General Public License
15 ## along with this program; if not, write to the Free Software
16 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17 ## 02111-1307, USA.
19 ?GENERIC?%EXT%%DERIVED-EXT%:
20 ?!GENERIC?%OBJ%: %SOURCE%
21 if %?MORE-THAN-ONE%
22         $(SHELL) $(YLWRAP) `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% y.tab.c %OBJ% y.tab.h %BASE%.h y.output %BASE%.output -- %COMPILE%
23 else !%?MORE-THAN-ONE%
24         %COMPILE% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
25 ## Edit out `#line' or `#' directives.
26         sed '/^#/ s|y\.tab\.c|%OBJ%|' y.tab.c >%OBJ%
27         rm -f y.tab.c
28 ## Edit out Bison multiple inclusion guards.  It may be BISON_Y_TAB_H,
29 ## or Y_TAB_H depending upon the version, that's why the regexp is
30 ## so loose.
31         if test -f y.tab.h; then \
32           to=`echo "%BASE%_H" | sed \
33                 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
34                 -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`; \
35           sed "/^#/ s/Y_TAB_H/$$to/g" y.tab.h >%BASE%.ht; \
36           rm -f y.tab.h; \
37           if cmp -s %BASE%.ht %BASE%.h; then \
38             rm -f %BASE%.ht ;\
39           else \
40             mv %BASE%.ht %BASE%.h; \
41           fi; \
42         fi
43         if test -f y.output; then \
44           mv y.output %BASE%.output; \
45         fi
46 endif !%?MORE-THAN-ONE%