remindctl/Makefile
2026-01-03 13:20:56 +01:00

46 lines
1.1 KiB
Makefile

SHELL := /bin/bash
.PHONY: help format lint test check build remindctl clean
help:
@printf "%s\n" \
"make format - swift format in-place" \
"make lint - swift format lint + swiftlint" \
"make test - sync version + swift test (coverage enabled)" \
"make check - lint + test + coverage gate" \
"make build - release build into bin/ (codesigned)" \
"make remindctl - clean rebuild + run debug binary (ARGS=...)" \
"make clean - swift package clean"
format:
swift format --in-place --recursive Sources Tests
lint:
swift format lint --recursive Sources Tests
swiftlint
test:
scripts/generate-version.sh
swift test --enable-code-coverage
check:
$(MAKE) lint
$(MAKE) test
scripts/check-coverage.sh
build:
scripts/generate-version.sh
mkdir -p bin
swift build -c release --product remindctl
cp .build/release/remindctl bin/remindctl
codesign --force --sign - --identifier com.steipete.remindctl bin/remindctl
remindctl:
scripts/generate-version.sh
swift package clean
swift build -c debug --product remindctl
./.build/debug/remindctl $(ARGS)
clean:
swift package clean