diff options
Diffstat (limited to 'firmware/Makefile')
-rw-r--r-- | firmware/Makefile | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/firmware/Makefile b/firmware/Makefile index b53404319a..924ff0da14 100644 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -42,6 +42,7 @@ obj-pbl-y := $(addsuffix .gen.o, $(firmware-y)) FWNAME = $(patsubst $(obj)/%.extgen.S,%,$(patsubst $(obj)/%.gen.S,%,$@)) FWSTR = $(subst /,_,$(subst .,_,$(subst -,_,$(FWNAME)))) +FWNAME_EXISTS = $(if $(wildcard $(fwdir)/$(FWNAME)),1,0) filechk_fwbin = { \ echo "/* Generated by $(src)/Makefile */" ;\ @@ -51,7 +52,11 @@ filechk_fwbin = { \ echo " .p2align $(ASM_LGPTR)" ;\ echo ".global _fw_$(FWSTR)_start" ;\ echo "_fw_$(FWSTR)_start:" ;\ + echo "\#if $(FWNAME_EXISTS)" ;\ echo " .incbin \"$(fwdir)/$(FWNAME)\"" ;\ + echo "\#else" ;\ + echo "ASM_PTR _fwname_$(FWSTR)" ;\ + echo "\#endif" ;\ echo ".global _fw_$(FWSTR)_end" ;\ echo "_fw_$(FWSTR)_end:" ;\ } @@ -89,7 +94,7 @@ clean-files += *.sha.bin *.sum $(patsubst %.gen.o,$(obj)/%.gen.o, $(obj-pbl-y)): $(obj)/%.gen.o: $(fwdir)/% # The same for pbl: -$(patsubst %.gen.o,$(obj)/%.gen.pbl.o, $(obj-pbl-y) $(pbl-y)): $(obj)/%.gen.pbl.o: $(fwdir)/% +$(patsubst %.gen.o,$(obj)/%.gen.pbl.o, $(obj-pbl-y) $(pbl-y)): $(obj)/%.gen.pbl.o: $(wildcard $(fwdir)/%) $(patsubst %.gen.o,$(obj)/%.extgen.pbl.o, $(pbl-y)): $(obj)/%.extgen.pbl.o: $(fwdir)/% pbl-y += $(addsuffix .extgen.o, $(fw-external-y)) |