source: trunk/essentials/sys-devel/automake-1.8/lib/am/yacc.am

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

automake 1.8.5

File size: 2.1 KB
Line 
1## automake - create Makefile.in from Makefile.am
2## Copyright (C) 1998, 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
3
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.
8
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.
13
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.
18
19?GENERIC?%EXT%%DERIVED-EXT%:
20?!GENERIC?%OBJ%: %SOURCE%
21if %?MORE-THAN-ONE%
22?GENERIC? $(SHELL) $(YLWRAP) %SOURCE% y.tab.c %OBJ% y.tab.h %BASE%.h y.output %BASE%.output -- %COMPILE%
23## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
24?!GENERIC? $(SHELL) $(YLWRAP) `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% y.tab.c %OBJ% y.tab.h %BASE%.h y.output %BASE%.output -- %COMPILE%
25else !%?MORE-THAN-ONE%
26?GENERIC? %COMPILE% %SOURCE%
27## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
28?!GENERIC? %COMPILE% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
29## Edit out Bison multiple inclusion guards. It may be BISON_Y_TAB_H,
30## or Y_TAB_H depending upon the version, that's why the regexp is
31## so loose.
32 if test -f y.tab.h; then \
33 to=`echo "%BASE%_H" | sed \
34 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
35 -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`; \
36 sed "/^#/ s/Y_TAB_H/$$to/g" y.tab.h >%BASE%.ht; \
37 rm -f y.tab.h; \
38 if cmp -s %BASE%.ht %BASE%.h; then \
39 rm -f %BASE%.ht ;\
40 else \
41 mv %BASE%.ht %BASE%.h; \
42 fi; \
43 fi
44 if test -f y.output; then \
45 mv y.output %BASE%.output; \
46 fi
47## Edit out `#line' or `#' directives.
48 sed '/^#/ s|y\.tab\.c|%OBJ%|' y.tab.c >%OBJ%t && mv %OBJ%t %OBJ%
49 rm -f y.tab.c
50endif !%?MORE-THAN-ONE%
Note: See TracBrowser for help on using the repository browser.