MAKEFLAGS += --no-builtin-rules
.SUFFIXES:
.PHONY: all clean lib bins verify test
all: lib bins
lib: Cargo.toml Cargo.lock src/lib.rs src/blake2s.rs
cargo build --release --lib
testblake2fw.bin: Cargo.toml Cargo.lock .cargo/config.toml app.lds lib src/testblake2fw.rs
cargo build -F blake2-firmware --release --bin testblake2fw
llvm-objcopy --input-target=elf32-littleriscv --output-target=binary target/riscv32i-unknown-none-elf/release/testblake2fw $@
test.bin: Cargo.toml Cargo.lock .cargo/config.toml app.lds lib src/test.rs
cargo build -F blake2-firmware --release --bin test
llvm-objcopy --input-target=elf32-littleriscv --output-target=binary target/riscv32i-unknown-none-elf/release/test $@
example.bin: Cargo.toml Cargo.lock .cargo/config.toml app.lds lib src/main.rs
cargo build --release --bin example
llvm-objcopy --input-target=elf32-littleriscv --output-target=binary target/riscv32i-unknown-none-elf/release/example $@
bench.bin: Cargo.toml Cargo.lock .cargo/config.toml app.lds lib src/bench.rs
cargo build --release --bin bench
llvm-objcopy --input-target=elf32-littleriscv --output-target=binary target/riscv32i-unknown-none-elf/release/bench $@
bins: testblake2fw.bin test.bin example.bin bench.bin
verify:
cargo clippy
test:
cargo test --target=x86_64-unknown-linux-gnu
clean:
rm -f testblake2fw.bin example.bin test.bin bench.bin
cargo clean