1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-29 07:24:13 +01:00

build: change firmware files from .opf to .opfw extensions

This commit is contained in:
Stacey Sheldon 2011-05-25 00:20:02 -04:00
parent 66804076b8
commit 4da671fc82
8 changed files with 38 additions and 38 deletions

View File

@ -320,8 +320,8 @@ uavobjects_clean:
# $(2) = Name of board used in source tree (e.g. CopterControl) # $(2) = Name of board used in source tree (e.g. CopterControl)
define FW_TEMPLATE define FW_TEMPLATE
.PHONY: $(1) fw_$(1) .PHONY: $(1) fw_$(1)
$(1): fw_$(1)_opf $(1): fw_$(1)_opfw
fw_$(1): fw_$(1)_opf fw_$(1): fw_$(1)_opfw
fw_$(1)_%: uavobjects_flight fw_$(1)_%: uavobjects_flight
$(V1) mkdir -p $(BUILD_DIR)/fw_$(1)/dep $(V1) mkdir -p $(BUILD_DIR)/fw_$(1)/dep
@ -364,7 +364,7 @@ endef
# $(1) = Canonical board name all in lower case (e.g. coptercontrol) # $(1) = Canonical board name all in lower case (e.g. coptercontrol)
define BU_TEMPLATE define BU_TEMPLATE
.PHONY: bu_$(1) .PHONY: bu_$(1)
bu_$(1): bu_$(1)_opf bu_$(1): bu_$(1)_opfw
bu_$(1)_%: bl_$(1)_bino bu_$(1)_%: bl_$(1)_bino
$(V1) mkdir -p $(BUILD_DIR)/bu_$(1)/dep $(V1) mkdir -p $(BUILD_DIR)/bu_$(1)/dep
@ -413,7 +413,7 @@ BL_TARGETS := $(filter-out bl_ins, $(BL_TARGETS))
BU_TARGETS := $(filter-out bu_ins, $(BU_TARGETS)) BU_TARGETS := $(filter-out bu_ins, $(BU_TARGETS))
.PHONY: all_fw all_fw_clean .PHONY: all_fw all_fw_clean
all_fw: $(addsuffix _opf, $(FW_TARGETS)) all_fw: $(addsuffix _opfw, $(FW_TARGETS))
all_fw_clean: $(addsuffix _clean, $(FW_TARGETS)) all_fw_clean: $(addsuffix _clean, $(FW_TARGETS))
.PHONY: all_bl all_bl_clean .PHONY: all_bl all_bl_clean
@ -421,7 +421,7 @@ all_bl: $(addsuffix _bin, $(BL_TARGETS))
all_bl_clean: $(addsuffix _clean, $(BL_TARGETS)) all_bl_clean: $(addsuffix _clean, $(BL_TARGETS))
.PHONY: all_bu all_bu_clean .PHONY: all_bu all_bu_clean
all_bu: $(addsuffix _opf, $(BU_TARGETS)) all_bu: $(addsuffix _opfw, $(BU_TARGETS))
all_bu_clean: $(addsuffix _clean, $(BU_TARGETS)) all_bu_clean: $(addsuffix _clean, $(BU_TARGETS))
.PHONY: all_flight all_flight_clean .PHONY: all_flight all_flight_clean

View File

