}
endef
+define Build/elecom-product-header
+ $(eval product=$(word 1,$(1)))
+ $(eval fw=$(word 2,$(1)))
+
+ ( \
+ echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
+ echo -n "0.00" | dd bs=16 count=1 conv=sync; \
+ dd if=$(fw); \
+ ) > $(fw).new
+ mv $(fw).new $(fw)
+endef
+
define Build/eva-image
$(STAGING_DIR_HOST)/bin/lzma2eva $(KERNEL_LOADADDR) $(KERNEL_LOADADDR) $@ $@.new
mv $@.new $@
-f 0x70000 -S 0x01100000 \
-i $@ -o $@.factory
- ( \
- echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
- echo -n "0.00" | dd bs=16 count=1 conv=sync; \
- dd if=$@.factory; \
- ) > $@.factory.new
+ $(call Build/elecom-product-header,$(product) $@.factory)
- if [ "$$(stat -c%s $@.factory.new)" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
- mv $@.factory.new $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
+ if [ "$$(stat -c%s $@.factory)" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
+ mv $@.factory $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
else \
echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
fi