]> Cypherpunks.ru repositories - govpn.git/commitdiff
Created installation targets for ease of porting
authorSergey Matveev <stargrave@stargrave.org>
Sun, 10 May 2015 17:52:40 +0000 (20:52 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Sun, 10 May 2015 18:51:14 +0000 (21:51 +0300)
Signed-off-by: Sergey Matveev <stargrave@stargrave.org>
Makefile
doc/installation.texi

index 305108ce9ee692b1f4db9ebff239025655a2a7f2..0670d39701bb789f6c17e76290f8fc10ef027f4b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,12 @@
 GOPATH != pwd
 VERSION != cat VERSION
 
-LDFLAGS=-X govpn.Version $(VERSION)
+LDFLAGS = -X govpn.Version $(VERSION)
+PREFIX ?= /usr/local
+BINDIR = $(DESTDIR)$(PREFIX)/bin
+INFODIR = $(DESTDIR)$(PREFIX)/info
+SHAREDIR = $(DESTDIR)$(PREFIX)/share/govpn
+DOCDIR = $(DESTDIR)$(PREFIX)/share/doc/govpn
 
 all: govpn-client govpn-server govpn-verifier
 
@@ -19,3 +24,26 @@ govpn-verifier: depends
 
 bench:
        cd src/govpn ; GOPATH=$(GOPATH) GOMAXPROC=2 go test -bench .
+
+clean:
+       rm -f govpn-client govpn-server govpn-verifier
+
+doc:
+       $(MAKE) -C doc
+
+install: all doc
+       mkdir -p $(BINDIR)
+       cp -f govpn-client govpn-server govpn-verifier $(BINDIR)
+       chmod 755 $(BINDIR)/govpn-client $(BINDIR)/govpn-server $(BINDIR)/govpn-verifier
+       mkdir -p $(INFODIR)
+       cp -f doc/govpn.info $(INFODIR)
+       chmod 644 $(INFODIR)/govpn.info
+       mkdir -p $(SHAREDIR)
+       cp -f utils/newclient.sh utils/storekey.sh $(SHAREDIR)
+       chmod 755 $(SHAREDIR)/newclient.sh $(SHAREDIR)/storekey.sh
+       mkdir -p $(DOCDIR)
+       cp -f -L AUTHORS INSTALL NEWS README THANKS $(DOCDIR)
+       chmod 644 $(DOCDIR)/AUTHORS $(DOCDIR)/INSTALL $(DOCDIR)/NEWS $(DOCDIR)/README $(DOCDIR)/THANKS
+
+install-strip: install
+       strip $(BINDIR)/govpn-client $(BINDIR)/govpn-server $(BINDIR)/govpn-verifier
index 75ee4442c0967a659ca7c2c6c6b8ac65497053fb..6d3cf7d8256749108ab9e615b231482811496021 100644 (file)
@@ -27,6 +27,9 @@ binaries will be build in the current directory.
 % make -C govpn-2.3 all
 @end example
 
+There is @code{install} target respecting @code{DESTDIR}. It will
+install binaries, info-documentation and utilities.
+
 @menu
 * Prepared tarballs::
 * Development source code::