]>
Commit | Line | Data |
---|---|---|
1 | configuration = debug | |
2 | build_path = .build | |
3 | ||
4 | # These are used to rename the executable to lrc without renaming the package | |
5 | source_binary_name = lyricli | |
6 | target_binary_name = lrc | |
7 | install_path = /usr/local/bin | |
8 | source_binary_path = $(build_path)/$(configuration)/$(source_binary_name) | |
9 | install_binary_path = $(install_path)/$(target_binary_name) | |
10 | swift_version = 5.0.1 | |
11 | ||
12 | # Default to release configuration on install | |
13 | install: configuration = release | |
14 | ||
15 | default: build | |
16 | ||
17 | build: | |
18 | swift build --build-path $(build_path) --configuration $(configuration) | |
19 | ||
20 | install: build | |
21 | sudo cp $(source_binary_path) $(install_binary_path) | |
22 | ||
23 | test: build | |
24 | swift test | |
25 | ||
26 | lint: | |
27 | cd Sources && swiftlint | |
28 | ||
29 | document: build | |
30 | sourcekitten doc --spm-module $(source_binary_name) > $(build_path)/$(source_binary_name).json | |
31 | jazzy \ | |
32 | -s $(build_path)/$(source_binary_name).json \ | |
33 | --readme README.md \ | |
34 | --clean \ | |
35 | --author Lyricli \ | |
36 | --author_url https://gitlab.com/lyricli \ | |
37 | --github_url https://gitlab.com/lyricli/lyricli \ | |
38 | --module-version 1.0.0 \ | |
39 | --module Lyricli \ | |
40 | ||
41 | clean: | |
42 | swift package clean | |
43 | ||
44 | docker-build: | |
45 | docker build --force-rm --build-arg swift_version=$(swift_version) -t lyriclitest/swift:$(swift_version) . | |
46 | ||
47 | docker-push: docker-build | |
48 | docker push lyriclitest/swift:$(swift_version) | |
49 | ||
50 | .PHONY: build install test clean lint docker-build docker-push |