]> git.r.bdr.sh - rbdr/lyricli/blobdiff - Makefile
Create build folder before documenting
[rbdr/lyricli] / Makefile
index abbfd02e5636abfc19e398293e9e59b4d1df72e7..d2449967d4ae1d0b1e2766e30a58350ec6af638f 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -7,13 +7,17 @@ target_binary_name = lrc
 install_path = /usr/local/bin
 source_binary_path = $(build_path)/$(configuration)/$(source_binary_name)
 install_binary_path = $(install_path)/$(target_binary_name)
+swift_version = 5.0.1
 
 # Default to release configuration on install
 install: configuration = release
 
 default: build
 
-build:
+prebuild:
+       mkdir -p $(build_path)
+
+build: prebuild
        swift build --build-path $(build_path) --configuration $(configuration)
 
 install: build
@@ -25,7 +29,25 @@ test: build
 lint:
        cd Sources && swiftlint
 
+document: prebuild
+       sourcekitten doc --spm-module $(source_binary_name) > $(build_path)/$(source_binary_name).json
+       jazzy \
+               -s $(build_path)/$(source_binary_name).json \
+               --readme README.md \
+               --clean \
+               --author Lyricli \
+               --author_url https://gitlab.com/lyricli \
+               --github_url https://gitlab.com/lyricli/lyricli \
+               --module-version 1.0.0 \
+               --module Lyricli \
+
 clean:
-       swift build --clean
+       swift package clean
+
+docker-build:
+       docker build --force-rm --build-arg swift_version=$(swift_version) -t lyriclitest/swift:$(swift_version) .
+
+docker-push: docker-build
+       docker push lyriclitest/swift:$(swift_version)
 
-.PHONY: build install test clean lint
+.PHONY: build install test clean lint docker-build docker-push