[775] | 1 | GO ?= go
|
---|
| 2 | RM ?= rm
|
---|
[822] | 3 | GOFLAGS ?= -v -ldflags "-w -X `go list`.Version=$(VERSION) -X `go list`.Commit=$(COMMIT) -X `go list`.Build=$(BUILD)" -mod=vendor
|
---|
[775] | 4 | PREFIX ?= /usr/local
|
---|
| 5 | BINDIR ?= bin
|
---|
| 6 | MANDIR ?= share/man
|
---|
[806] | 7 | MKDIR ?= mkdir
|
---|
| 8 | CP ?= cp
|
---|
[820] | 9 | SYSCONFDIR ?= /etc
|
---|
[126] | 10 |
|
---|
[809] | 11 | VERSION = `git describe --abbrev=0 --tags 2>/dev/null || echo "$VERSION"`
|
---|
| 12 | COMMIT = `git rev-parse --short HEAD || echo "$COMMIT"`
|
---|
| 13 | BRANCH = `git rev-parse --abbrev-ref HEAD`
|
---|
| 14 | BUILD = `git show -s --pretty=format:%cI`
|
---|
| 15 |
|
---|
[814] | 16 | GOARCH ?= amd64
|
---|
| 17 | GOOS ?= linux
|
---|
| 18 |
|
---|
[823] | 19 | all: suika suikadb suika-znc-import
|
---|
[126] | 20 |
|
---|
[801] | 21 | suika:
|
---|
| 22 | $(GO) build $(GOFLAGS) ./cmd/suika
|
---|
[823] | 23 | @strip -s suika
|
---|
| 24 | suikadb:
|
---|
| 25 | $(GO) build $(GOFLAGS) ./cmd/suikadb
|
---|
| 26 | @strip -s suikadb
|
---|
[801] | 27 | suika-znc-import:
|
---|
| 28 | $(GO) build $(GOFLAGS) ./cmd/suika-znc-import
|
---|
[823] | 29 | @strip -s suika-znc-import
|
---|
[126] | 30 | clean:
|
---|
[823] | 31 | $(RM) -f suika suikadb suikactl suika-znc-import
|
---|
| 32 | docs:
|
---|
| 33 | asciidoctor -b manpage doc/suika.adoc -o doc/suika.1
|
---|
| 34 | asciidoctor -b manpage doc/suikadb.adoc -o doc/suikadb.1
|
---|
| 35 | asciidoctor -b manpage doc/suika-config.adoc -o doc/suika-config.5
|
---|
| 36 | asciidoctor -b manpage doc/suika-bouncerserv.adoc -o doc/suika-bouncerserv.7
|
---|
[530] | 37 | install:
|
---|
[806] | 38 | $(MKDIR) -p $(DESTDIR)$(PREFIX)/$(BINDIR)
|
---|
| 39 | $(MKDIR) -p $(DESTDIR)$(PREFIX)/$(MANDIR)/man1
|
---|
[817] | 40 | $(MKDIR) -p $(DESTDIR)$(PREFIX)/$(MANDIR)/man5
|
---|
| 41 | $(MKDIR) -p $(DESTDIR)$(PREFIX)/$(MANDIR)/man7
|
---|
[820] | 42 | $(MKDIR) -p $(DESTDIR)${SYSCONFDIR}/suika
|
---|
[806] | 43 | $(MKDIR) -p $(DESTDIR)/var/lib/suika
|
---|
[823] | 44 | $(CP) -f suika suikadb suika-znc-import $(DESTDIR)$(PREFIX)/$(BINDIR)
|
---|
[806] | 45 | $(CP) -f doc/suika.1 $(DESTDIR)$(PREFIX)/$(MANDIR)/man1
|
---|
[823] | 46 | $(CP) -f doc/suikadb.1 $(DESTDIR)$(PREFIX)/$(MANDIR)/man1
|
---|
| 47 | $(CP) -f doc/suika-znc-import.1 $(DESTDIR)/$(MANDIR)/man1
|
---|
[817] | 48 | $(CP) -f doc/suika-config.5 $(DESTDIR)$(PREFIX)/$(MANDIR)/man5
|
---|
| 49 | $(CP) -f doc/suika-bouncerserv.7 $(DESTDIR)$(PREFIX)/$(MANDIR)/man7
|
---|
[820] | 50 | [ -f $(DESTDIR)${SYSCONFDIR}/suika/config ] || $(CP) -f config.in $(DESTDIR)${SYSCONFDIR}/suika/config
|
---|
[805] | 51 | test:
|
---|
| 52 | go test
|
---|
[823] | 53 | vendor:
|
---|
| 54 | go mod vendor
|
---|
| 55 | .PHONY: suika suikadb suika-znc-import clean install
|
---|