yay/Makefile

59 lines
1.6 KiB
Makefile
Raw Normal View History

.PHONY: all default install uninstall test build release clean package
PREFIX := /usr
DESTDIR :=
2018-07-16 12:35:25 +02:00
MAJORVERSION := 8
MINORVERSION ?= $(shell git rev-list --count master)
VERSION ?= ${MAJORVERSION}.${MINORVERSION}
LDFLAGS := -ldflags '-s -w -X main.version=${VERSION}'
ARCH := $(shell uname -m)
PKGNAME := yay
BINNAME := yay
PACKAGE := ${PKGNAME}_${VERSION}_${ARCH}
2016-12-02 19:22:21 +01:00
export GOPATH=$(shell pwd)/.go
2016-09-05 04:32:57 +02:00
default: build
all: | clean package
2018-02-17 19:25:43 +01:00
install:
install -Dm755 ${BINNAME} $(DESTDIR)$(PREFIX)/bin/${BINNAME}
install -Dm644 doc/${PKGNAME}.8 $(DESTDIR)$(PREFIX)/share/man/man8/${PKGNAME}.8
install -Dm644 completions/bash $(DESTDIR)$(PREFIX)/share/bash-completion/completions/${PKGNAME}
install -Dm644 completions/zsh $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_${PKGNAME}
install -Dm644 completions/fish $(DESTDIR)$(PREFIX)/share/fish/vendor_completions.d/${PKGNAME}.fish
uninstall:
rm -f $(DESTDIR)$(PREFIX)/bin/${BINNAME}
rm -f $(DESTDIR)$(PREFIX)/share/man/man8/${PKGNAME}.8
rm -f $(DESTDIR)$(PREFIX)/share/bash-completion/completions/${PKGNAME}
rm -f $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_${PKGNAME}
rm -f $(DESTDIR)$(PREFIX)/share/fish/vendor_completions.d/${PKGNAME}.fish
2016-12-02 19:22:21 +01:00
test:
gofmt -l *.go
@test -z "$$(gofmt -l *.go)" || (echo "Files need to be linted" && false)
go vet
go test -v
2016-09-05 04:32:57 +02:00
build:
go build -v ${LDFLAGS} -o ${BINNAME}
release: | test build
2018-02-17 19:25:43 +01:00
mkdir ${PACKAGE}
cp ./${BINNAME} ${PACKAGE}/
cp ./doc/${PKGNAME}.8 ${PACKAGE}/
cp ./completions/zsh ${PACKAGE}/
cp ./completions/fish ${PACKAGE}/
cp ./completions/bash ${PACKAGE}/
package: release
2017-07-04 19:54:03 +02:00
tar -czvf ${PACKAGE}.tar.gz ${PACKAGE}
2016-09-05 04:32:57 +02:00
clean:
rm -rf ${PKGNAME}_*
rm -f ${BINNAME}
2016-09-05 04:32:57 +02:00