Merge pull request #27 from junghans/fix_parallel_build
fixed parallel build
diff --git a/makefile b/makefile
index e0a43da..3f3c3c2 100644
--- a/makefile
+++ b/makefile
@@ -54,10 +54,15 @@
$(OFILES): awk.h ytab.h proto.h
-ytab.c: awk.h proto.h awkgram.y
+#Clear dependency for parallel build: (make -j)
+#YACC generated y.tab.c and y.tab.h at the same time
+#this needs to be a static pattern rules otherwise multiple target
+#are mapped onto multiple executions of yacc, which overwrite
+#each others outputs.
+y%.c y%.h: awk.h proto.h awkgram.y
$(YACC) $(YFLAGS) awkgram.y
- mv y.tab.c ytab.c
- mv y.tab.h ytab.h
+ mv y.$*.c y$*.c
+ mv y.$*.h y$*.h
ytab.h: ytab.c