-
Notifications
You must be signed in to change notification settings - Fork 63
Expand file tree
/
Copy pathMakefile
More file actions
45 lines (36 loc) · 1.1 KB
/
Makefile
File metadata and controls
45 lines (36 loc) · 1.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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