46 lines
1.3 KiB
Makefile
46 lines
1.3 KiB
Makefile
.PHONY: bootloader
|
|
bootloader: ## Build the bootloader in docker
|
|
docker build -o . --target export --build-arg TARGET=bootloader.elf .
|
|
|
|
.PHONY: helloworld
|
|
helloworld: ## Build the helloworld app in docker
|
|
docker build -o . --target export --build-arg TARGET=helloworld.bin .
|
|
|
|
.PHONY: timer
|
|
timer: ## Build the timer app in docker
|
|
docker build -o . --target export --build-arg TARGET=timer.bin .
|
|
|
|
.PHONY: uart
|
|
uart: ## Build the uart app in docker
|
|
docker build -o . --target export --build-arg TARGET=uart.bin .
|
|
|
|
.PHONY: async
|
|
async: ## Build the async app in docker
|
|
docker build -o . --target export --build-arg TARGET=async.bin .
|
|
|
|
.PHONY: dev-image
|
|
dev-image:
|
|
docker build -t mbv-dev --target dev .
|
|
|
|
.PHONY: dev
|
|
dev: dev-image ## Run a dev container
|
|
docker run -it --rm -v $(CURDIR):/workspace -w /workspace mbv-dev
|
|
|
|
.PHONY: precommit
|
|
precommit: ## Make sure everything looks ok before pushing
|
|
$(MAKE) bootloader
|
|
$(MAKE) helloworld
|
|
$(MAKE) timer
|
|
$(MAKE) uart
|
|
$(MAKE) async
|
|
|
|
.PHONY: clean
|
|
clean: ## Remove generated files
|
|
rm -rf *.elf *.bin
|
|
|
|
.PHONY: help
|
|
help: ## Show this help
|
|
@echo Noteworthy targets:
|
|
@egrep '^[a-zA-Z_-]+:.*?## .*$$' $(firstword $(MAKEFILE_LIST)) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
|
|
.DEFAULT_GOAL := help
|