y.tab.h is side-product of different rule. Explicitly add it to rulesets so shuffle and friends won't break graph ordering. config.h and awk.h are just a missing dependency. https://bugs.gentoo.org/880189 https://bugs.gentoo.org/896314 --- a/nawk/Makefile.mk +++ b/nawk/Makefile.mk @@ -17,6 +17,8 @@ (echo '1i'; echo '#include '; echo '.'; echo 'w';) | \ ed -s y.tab.h +y.tab.h: awk.g.c + awk.g.2001.c: awk.g.2001.y awk.g.c $(YACC) awk.g.2001.y mv -f y.tab.c awk.g.2001.c --- a/grep/Makefile.mk +++ b/grep/Makefile.mk @@ -104,5 +104,5 @@ svid3.o: grep.h config.h sus.o: grep.h config.h alloc.h su3.o: grep.h config.h alloc.h -ac.o: alloc.h grep.h +ac.o: alloc.h grep.h config.h rcomp.o: grep.h config.h alloc.h --- a/oawk/Makefile.mk +++ b/oawk/Makefile.mk @@ -43,7 +43,7 @@ lib.o: lib.c $(CC) $(CFLAGSS) $(CPPFLAGS) $(XO5FL) $(LARGEF) $(IUXRE) $(ICOMMON) $(IWCHAR) -c lib.c -main.o: main.c +main.o: main.c awk.h $(CC) $(CFLAGSS) $(CPPFLAGS) $(XO5FL) $(LARGEF) $(IUXRE) $(ICOMMON) $(IWCHAR) -c main.c parse.o: parse.c @@ -55,7 +55,7 @@ run.o: run.c $(CC) $(CFLAGSS) $(CPPFLAGS) $(XO5FL) $(LARGEF) $(IUXRE) $(ICOMMON) $(IWCHAR) -c run.c -tran.o: tran.c +tran.o: tran.c awk.h $(CC) $(CFLAGSS) $(CPPFLAGS) $(XO5FL) $(LARGEF) $(IUXRE) $(ICOMMON) $(IWCHAR) -c tran.c token.o: token.c