32 lines
1.0 KiB
Makefile
32 lines
1.0 KiB
Makefile
DESTDIR ?=
|
|
GO ?= go
|
|
GOFLAGS ?= -v -buildvcs=false -buildmode=exe -ldflags "-w -X `${GO} list`.Date=${DATE} -X `${GO} list`.Vendor=${GOOS} -X `${GO} list`.Version=${VERSION}"
|
|
PREFIX ?= /usr/local
|
|
BINDIR ?= ${PREFIX}/bin
|
|
MANDIR ?= ${PREFIX}/man
|
|
DATE ?= `date -u +%F`
|
|
GOOS ?= `${GO} env GOOS`
|
|
VERSION ?= 1.0I+${REV}
|
|
REV ?= `svn info --show-item revision || git rev-list --all | wc -l`
|
|
|
|
all: help
|
|
|
|
build: ## Build
|
|
${GO} build ${GOFLAGS} ./cmd/aya
|
|
clean: ## Remove built artifact(s)
|
|
rm -f aya
|
|
help:
|
|
@printf "Aya v%s\n" ${VERSION}
|
|
@printf "Build targets: \n"
|
|
@printf "\n"
|
|
@awk 'BEGIN {FS = ":.*## "}; /^[a-zA-Z0-9_.%-]+:.*## / {printf " %-12s%s\n", $$1, $$2}' ${MAKEFILE}
|
|
pre-install:
|
|
mkdir -p ${DESTDIR}${BINDIR}
|
|
mkdir -p ${DESTDIR}${MANDIR}/man1
|
|
install: pre-install ## Copy the built artifact(s) and manual pages into the system
|
|
install -m0755 aya ${DESTDIR}${BINDIR}
|
|
install -m0644 aya.1 ${DESTDIR}${MANDIR}/man1
|
|
uninstall: ## Remove the built artifact(s) and manual pages from the system
|
|
rm -f ${DESTDIR}${BINDIR}/aya
|
|
rm -f ${DESTDIR}${MANDIR}/man1/aya.1
|