]> Cypherpunks.ru repositories - nncp.git/blobdiff - common.mk
umask friendly permissions for files in release tarball
[nncp.git] / common.mk
index 145e84397c3edbb4a656913382eda6dcc950d392..6a4b3f6ccc9d237a48bf337067e3bc83e45f768a 100644 (file)
--- a/common.mk
+++ b/common.mk
@@ -1,7 +1,8 @@
+GO ?= go
 PREFIX ?= /usr/local
 
 SENDMAIL ?= /usr/sbin/sendmail
-CFGPATH ?= $(PREFIX)/etc/nncp.yaml
+CFGPATH ?= $(PREFIX)/etc/nncp.hjson
 SPOOLPATH ?= /var/spool/nncp
 LOGPATH ?= /var/spool/nncp/log
 
@@ -9,94 +10,51 @@ BINDIR = $(DESTDIR)$(PREFIX)/bin
 INFODIR = $(DESTDIR)$(PREFIX)/info
 DOCDIR = $(DESTDIR)$(PREFIX)/share/doc/nncp
 
+MOD = go.cypherpunks.ru/nncp/v5
+
 LDFLAGS = \
-       -X cypherpunks.ru/nncp.Version=$(VERSION) \
-       -X cypherpunks.ru/nncp.DefaultCfgPath=$(CFGPATH) \
-       -X cypherpunks.ru/nncp.DefaultSendmailPath=$(SENDMAIL) \
-       -X cypherpunks.ru/nncp.DefaultSpoolPath=$(SPOOLPATH) \
-       -X cypherpunks.ru/nncp.DefaultLogPath=$(LOGPATH)
+       -X $(MOD).Version=$(VERSION) \
+       -X $(MOD).DefaultCfgPath=$(CFGPATH) \
+       -X $(MOD).DefaultSendmailPath=$(SENDMAIL) \
+       -X $(MOD).DefaultSpoolPath=$(SPOOLPATH) \
+       -X $(MOD).DefaultLogPath=$(LOGPATH)
 
 ALL = \
-       nncp-bundle \
-       nncp-call \
-       nncp-caller \
-       nncp-cfgenc \
-       nncp-cfgmin \
-       nncp-cfgnew \
-       nncp-check \
-       nncp-daemon \
-       nncp-exec \
-       nncp-file \
-       nncp-freq \
-       nncp-log \
-       nncp-pkt \
-       nncp-reass \
-       nncp-rm \
-       nncp-stat \
-       nncp-toss \
-       nncp-xfer
+       $(BIN)/nncp-bundle \
+       $(BIN)/nncp-call \
+       $(BIN)/nncp-caller \
+       $(BIN)/nncp-cfgenc \
+       $(BIN)/nncp-cfgmin \
+       $(BIN)/nncp-cfgnew \
+       $(BIN)/nncp-check \
+       $(BIN)/nncp-daemon \
+       $(BIN)/nncp-exec \
+       $(BIN)/nncp-file \
+       $(BIN)/nncp-freq \
+       $(BIN)/nncp-log \
+       $(BIN)/nncp-pkt \
+       $(BIN)/nncp-reass \
+       $(BIN)/nncp-rm \
+       $(BIN)/nncp-stat \
+       $(BIN)/nncp-toss \
+       $(BIN)/nncp-xfer
+
+SRC := $(PWD)/src
+BIN := $(PWD)/bin
 
 all: $(ALL)
 
-nncp-bundle:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-bundle
-
-nncp-call:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-call
-
-nncp-caller:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-caller
-
-nncp-cfgenc:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-cfgenc
-
-nncp-cfgmin:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-cfgmin
-
-nncp-cfgnew:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-cfgnew
-
-nncp-check:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-check
-
-nncp-daemon:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-daemon
-
-nncp-exec:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-exec
-
-nncp-file:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-file
-
-nncp-freq:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-freq
-
-nncp-log:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-log
-
-nncp-pkt:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-pkt
-
-nncp-reass:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-reass
-
-nncp-rm:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-rm
-
-nncp-stat:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-stat
-
-nncp-toss:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-toss
-
-nncp-xfer:
-       GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-xfer
+$(ALL):
+       mkdir -p $(BIN)
+       cd $(SRC) ; GOPATH=$(GOPATH) $(GO) build -ldflags "$(LDFLAGS)" \
+               $(MOD)/cmd/$$(basename $@)
+       mv $(SRC)/$$(basename $@) $(BIN)
 
 test:
-       GOPATH=$(GOPATH) go test -failfast cypherpunks.ru/nncp/...
+       cd $(SRC) ; GOPATH=$(GOPATH) $(GO) test -failfast $(MOD)/...
 
 clean:
-       rm -f $(ALL)
+       rm -rf $(BIN)
 
 .PHONY: doc
 
@@ -106,7 +64,7 @@ doc:
 install: all doc
        mkdir -p $(BINDIR)
        cp -f $(ALL) $(BINDIR)
-       for e in $(ALL) ; do chmod 755 $(BINDIR)/$$e ; done
+       for e in $(ALL) ; do chmod 755 $(BINDIR)/$$(basename $$e) ; done
        mkdir -p $(INFODIR)
        cp -f doc/nncp.info $(INFODIR)
        chmod 644 $(INFODIR)/nncp.info
@@ -115,4 +73,4 @@ install: all doc
        chmod 644 $(DOCDIR)/*
 
 install-strip: install
-       for e in $(ALL) ; do strip $(BINDIR)/$$e ; done
+       for e in $(ALL) ; do strip $(BINDIR)/$$(basename $$e) ; done