From fd25e2545dc834c6c5fc7a9aa62f3d0368ba8ff9 Mon Sep 17 00:00:00 2001 From: Peter Johnson <peter@tortall.net> Date: Sun, 12 Sep 2004 06:21:09 +0000 Subject: [PATCH] * tools/re2c/Makefile.inc: Update build rules for re2c-parser.c and re2c-parser.h, and include the generated files in the distribution. svn path=/trunk/yasm/; revision=1143 --- tools/re2c/Makefile.inc | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/tools/re2c/Makefile.inc b/tools/re2c/Makefile.inc index 36f7bab0..d8b069dc 100644 --- a/tools/re2c/Makefile.inc +++ b/tools/re2c/Makefile.inc @@ -26,7 +26,7 @@ EXTRA_DIST += tools/re2c/translate.c re2c_LDADD = re2c-main.$(OBJEXT) re2c_LDADD += re2c-code.$(OBJEXT) re2c_LDADD += re2c-dfa.$(OBJEXT) -re2c_LDADD += re2c-re2c-parser.$(OBJEXT) +re2c_LDADD += re2c-parser.$(OBJEXT) re2c_LDADD += re2c-actions.$(OBJEXT) re2c_LDADD += re2c-scanner.$(OBJEXT) re2c_LDADD += re2c-substr.$(OBJEXT) @@ -42,7 +42,7 @@ re2c-code.$(OBJEXT): tools/re2c/code.c re2c-dfa.$(OBJEXT): tools/re2c/dfa.c $(CC_FOR_BUILD) $(DEFAULT_INCLUDES) $(INCLUDES) -c -o $@ `test -f tools/re2c/dfa.c || echo '$(srcdir)/'`tools/re2c/dfa.c -re2c-re2c-parser.$(OBJEXT): re2c-parser.c +re2c-parser.$(OBJEXT): re2c-parser.c $(CC_FOR_BUILD) $(DEFAULT_INCLUDES) $(INCLUDES) -c -o $@ `test -f re2c-parser.c || echo '$(srcdir)/'`re2c-parser.c re2c-actions.$(OBJEXT): tools/re2c/actions.c @@ -58,15 +58,30 @@ re2c-translate.$(OBJEXT): tools/re2c/translate.c $(CC_FOR_BUILD) $(DEFAULT_INCLUDES) $(INCLUDES) -c -o $@ `test -f tools/re2c/translate.c || echo '$(srcdir)/'`tools/re2c/translate.c re2c-parser.c: tools/re2c/re2c-parser.y - $(YACCCOMPILE) $< && mv y.tab.c $@ + $(YACC) $(YFLAGS) $(AM_YFLAGS) `test -f 'tools/re2c/re2c-parser.y' || echo '$(srcdir)/'`tools/re2c/re2c-parser.y if test -f y.tab.h; then \ - if cmp -s y.tab.h $*.h; then \ - rm -f y.tab.h; \ + to=`echo "re2c-parser_H" | sed \ + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ + -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`; \ + sed "/^#/ s/Y_TAB_H/$$to/g" y.tab.h >re2c-parser.ht; \ + rm -f y.tab.h; \ + if cmp -s re2c-parser.ht re2c-parser.h; then \ + rm -f re2c-parser.ht ;\ else \ - mv y.tab.h $*.h; \ + mv re2c-parser.ht re2c-parser.h; \ fi; \ fi + if test -f y.output; then \ + mv y.output re2c-parser.output; \ + fi + sed '/^#/ s|y\.tab\.c|re2c-parser.c|' y.tab.c >re2c-parser.ct && mv re2c-parser.ct re2c-parser.c + rm -f y.tab.c + re2c-parser.h: re2c-parser.c + @if test ! -f $@; then \ + rm -f re2c-parser.c; \ + $(MAKE) re2c-parser.c; \ + else :; fi cleanup_SOURCES = EXTRA_DIST += tools/re2c/cleanup.c @@ -82,6 +97,9 @@ BUILT_SOURCES += re2c-parser.h CLEANFILES += re2c-parser.c CLEANFILES += re2c-parser.h +EXTRA_DIST += re2c-parser.c +EXTRA_DIST += re2c-parser.h + EXTRA_DIST += tools/re2c/CHANGELOG EXTRA_DIST += tools/re2c/NO_WARRANTY EXTRA_DIST += tools/re2c/README -- 2.40.0