-.PHONY: doc
+PREFIX ?= /usr/local
-CFGPATH ?= /usr/local/etc/nncp.yaml
SENDMAIL ?= /usr/sbin/sendmail
-LDFLAGS = \
- -X cypherpunks.ru/nncp.Version=$(VERSION) \
- -X cypherpunks.ru/nncp.DefaultCfgPath=$(CFGPATH) \
- -X cypherpunks.ru/nncp.DefaultSendmailPath=$(SENDMAIL)
-PREFIX ?= /usr/local
+CFGPATH ?= $(PREFIX)/etc/nncp.yaml
+SPOOLPATH ?= /var/spool/nncp
+LOGPATH ?= /var/spool/nncp/log
+
BINDIR = $(DESTDIR)$(PREFIX)/bin
INFODIR = $(DESTDIR)$(PREFIX)/info
DOCDIR = $(DESTDIR)$(PREFIX)/share/doc/nncp
+
+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)
+
ALL = \
- nncp-mail \
+ 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-newnode \
nncp-pkt \
+ nncp-reass \
+ nncp-rm \
nncp-stat \
nncp-toss \
nncp-xfer
-all: $(ALL)
+SRC := $(PWD)/src/cypherpunks.ru/nncp
+BIN := $(PWD)/bin
-nncp-call:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-call
-
-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-newnode:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-newnode
-
-nncp-pkt:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-pkt
-
-nncp-stat:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-stat
+all: $(ALL)
-nncp-toss:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-toss
+$(BIN):
+ mkdir -p $(BIN)
-nncp-xfer:
- GOPATH=$(GOPATH) go build -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/nncp-xfer
+$(ALL): $(BIN)
+ cd $(SRC) ; GOPATH=$(GOPATH) $(GO) build $(BUILDMOD) -ldflags "$(LDFLAGS)" cypherpunks.ru/nncp/cmd/$@
+ mv $(SRC)/$@ $(BIN)
test:
- GOPATH=$(GOPATH) go test cypherpunks.ru/nncp/...
+ cd $(SRC) ; GOPATH=$(GOPATH) $(GO) test $(BUILDMOD) -failfast cypherpunks.ru/nncp/...
clean:
- rm -f $(ALL)
+ rm -rf bin
+
+.PHONY: doc
doc:
$(MAKE) -C doc
install: all doc
mkdir -p $(BINDIR)
- cp -f $(ALL) $(BINDIR)
+ (cd bin ; cp -f $(ALL) $(BINDIR))
for e in $(ALL) ; do chmod 755 $(BINDIR)/$$e ; done
mkdir -p $(INFODIR)
cp -f doc/nncp.info $(INFODIR)
chmod 644 $(INFODIR)/nncp.info
mkdir -p $(DOCDIR)
- cp -f -L AUTHORS INSTALL NEWS README README.RU $(DOCDIR)
+ cp -f -L AUTHORS NEWS NEWS.RU README README.RU THANKS $(DOCDIR)
chmod 644 $(DOCDIR)/*
install-strip: install