38 lines
1.0 KiB
Makefile
38 lines
1.0 KiB
Makefile
# (c) Copyright 2022 by Coinkite Inc. This file is covered by license found in COPYING-CC.
|
|
#
|
|
# Using "mtools" here. A weapon from a more civilized age...
|
|
#
|
|
|
|
# NOTE: mtools.conf in current directory maps z: to ./output.img
|
|
export MTOOLSRC=mtools.conf
|
|
MFORMAT=mformat
|
|
MCOPY=mcopy
|
|
|
|
RELEASES ?= $(wildcard ./releases/*.dfu)
|
|
|
|
OUTPUT ?= output/cc-recovery-$(shell date +%F).img.xz
|
|
|
|
all: output.img
|
|
|
|
flist.txt: Makefile $(RELEASES)
|
|
ls -1 $(RELEASES) | sort -rn > flist.txt
|
|
|
|
output.img: $(RELEASES) Makefile flist.txt
|
|
dd if=/dev/zero of=output.img bs=1024 count=160 status=none
|
|
$(MFORMAT) -v CCRECOVER -f 160 -N 2022 -C z:
|
|
cat internal-readme.txt flist.txt | sed -e 's/.\/releases\///' > tmp.txt
|
|
$(MCOPY) -bsmp tmp.txt z:README.TXT
|
|
for f in $(shell cat flist.txt); do \
|
|
echo $$f ; \
|
|
dd if=$$f obs=512 conv=osync status=none >> output.img; \
|
|
done
|
|
xz -cv9 < output.img > $(OUTPUT)
|
|
cat tmp.txt > $(OUTPUT:.img.xz=.txt)
|
|
rm flist.txt
|
|
ls -l $(OUTPUT)
|
|
|
|
dev:
|
|
$(MAKE) RELEASES=../*/stm32/dev.dfu OUTPUT=dev-recovery.img.xz
|
|
|
|
# EOF
|