wand/Makefile

51 lines
1.2 KiB
Makefile
Raw Normal View History

2025-08-24 04:46:54 +02:00
SOURCES = $(shell find . -name "*.go" | grep -v iniparser.gen.go | grep -v docreflect.gen.go)
2025-08-18 14:24:31 +02:00
default: build
2025-08-24 04:46:54 +02:00
lib: $(SOURCES) iniparser.gen.go docreflect.gen.go
2025-08-24 01:45:25 +02:00
go build
go build ./tools
2025-08-18 14:24:31 +02:00
2025-08-26 03:21:35 +02:00
build: lib .build/wand
2025-08-24 01:45:25 +02:00
check: $(SOURCES) build
2025-08-18 14:24:31 +02:00
go test -count 1 ./...
2025-08-24 01:45:25 +02:00
.cover: $(SOURCES) build
2025-08-18 14:24:31 +02:00
go test -count 1 -coverprofile .cover ./...
cover: .cover
go tool cover -func .cover
showcover: .cover
go tool cover -html .cover
2025-08-24 04:46:54 +02:00
fmt: $(SOURCES) iniparser.gen.go docreflect.gen.go
2025-08-18 14:24:31 +02:00
go fmt ./...
2025-08-24 01:45:25 +02:00
2025-08-24 04:46:54 +02:00
iniparser.gen.go: ini.treerack
2025-08-26 03:21:35 +02:00
go run script/ini-parser/parser.go wand < ini.treerack > iniparser.gen.go || rm -f iniparser.gen.go
2025-08-24 01:45:25 +02:00
2025-08-24 04:46:54 +02:00
docreflect.gen.go: $(SOURCES)
2025-08-24 01:45:25 +02:00
go run script/docreflect/docs.go \
wand \
code.squareroundforest.org/arpio/docreflect/generate \
code.squareroundforest.org/arpio/wand/tools \
2025-08-24 04:46:54 +02:00
> docreflect.gen.go \
2025-08-26 03:21:35 +02:00
|| rm -f docreflect.gen.go
2025-08-24 01:45:25 +02:00
2025-08-26 03:21:35 +02:00
.build:
mkdir -p .build
2025-08-24 01:45:25 +02:00
2025-08-26 03:21:35 +02:00
.build/wand: $(SOURCES) iniparser.gen.go docreflect.gen.go .build
go build -o .build/wand -ldflags "-X main.version=$(shell date +%Y-%m-%d)-$(shell git rev-parse --short HEAD)" ./cmd/wand
2025-08-24 01:45:25 +02:00
2025-08-26 03:21:35 +02:00
install: .build/wand
cp .build/wand ~/bin
clean:
rm -rf .build
rm -f docreflect.gen.go
rm -f iniparser.gen.go
rm -f .cover