tMakefile - uwu - hardware bitcoin wallet software and build system
 (HTM) git clone https://git.parazyd.org/uwu
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       tMakefile (1771B)
       ---
            1 .POSIX:
            2 
            3 # Copyright (c) 2020-2021 Ivan J. <parazyd@dyne.org>
            4 # This file is part of uwu.
            5 # See LICENSE file for copyright and license details.
            6 
            7 include config.mk
            8 
            9 BINS = qemu-wrapper install.sh
           10 BOOT_BINS = \
           11         rpi-boot/upstream/kernel.img \
           12         rpi-boot/upstream/bcm2835-rpi-zero.dtb \
           13         rpi-boot/upstream/initramfs.cpio
           14 
           15 INIT_BINS = initramfs/bin
           16 
           17 all: $(BINS) $(KERNEL_BINS) $(ALPINE_BINS) $(BUSYBOX_BINS) $(ELECTRUM_BINS) $(BOOT_BINS)
           18 
           19 include electrum.mk
           20 include alpine.mk
           21 include busybox.mk
           22 include kernel.mk
           23 include chroot.mk
           24 
           25 clean:
           26         rm -rf $(BINS) $(BOOT_BINS) $(INIT_BINS) rpi-boot/filesystem.squashfs \
           27                 $(IMAGE) qemu-wrapper.c
           28 
           29 distclean: clean
           30         rm -rf $(ALPINE_BINS) $(BUSYBOX_BINS) $(CHROOT_BINS) $(KERNEL_BINS) \
           31                 $(ELECTRUM_BINS)
           32 
           33 qemu-wrapper.c: qemu-wrapper.c.in
           34         sed -e 's,@QEMU_ARM@,$(QEMU_ARM),g' < $@.in > $@
           35 
           36 qemu-wrapper: qemu-wrapper.c
           37         $(CC) -static $@.c -O3 -s -o $@
           38 
           39 install.sh: install.sh.in
           40         sed -e 's,@ROOTCREDENTIALS@,$(ROOTCREDENTIALS),g' < $@.in > $@
           41 
           42 initramfs/bin/busybox: $(BUSYBOX_SRC)/busybox
           43         mkdir -p initramfs/bin
           44         cp $(BUSYBOX_SRC)/busybox $@
           45 
           46 rpi-boot/filesystem.squashfs: chroot/root/electrum
           47         mksquashfs chroot $@ -comp xz -Xbcj arm -noappend
           48 
           49 rpi-boot/upstream/initramfs.cpio: initramfs/bin/busybox initramfs/init
           50         ( cd initramfs && find -print0 | cpio --null -oV --format=newc > ../$@ )
           51 
           52 rpi-boot/upstream/kernel.img: $(KERNEL_SRC)/arch/arm/boot/zImage
           53         cp $(KERNEL_SRC)/arch/arm/boot/zImage $@
           54 
           55 rpi-boot/upstream/bcm2835-rpi-zero.dtb: $(KERNEL_SRC)/arch/arm/boot/dts/bcm2835-rpi-zero.dtb
           56         cp $(KERNEL_SRC)/arch/arm/boot/dts/bcm2835-rpi-zero.dtb $@
           57 
           58 image: $(IMAGE)
           59 
           60 $(IMAGE): rpi-boot/filesystem.squashfs $(BOOT_BINS)
           61         ( cd rpi-boot && find -print0 | cpio --null -oV --format=newc > ../$@)
           62 
           63 .PHONY: all clean distclean image