@ -352,19 +352,19 @@ $(eval $(call PARTIAL_COMPILE_ARM_TEMPLATE, SRCARM))
$(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin $(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin
$(eval $(call OPF_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION))) $(eval $(call OPFW_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION)))
# Add jtag targets (program and wipe) # Add jtag targets (program and wipe)
$(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE))) $(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE)))
.PHONY: elf lss sym hex bin bino opf .PHONY: elf lss sym hex bin bino opfw
elf: $(OUTDIR)/$(TARGET).elf elf: $(OUTDIR)/$(TARGET).elf
lss: $(OUTDIR)/$(TARGET).lss lss: $(OUTDIR)/$(TARGET).lss
sym: $(OUTDIR)/$(TARGET).sym sym: $(OUTDIR)/$(TARGET).sym
hex: $(OUTDIR)/$(TARGET).hex hex: $(OUTDIR)/$(TARGET).hex
bin: $(OUTDIR)/$(TARGET).bin bin: $(OUTDIR)/$(TARGET).bin
bino: $(OUTDIR)/$(TARGET).bin.o bino: $(OUTDIR)/$(TARGET).bin.o
opf: $(OUTDIR)/$(TARGET).opf opfw: $(OUTDIR)/$(TARGET).opfw
# Display sizes of sections. # Display sizes of sections.
$(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf)) $(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf))
@ -374,11 +374,11 @@ docs:
doxygen $(DOXYGENDIR)/doxygen.cfg doxygen $(DOXYGENDIR)/doxygen.cfg
# Install: install binary file with prefix/suffix into install directory # Install: install binary file with prefix/suffix into install directory
install: $(OUTDIR)/$(TARGET).opf install: $(OUTDIR)/$(TARGET).opfw
ifneq ($(INSTALL_DIR),) ifneq ($(INSTALL_DIR),)
@echo $(MSG_INSTALLING) $(call toprel, $<) @echo $(MSG_INSTALLING) $(call toprel, $<)
$(V1) mkdir -p $(INSTALL_DIR) $(V1) mkdir -p $(INSTALL_DIR)
$(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opf $(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opfw
else else
$(error INSTALL_DIR must be specified for $@) $(error INSTALL_DIR must be specified for $@)
endif endif

View File

@ -384,16 +384,16 @@ $(eval $(call PARTIAL_COMPILE_ARM_TEMPLATE, SRCARM))
$(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin $(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin
$(eval $(call OPF_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION))) $(eval $(call OPFW_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION)))
.PHONY: elf lss sym hex bin bino opf .PHONY: elf lss sym hex bin bino opfw
elf: $(OUTDIR)/$(TARGET).elf elf: $(OUTDIR)/$(TARGET).elf
lss: $(OUTDIR)/$(TARGET).lss lss: $(OUTDIR)/$(TARGET).lss
sym: $(OUTDIR)/$(TARGET).sym sym: $(OUTDIR)/$(TARGET).sym
hex: $(OUTDIR)/$(TARGET).hex hex: $(OUTDIR)/$(TARGET).hex
bin: $(OUTDIR)/$(TARGET).bin bin: $(OUTDIR)/$(TARGET).bin
bino: $(OUTDIR)/$(TARGET).bin.o bino: $(OUTDIR)/$(TARGET).bin.o
opf: $(OUTDIR)/$(TARGET).opf opfw: $(OUTDIR)/$(TARGET).opfw
# Display sizes of sections. # Display sizes of sections.
$(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf)) $(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf))
@ -405,11 +405,11 @@ docs:
doxygen $(DOXYGENDIR)/doxygen.cfg doxygen $(DOXYGENDIR)/doxygen.cfg
# Install: install binary file with prefix/suffix into install directory # Install: install binary file with prefix/suffix into install directory
install: $(OUTDIR)/$(TARGET).opf install: $(OUTDIR)/$(TARGET).opfw
ifneq ($(INSTALL_DIR),) ifneq ($(INSTALL_DIR),)
@echo $(MSG_INSTALLING) $(call toprel, $<) @echo $(MSG_INSTALLING) $(call toprel, $<)
$(V1) mkdir -p $(INSTALL_DIR) $(V1) mkdir -p $(INSTALL_DIR)
$(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opf $(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opfw
else else
$(error INSTALL_DIR must be specified for $@) $(error INSTALL_DIR must be specified for $@)
endif endif

View File

@ -548,19 +548,19 @@ $(eval $(call PARTIAL_COMPILE_ARM_TEMPLATE, SRCARM))
$(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin $(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin
$(eval $(call OPF_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION))) $(eval $(call OPFW_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION)))
# Add jtag targets (program and wipe) # Add jtag targets (program and wipe)
$(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE))) $(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE)))
.PHONY: elf lss sym hex bin bino opf .PHONY: elf lss sym hex bin bino opfw
elf: $(OUTDIR)/$(TARGET).elf elf: $(OUTDIR)/$(TARGET).elf
lss: $(OUTDIR)/$(TARGET).lss lss: $(OUTDIR)/$(TARGET).lss
sym: $(OUTDIR)/$(TARGET).sym sym: $(OUTDIR)/$(TARGET).sym
hex: $(OUTDIR)/$(TARGET).hex hex: $(OUTDIR)/$(TARGET).hex
bin: $(OUTDIR)/$(TARGET).bin bin: $(OUTDIR)/$(TARGET).bin
bino: $(OUTDIR)/$(TARGET).bin.o bino: $(OUTDIR)/$(TARGET).bin.o
opf: $(OUTDIR)/$(TARGET).opf opfw: $(OUTDIR)/$(TARGET).opfw
# Display sizes of sections. # Display sizes of sections.
$(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf)) $(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf))
@ -570,11 +570,11 @@ docs:
doxygen $(DOXYGENDIR)/doxygen.cfg doxygen $(DOXYGENDIR)/doxygen.cfg
# Install: install binary file with prefix/suffix into install directory # Install: install binary file with prefix/suffix into install directory
install: $(OUTDIR)/$(TARGET).opf install: $(OUTDIR)/$(TARGET).opfw
ifneq ($(INSTALL_DIR),) ifneq ($(INSTALL_DIR),)
@echo $(MSG_INSTALLING) $(call toprel, $<) @echo $(MSG_INSTALLING) $(call toprel, $<)
$(V1) mkdir -p $(INSTALL_DIR) $(V1) mkdir -p $(INSTALL_DIR)
$(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opf $(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opfw
else else
$(error INSTALL_DIR must be specified for $@) $(error INSTALL_DIR must be specified for $@)
endif endif

View File

@ -360,19 +360,19 @@ $(eval $(call PARTIAL_COMPILE_ARM_TEMPLATE, SRCARM))
$(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin $(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin
$(eval $(call OPF_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION))) $(eval $(call OPFW_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION)))
# Add jtag targets (program and wipe) # Add jtag targets (program and wipe)
$(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE))) $(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE)))
.PHONY: elf lss sym hex bin bino opf .PHONY: elf lss sym hex bin bino opfw
elf: $(OUTDIR)/$(TARGET).elf elf: $(OUTDIR)/$(TARGET).elf
lss: $(OUTDIR)/$(TARGET).lss lss: $(OUTDIR)/$(TARGET).lss
sym: $(OUTDIR)/$(TARGET).sym sym: $(OUTDIR)/$(TARGET).sym
hex: $(OUTDIR)/$(TARGET).hex hex: $(OUTDIR)/$(TARGET).hex
bin: $(OUTDIR)/$(TARGET).bin bin: $(OUTDIR)/$(TARGET).bin
bino: $(OUTDIR)/$(TARGET).bin.o bino: $(OUTDIR)/$(TARGET).bin.o
opf: $(OUTDIR)/$(TARGET).opf opfw: $(OUTDIR)/$(TARGET).opfw
# Display sizes of sections. # Display sizes of sections.
$(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf)) $(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf))
@ -382,11 +382,11 @@ docs:
doxygen $(DOXYGENDIR)/doxygen.cfg doxygen $(DOXYGENDIR)/doxygen.cfg
# Install: install binary file with prefix/suffix into install directory # Install: install binary file with prefix/suffix into install directory
install: $(OUTDIR)/$(TARGET).opf install: $(OUTDIR)/$(TARGET).opfw
ifneq ($(INSTALL_DIR),) ifneq ($(INSTALL_DIR),)
@echo $(MSG_INSTALLING) $(call toprel, $<) @echo $(MSG_INSTALLING) $(call toprel, $<)
$(V1) mkdir -p $(INSTALL_DIR) $(V1) mkdir -p $(INSTALL_DIR)
$(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opf $(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opfw
else else
$(error INSTALL_DIR must be specified for $@) $(error INSTALL_DIR must be specified for $@)
endif endif

View File

@ -526,19 +526,19 @@ $(eval $(call PARTIAL_COMPILE_ARM_TEMPLATE, SRCARM))
$(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin $(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin
$(eval $(call OPF_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION))) $(eval $(call OPFW_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION)))
# Add jtag targets (program and wipe) # Add jtag targets (program and wipe)
$(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE))) $(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE)))
.PHONY: elf lss sym hex bin bino opf .PHONY: elf lss sym hex bin bino opfw
elf: $(OUTDIR)/$(TARGET).elf elf: $(OUTDIR)/$(TARGET).elf
lss: $(OUTDIR)/$(TARGET).lss lss: $(OUTDIR)/$(TARGET).lss
sym: $(OUTDIR)/$(TARGET).sym sym: $(OUTDIR)/$(TARGET).sym
hex: $(OUTDIR)/$(TARGET).hex hex: $(OUTDIR)/$(TARGET).hex
bin: $(OUTDIR)/$(TARGET).bin bin: $(OUTDIR)/$(TARGET).bin
bino: $(OUTDIR)/$(TARGET).bin.o bino: $(OUTDIR)/$(TARGET).bin.o
opf: $(OUTDIR)/$(TARGET).opf opfw: $(OUTDIR)/$(TARGET).opfw
# Display sizes of sections. # Display sizes of sections.
$(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf)) $(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf))
@ -548,11 +548,11 @@ docs:
doxygen $(DOXYGENDIR)/doxygen.cfg doxygen $(DOXYGENDIR)/doxygen.cfg
# Install: install binary file with prefix/suffix into install directory # Install: install binary file with prefix/suffix into install directory
install: $(OUTDIR)/$(TARGET).opf install: $(OUTDIR)/$(TARGET).opfw
ifneq ($(INSTALL_DIR),) ifneq ($(INSTALL_DIR),)
@echo $(MSG_INSTALLING) $(call toprel, $<) @echo $(MSG_INSTALLING) $(call toprel, $<)
$(V1) mkdir -p $(INSTALL_DIR) $(V1) mkdir -p $(INSTALL_DIR)
$(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opf $(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opfw
else else
$(error INSTALL_DIR must be specified for $@) $(error INSTALL_DIR must be specified for $@)
endif endif

View File

@ -391,19 +391,19 @@ $(eval $(call PARTIAL_COMPILE_ARM_TEMPLATE, SRCARM))
$(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin $(OUTDIR)/$(TARGET).bin.o: $(OUTDIR)/$(TARGET).bin
$(eval $(call OPF_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION))) $(eval $(call OPFW_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(BOARD_TYPE),$(BOARD_REVISION)))
# Add jtag targets (program and wipe) # Add jtag targets (program and wipe)
$(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE))) $(eval $(call JTAG_TEMPLATE,$(OUTDIR)/$(TARGET).bin,$(FW_BANK_BASE),$(FW_BANK_SIZE)))
.PHONY: elf lss sym hex bin bino opf .PHONY: elf lss sym hex bin bino opfw
elf: $(OUTDIR)/$(TARGET).elf elf: $(OUTDIR)/$(TARGET).elf
lss: $(OUTDIR)/$(TARGET).lss lss: $(OUTDIR)/$(TARGET).lss
sym: $(OUTDIR)/$(TARGET).sym sym: $(OUTDIR)/$(TARGET).sym
hex: $(OUTDIR)/$(TARGET).hex hex: $(OUTDIR)/$(TARGET).hex
bin: $(OUTDIR)/$(TARGET).bin bin: $(OUTDIR)/$(TARGET).bin
bino: $(OUTDIR)/$(TARGET).bin.o bino: $(OUTDIR)/$(TARGET).bin.o
opf: $(OUTDIR)/$(TARGET).opf opfw: $(OUTDIR)/$(TARGET).opfw
# Display sizes of sections. # Display sizes of sections.
$(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf)) $(eval $(call SIZE_TEMPLATE, $(OUTDIR)/$(TARGET).elf))
@ -413,11 +413,11 @@ docs:
doxygen $(DOXYGENDIR)/doxygen.cfg doxygen $(DOXYGENDIR)/doxygen.cfg
# Install: install binary file with prefix/suffix into install directory # Install: install binary file with prefix/suffix into install directory
install: $(OUTDIR)/$(TARGET).opf install: $(OUTDIR)/$(TARGET).opfw
ifneq ($(INSTALL_DIR),) ifneq ($(INSTALL_DIR),)
@echo $(MSG_INSTALLING) $(call toprel, $<) @echo $(MSG_INSTALLING) $(call toprel, $<)
$(V1) mkdir -p $(INSTALL_DIR) $(V1) mkdir -p $(INSTALL_DIR)
$(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opf $(V1) $(INSTALL) $< $(INSTALL_DIR)/$(INSTALL_PFX)$(TARGET)$(INSTALL_SFX).opfw
else else
$(error INSTALL_DIR must be specified for $@) $(error INSTALL_DIR must be specified for $@)
endif endif

View File

@ -45,7 +45,7 @@ MSG_ASMFROMC := ${quote} AS(C) ${quote}
MSG_ASMFROMC_ARM := ${quote} AS(C)-ARM ${quote} MSG_ASMFROMC_ARM := ${quote} AS(C)-ARM ${quote}
MSG_PYMITEINIT := ${quote} PY ${quote} MSG_PYMITEINIT := ${quote} PY ${quote}
MSG_INSTALLING := ${quote} INSTALL ${quote} MSG_INSTALLING := ${quote} INSTALL ${quote}
MSG_OPFIRMWARE := ${quote} OPF ${quote} MSG_OPFIRMWARE := ${quote} OPFW ${quote}
MSG_FWINFO := ${quote} FWINFO ${quote} MSG_FWINFO := ${quote} FWINFO ${quote}
MSG_JTAG_PROGRAM := ${quote} JTAG-PGM ${quote} MSG_JTAG_PROGRAM := ${quote} JTAG-PGM ${quote}
MSG_JTAG_WIPE := ${quote} JTAG-WIPE ${quote} MSG_JTAG_WIPE := ${quote} JTAG-WIPE ${quote}
@ -111,7 +111,7 @@ endef
# $(1) = path to bin file # $(1) = path to bin file
# $(2) = boardtype in hex # $(2) = boardtype in hex
# $(3) = board revision in hex # $(3) = board revision in hex
define OPF_TEMPLATE define OPFW_TEMPLATE
$(1).firmwareinfo.c: $(1) $(TOP)/make/templates/firmwareinfotemplate.c $(1).firmwareinfo.c: $(1) $(TOP)/make/templates/firmwareinfotemplate.c
@echo $(MSG_FWINFO) $$(call toprel, $$@) @echo $(MSG_FWINFO) $$(call toprel, $$@)
$(V1) python $(TOP)/make/scripts/version-info.py \ $(V1) python $(TOP)/make/scripts/version-info.py \
@ -124,7 +124,7 @@ $(1).firmwareinfo.c: $(1) $(TOP)/make/templates/firmwareinfotemplate.c
$(eval $(call COMPILE_C_TEMPLATE, $(1).firmwareinfo.c)) $(eval $(call COMPILE_C_TEMPLATE, $(1).firmwareinfo.c))
$(OUTDIR)/$(notdir $(basename $(1))).opf : $(1) $(1).firmwareinfo.bin $(OUTDIR)/$(notdir $(basename $(1))).opfw : $(1) $(1).firmwareinfo.bin
@echo $(MSG_OPFIRMWARE) $$(call toprel, $$@) @echo $(MSG_OPFIRMWARE) $$(call toprel, $$@)
$(V1) cat $(1) $(1).firmwareinfo.bin > $$@ $(V1) cat $(1) $(1).firmwareinfo.bin > $$@
endef endef