aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-07-23 12:34:57 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-07-23 12:34:57 +0200
commit76d88856aa4ef78342d4ffe6bb533c29fe342fc0 (patch)
tree785afcfcd045c4d252c9bad045f768214265e58c /Makefile
parent71da73c4a8c01595118c196db5b8a37611f672ec (diff)
downloadlectio-76d88856aa4ef78342d4ffe6bb533c29fe342fc0.tar.gz
lectio-76d88856aa4ef78342d4ffe6bb533c29fe342fc0.zip
scaffold: module, mains, Makefile, embedded corpora
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile34
1 files changed, 34 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..ba8688c
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,34 @@
+LECTIO := lectio
+LECTIO_UI := lectio-ui
+PREFIX ?= $(HOME)/.local
+BINDIR := $(PREFIX)/bin
+
+.PHONY: help build install uninstall test vet fmt clean cross
+help: ## show this help
+ @grep -hE '^[a-z-]+:.*##' $(MAKEFILE_LIST) | sed -E 's/:.*## /\t/' | sort
+build: ## build ./lectio and ./lectio-ui
+ go build -o $(LECTIO) ./cmd/lectio
+ go build -o $(LECTIO_UI) ./cmd/lectio-ui
+install: ## build and install both to $(BINDIR)
+ @mkdir -p $(BINDIR)
+ go build -o $(BINDIR)/$(LECTIO) ./cmd/lectio
+ go build -o $(BINDIR)/$(LECTIO_UI) ./cmd/lectio-ui
+ @echo "installed $(BINDIR)/$(LECTIO) and $(BINDIR)/$(LECTIO_UI)"
+uninstall: ## remove installed binaries
+ rm -f $(BINDIR)/$(LECTIO) $(BINDIR)/$(LECTIO_UI)
+test: ## run tests
+ go test ./...
+vet: ## go vet
+ go vet ./...
+fmt: ## gofmt the tree
+ gofmt -w .
+clean: ## remove build artifacts
+ rm -f $(LECTIO) $(LECTIO_UI); rm -rf dist
+cross: ## cross-compile into dist/
+ @mkdir -p dist
+ @for t in linux/amd64 linux/arm64 darwin/arm64 darwin/amd64 windows/amd64; do \
+ os=$${t%/*}; arch=$${t#*/}; ext=; [ $$os = windows ] && ext=.exe; \
+ echo " $$os/$$arch"; \
+ GOOS=$$os GOARCH=$$arch go build -o dist/$(LECTIO)-$$os-$$arch$$ext ./cmd/lectio; \
+ GOOS=$$os GOARCH=$$arch go build -o dist/$(LECTIO_UI)-$$os-$$arch$$ext ./cmd/lectio-ui; \
+ done