summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--Makefile.am6
-rw-r--r--Makefile.in6
-rw-r--r--README12
4 files changed, 21 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index b4e60c51..533c5490 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-12 Petr Ovtchenkov <ptr@void-ptr.info>
+ Andrew J. Schorr <aschorr@telemetry-investments.com>
+
+ * Makefile.am (command.c): Make dependant on awkgram.c so
+ that bison is run serially with make -j. Use -o option so
+ that we no longer need bisonfix.awk in this rule.
+
2017-08-28 Arnold D. Robbins <arnold@skeeve.com>
* interpret.h (r_interpret): Add some casts to avoid warning
diff --git a/Makefile.am b/Makefile.am
index 0d2efd18..1040a77e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -193,9 +193,9 @@ awkgram.c: awkgram.y
if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \
else :; fi
-command.c: command.y
- $(YACC) -p zz $<
- sed 's/parse error/syntax error/g' < y.tab.c | awk -f "$(srcdir)"/bisonfix.awk command > $*.c && rm y.tab.c
+command.c: command.y awkgram.c
+ $(YACC) -o $@ -p zz $<
+ sed 's/parse error/syntax error/g' < $@ > $@.tmp && mv $@.tmp $@
# This is for my development & testing.
efence: gawk
diff --git a/Makefile.in b/Makefile.in
index 9a46553a..e978a6e1 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1203,9 +1203,9 @@ awkgram.c: awkgram.y
if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \
else :; fi
-command.c: command.y
- $(YACC) -p zz $<
- sed 's/parse error/syntax error/g' < y.tab.c | awk -f "$(srcdir)"/bisonfix.awk command > $*.c && rm y.tab.c
+command.c: command.y awkgram.c
+ $(YACC) -o $@ -p zz $<
+ sed 's/parse error/syntax error/g' < $@ > $@.tmp && mv $@.tmp $@
# This is for my development & testing.
efence: gawk
diff --git a/README b/README
index 93c4987b..8c1916e0 100644
--- a/README
+++ b/README
@@ -34,10 +34,14 @@ have read and didn't, and you bug me about it, I'm going to yell at you.
See the file INSTALL for installation instructions.
-If you have neither bison nor yacc, use the awkgram.c file here. It was
-generated with bison, and has no proprietary code in it. (Note that
-modifying awkgram.y without bison or yacc will be difficult, at best.
-You might want to get a copy of bison from the FSF too.)
+If you have neither Bison nor yacc, use the awkgram.c file here. It was
+generated with Bison, and has no proprietary code in it. (Note that
+modifying awkgram.y without Bison or yacc will be difficult, at best.
+You might want to get a copy of Bison from the FSF too.)
+
+Since there are two parsers in gawk (one for the grammar, one for the
+debugger), there is a dependency on Bison's ability to rename the
+yacc internal variables. So, you should really use Bison and not yacc.
If you have an MS-DOS, MS-Windows, or OS/2 system, use the stuff in the `pc'
directory. Similarly, there is a separate directory for VMS.