Bump syncthing-inotify version to 0.8.6
[src/xds/xds-server.git] / Makefile
index 615be53..c13e1e5 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,9 +5,7 @@ VERSION := 0.1.0
 
 # Syncthing version to install
 SYNCTHING_VERSION = 0.14.28
-# FIXME: use master while waiting a release that include #164
-#SYNCTHING_INOTIFY_VERSION = 0.8.5
-SYNCTHING_INOTIFY_VERSION=master
+SYNCTHING_INOTIFY_VERSION = 0.8.6
 
 
 # Retrieve git tag/commit to set sub-version string
@@ -24,12 +22,20 @@ ifeq ($(origin SUB_VERSION), undefined)
        endif
 endif
 
+# for backward compatibility
+ifneq ($(origin INSTALL_DIR), undefined)
+       DESTDIR := $(INSTALL_DIR)
+endif
+ifneq ($(origin INSTALL_WEBAPP_DIR), undefined)
+       DESTDIR_WWW := $(INSTALL_WEBAPP_DIR)
+endif
+
 # Configurable variables for installation (default /usr/local/...)
-ifeq ($(origin INSTALL_DIR), undefined)
-       INSTALL_DIR := /usr/local/bin
+ifeq ($(origin DESTDIR), undefined)
+       DESTDIR := /usr/local/bin
 endif
-ifeq ($(origin INSTALL_WEBAPP_DIR), undefined)
-       INSTALL_WEBAPP_DIR := $(INSTALL_DIR)/www-xds-server
+ifeq ($(origin DESTDIR_WWW), undefined)
+       DESTDIR_WWW := $(DESTDIR)/www-xds-server
 endif
 
 HOST_GOOS=$(shell go env GOOS)
@@ -46,7 +52,7 @@ mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
 ROOT_SRCDIR := $(patsubst %/,%,$(dir $(mkfile_path)))
 ROOT_GOPRJ := $(abspath $(ROOT_SRCDIR)/../../../..)
 LOCAL_BINDIR := $(ROOT_SRCDIR)/bin
-LOCAL_TOOLSDIR := $(ROOT_SRCDIR)/tools
+LOCAL_TOOLSDIR := $(ROOT_SRCDIR)/tools/${HOST_GOOS}
 PACKAGE_DIR := $(ROOT_SRCDIR)/package
 
 
@@ -103,7 +109,7 @@ clean:
 
 .PHONY: distclean
 distclean: clean
-       rm -rf $(LOCAL_BINDIR) $(LOCAL_TOOLSDIR) glide.lock vendor webapp/node_modules webapp/dist
+       rm -rf $(LOCAL_BINDIR) $(ROOT_SRCDIR)/tools glide.lock vendor webapp/node_modules webapp/dist
 
 webapp: webapp/install
        (cd webapp && gulp build)
@@ -113,6 +119,7 @@ webapp/debug:
 
 webapp/install:
        (cd webapp && npm install)
+       @test -d ${DESTDIR}/usr/local/etc && rm -rf ${DESTDIR}/usr
 
 .PHONY: scripts
 scripts:
@@ -121,24 +128,24 @@ scripts:
 .PHONY: conffile
 conffile:
        cat config.json.in \
-               | sed -e s,"webapp/dist","$(INSTALL_WEBAPP_DIR)",g \
+               | sed -e s,"webapp/dist","$(DESTDIR_WWW)",g \
                | sed -e s,"\./bin","",g \
-                > $(PACKAGE_DIR)/xds-server/config.json
+                > $(DESTDIR)/config.json
 
 .PHONY: install
 install:
        @test -e $(LOCAL_BINDIR)/xds-server$(EXT) -a -d webapp/dist || { echo "Please execute first: make all\n"; exit 1; }
        @test -e $(LOCAL_BINDIR)/xds-server-start.sh -a -d $(LOCAL_BINDIR)/xds-utils || { echo "Please execute first: make all\n"; exit 1; }
        @test -e $(LOCAL_BINDIR)/syncthing$(EXT) -a -e $(LOCAL_BINDIR)/syncthing-inotify$(EXT) || { echo "Please execute first: make all\n"; exit 1; }
-       mkdir -p $(INSTALL_DIR) \
-               && cp -a $(LOCAL_BINDIR)/* $(INSTALL_DIR)
-       mkdir -p $(INSTALL_WEBAPP_DIR) \
-               && cp -a webapp/dist/* $(INSTALL_WEBAPP_DIR)
+       mkdir -p $(DESTDIR) \
+               && cp -a $(LOCAL_BINDIR)/* $(DESTDIR)
+       mkdir -p $(DESTDIR_WWW) \
+               && cp -a webapp/dist/* $(DESTDIR_WWW)
 
 .PHONY: package
 package: clean
-       INSTALL_DIR=$(PACKAGE_DIR)/xds-server make -f $(ROOT_SRCDIR)/Makefile all install
-       INSTALL_DIR=$(PACKAGE_DIR)/xds-server INSTALL_WEBAPP_DIR=www-xds-server make -f $(ROOT_SRCDIR)/Makefile conffile
+       make -f $(ROOT_SRCDIR)/Makefile all install  DESTDIR=$(PACKAGE_DIR)/xds-server
+       make -f $(ROOT_SRCDIR)/Makefile conffile  DESTDIR=$(PACKAGE_DIR)/xds-server DESTDIR_WWW=www-xds-server
        (cd $(PACKAGE_DIR) && zip -r $(ROOT_SRCDIR)/$(PACKAGE_ZIPFILE) ./xds-server)
 
 .PHONY: package-all
@@ -151,10 +158,13 @@ package-all:
 vendor: tools/glide glide.yaml
        $(LOCAL_TOOLSDIR)/glide install --strip-vendor
 
+.PHONY: tools/glide
 tools/glide:
-       @echo "Downloading glide"
-       mkdir -p $(LOCAL_TOOLSDIR)
-       curl --silent -L https://glide.sh/get | GOBIN=$(LOCAL_TOOLSDIR)  sh
+       @test -f $(LOCAL_TOOLSDIR)/glide || { \
+               echo "Downloading glide"; \
+               mkdir -p $(LOCAL_TOOLSDIR); \
+               curl --silent -L https://glide.sh/get | GOBIN=$(LOCAL_TOOLSDIR)  sh; \
+       }
 
 .PHONY: tools/syncthing
 tools/syncthing: