+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
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-file \
- nncp-freq \
- nncp-log \
- nncp-mail \
- 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-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-mail:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-mail
-
-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
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
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