forked from opencode/ocgo
28 lines
644 B
Makefile
28 lines
644 B
Makefile
.PHONY: build run test clean install release
|
|
|
|
VERSION ?= $(shell git describe --tags --always --dirty 2>/dev/null || echo dev)
|
|
EXE := $(shell go env GOEXE)
|
|
OCGO_BIN := bin/ocgo$(EXE)
|
|
GOBIN := $(shell go env GOBIN)
|
|
GOPATH := $(shell go env GOPATH)
|
|
INSTALL_DIR := $(HOME)/.local/bin
|
|
|
|
build:
|
|
go build -ldflags "-X main.version=$(VERSION)" -o $(OCGO_BIN) ./cmd/ocgo
|
|
|
|
run:
|
|
go run ./cmd/ocgo
|
|
|
|
test:
|
|
go test ./...
|
|
|
|
clean:
|
|
rm -rf bin
|
|
|
|
install: build
|
|
mkdir -p "$(INSTALL_DIR)"
|
|
install -m 0755 "$(OCGO_BIN)" "$(INSTALL_DIR)/ocgo$(EXE)"
|
|
|
|
release:
|
|
@[ -n "$(TAG)" ] || (echo "Usage: make release TAG=v0.1.0" && exit 1)
|
|
./scripts/release.sh "$(TAG)"
|