45 lines
1.3 KiB
Makefile
45 lines
1.3 KiB
Makefile
# ============================================================
|
|
# quic_ecs_dt — top-level Makefile
|
|
# Targets:
|
|
# make render — build the paper PDF
|
|
# make preview — live-reload preview in browser
|
|
# make build — cargo build --release (native)
|
|
# make build-cm5 — cargo build --release (aarch64 cross)
|
|
# make clean — remove generated outputs
|
|
# ============================================================
|
|
|
|
.PHONY: render preview build build-cm5 clean
|
|
|
|
VENV := $(HOME)/.venv/quic_ecs
|
|
PYTHON := $(VENV)/bin/python
|
|
CM5_HOST ?= 192.168.1.x
|
|
CM5_USER ?= pi
|
|
CM5_BIN_DIR ?= /home/pi/quic_ecs_dt
|
|
|
|
# Paper
|
|
render:
|
|
cd paper && quarto render index.qmd
|
|
|
|
preview:
|
|
cd paper && quarto preview index.qmd --port 4848 --no-browser
|
|
|
|
# Rust build
|
|
build:
|
|
cargo build --release
|
|
|
|
build-cm5:
|
|
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc \
|
|
cargo build --release --target aarch64-unknown-linux-gnu
|
|
|
|
# Deploy binary to CM5
|
|
deploy-cm5: build-cm5
|
|
ssh $(CM5_USER)@$(CM5_HOST) "mkdir -p $(CM5_BIN_DIR)"
|
|
scp target/aarch64-unknown-linux-gnu/release/quic_ecs_dt \
|
|
$(CM5_USER)@$(CM5_HOST):$(CM5_BIN_DIR)/
|
|
|
|
# Clean
|
|
clean:
|
|
cargo clean
|
|
rm -rf paper/_output paper/.quarto paper/index.tex \
|
|
paper/figures/*.pdf paper/figures/*.png \
|
|
data/loopback/*.csv data/two_machine/*.csv
|