aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile12
1 files changed, 9 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 1f5b63f..5d62630 100644
--- a/Makefile
+++ b/Makefile
@@ -19,9 +19,13 @@ PBUILDER_TARGETS := debian/jessie/i386 debian/jessie/amd64 ubuntu/xenial/i386 ub
REPO_UPLOAD_USER := aptbot
REPO_UPLOAD_URI := rsync://apt.cryptech.is/alpha/
-# Yes, we really are putting the firmware tarball into the source package here.
+# Yes, we really are putting the firmware tarball into the source package.
+# We want to supply the firmware in both source and binary form, to save users
+# the trouble of all the cross compilation and Verilog synthesis, and the Alpha
+# firmware is the same regardless of the host platform, so including the firmware
+# tarball in the source package lets us simplify installation for the user.
-FIRMWARE_TARBALL := build/cryptech-alpha-firmware.tar.gz
+FIRMWARE_TARBALL := source/cryptech-alpha-firmware.tar.gz
BITSTREAM := build/core/platform/alpha/build/alpha_fmc.bit
ELVES := build/sw/stm32/projects/bootloader/bootloader.elf build/sw/stm32/projects/hsm/hsm.elf
FIRMWARE_BINARY := ${ELVES} ${ELVES:.elf=.bin}
@@ -55,6 +59,8 @@ sandblast: clean
firmware: shadow ${FIRMWARE_TARBALL}
shadow: build
+
+build:
./build-shadow-tree.py
${FIRMWARE_TARBALL}: ${BITSTREAM} $(sort ${ELVES} ${ELVES:.elf=.bin})
@@ -69,7 +75,7 @@ ${BITSTREAM}: ${RTL_SOURCE}
${ELVES:.elf=.bin}: shadow elves
elves:
- ${MAKE} -C build/core/sw/stm32 bootloader hsm
+ ${MAKE} -C build/sw/stm32 distclean bootloader hsm
dsc:
cd source; ${DCH}