scsi: aic7xxx: fix firmware build fatal error
Commit Message
When building with CONFIG_AIC7XXX_BUILD_FIRMWARE=y, two fatal errors
are reported as shown below:
> aicasm_gram.tab.c:203:10: fatal error: aicasm_gram.tab.h:
> No such file or directory
> aicasm_macro_gram.tab.c:167:10: fatal error: aicasm_macro_gram.tab.h:
> No such file or directory
Fix these issues to make randconfig builds more reliable.
Signed-off-by: Wang Jinchao <wangjinchao@xfusion.com>
---
drivers/scsi/aic7xxx/aicasm/Makefile | 18 +++---------------
1 file changed, 3 insertions(+), 15 deletions(-)
Comments
Wang,
> When building with CONFIG_AIC7XXX_BUILD_FIRMWARE=y, two fatal errors
> are reported as shown below:
>> aicasm_gram.tab.c:203:10: fatal error: aicasm_gram.tab.h:
>> No such file or directory
>> aicasm_macro_gram.tab.c:167:10: fatal error: aicasm_macro_gram.tab.h:
>> No such file or directory
> Fix these issues to make randconfig builds more reliable.
Applied to 6.6/scsi-staging, thanks!
On Tue, 11 Jul 2023 16:47:30 +0800, Wang Jinchao wrote:
> When building with CONFIG_AIC7XXX_BUILD_FIRMWARE=y, two fatal errors
> are reported as shown below:
> > aicasm_gram.tab.c:203:10: fatal error: aicasm_gram.tab.h:
> > No such file or directory
> > aicasm_macro_gram.tab.c:167:10: fatal error: aicasm_macro_gram.tab.h:
> > No such file or directory
> Fix these issues to make randconfig builds more reliable.
>
> [...]
Applied to 6.6/scsi-queue, thanks!
[1/1] scsi: aic7xxx: fix firmware build fatal error
https://git.kernel.org/mkp/scsi/c/ec6c7c9f5fc4
@@ -61,23 +61,11 @@ $(OUTDIR)/aicdb.h:
clean:
rm -f $(clean-files)
-# Create a dependency chain in generated files
-# to avoid concurrent invocations of the single
-# rule that builds them all.
-$(OUTDIR)/aicasm_gram.c: $(OUTDIR)/aicasm_gram.h
$(OUTDIR)/aicasm_gram.c $(OUTDIR)/aicasm_gram.h: aicasm_gram.y
- $(YACC) $(YFLAGS) -b $(<:.y=) $<
- mv $(<:.y=).tab.c $(OUTDIR)/$(<:.y=.c)
- mv $(<:.y=).tab.h $(OUTDIR)/$(<:.y=.h)
-
-# Create a dependency chain in generated files
-# to avoid concurrent invocations of the single
-# rule that builds them all.
-$(OUTDIR)/aicasm_macro_gram.c: $(OUTDIR)/aicasm_macro_gram.h
+ $(YACC) $(YFLAGS) -b $(<:.y=) $< -o $(OUTDIR)/$(<:.y=.c)
+
$(OUTDIR)/aicasm_macro_gram.c $(OUTDIR)/aicasm_macro_gram.h: aicasm_macro_gram.y
- $(YACC) $(YFLAGS) -b $(<:.y=) -p mm $<
- mv $(<:.y=).tab.c $(OUTDIR)/$(<:.y=.c)
- mv $(<:.y=).tab.h $(OUTDIR)/$(<:.y=.h)
+ $(YACC) $(YFLAGS) -b $(<:.y=) -p mm $< -o $(OUTDIR)/$(<:.y=.c)
$(OUTDIR)/aicasm_scan.c: aicasm_scan.l
$(LEX) $(LFLAGS) -o $@ $<