From: John Cherry My compile regression scripts were getting random build failures for aic7xxx. The two makefiles could not handle parallel build. Occasionally they would succeed...timing dependent. 25-akpm/drivers/scsi/aic7xxx/Makefile | 8 ++++++-- 25-akpm/drivers/scsi/aic7xxx/aicasm/Makefile | 12 ++++++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff -puN drivers/scsi/aic7xxx/aicasm/Makefile~aic7xxx-parallel-build-fix drivers/scsi/aic7xxx/aicasm/Makefile --- 25/drivers/scsi/aic7xxx/aicasm/Makefile~aic7xxx-parallel-build-fix Thu Aug 14 17:08:14 2003 +++ 25-akpm/drivers/scsi/aic7xxx/aicasm/Makefile Thu Aug 14 17:08:14 2003 @@ -49,14 +49,18 @@ aicdb.h: clean: rm -f $(clean-files) -aicasm_gram.c aicasm_gram.h: aicasm_gram.y +aicasm_gram.c: aicasm_gram.h + mv $(<:.h=).tab.c $(<:.h=.c) + +aicasm_gram.h: aicasm_gram.y $(YACC) $(YFLAGS) -b $(<:.y=) $< - mv $(<:.y=).tab.c $(<:.y=.c) mv $(<:.y=).tab.h $(<:.y=.h) -aicasm_macro_gram.c aicasm_macro_gram.h: aicasm_macro_gram.y +aicasm_macro_gram.c: aicasm_macro_gram.h + mv $(<:.h=).tab.c $(<:.h=.c) + +aicasm_macro_gram.h: aicasm_macro_gram.y $(YACC) $(YFLAGS) -b $(<:.y=) -p mm $< - mv $(<:.y=).tab.c $(<:.y=.c) mv $(<:.y=).tab.h $(<:.y=.h) aicasm_scan.c: aicasm_scan.l diff -puN drivers/scsi/aic7xxx/Makefile~aic7xxx-parallel-build-fix drivers/scsi/aic7xxx/Makefile --- 25/drivers/scsi/aic7xxx/Makefile~aic7xxx-parallel-build-fix Thu Aug 14 17:08:14 2003 +++ 25-akpm/drivers/scsi/aic7xxx/Makefile Thu Aug 14 17:08:14 2003 @@ -58,7 +58,9 @@ aicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PR -p $(obj)/aic7xxx_reg_print.c -i aic7xxx_osm.h ifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y) -$(aic7xxx-gen-y): $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm +$(aic7xxx-gen-y): $(src)/aic7xxx.seq + +$(src)/aic7xxx.seq: $(obj)/aicasm/aicasm $(src)/aic7xxx.reg $(obj)/aicasm/aicasm -I$(src) -r $(obj)/aic7xxx_reg.h \ $(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \ $(src)/aic7xxx.seq @@ -72,7 +74,9 @@ aicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PR -p $(obj)/aic79xx_reg_print.c -i aic79xx_osm.h ifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y) -$(aic79xx-gen-y): $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm +$(aic79xx-gen-y): $(src)/aic79xx.seq + +$(src)/aic79xx.seq: $(obj)/aicasm/aicasm $(src)/aic79xx.reg $(obj)/aicasm/aicasm -I$(src) -r $(obj)/aic79xx_reg.h \ $(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \ $(src)/aic79xx.seq _