Prevent script freeze when iot.bzh website is not accessible.
[src/xds/xds-server.git] / Makefile
index c13e1e5..e3702b7 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 # Makefile used to build XDS daemon Web Server
 
 # Application Version
-VERSION := 0.1.0
+VERSION := 0.2.1
 
 # Syncthing version to install
 SYNCTHING_VERSION = 0.14.28
@@ -14,8 +14,9 @@ ifeq ($(origin SUB_VERSION), undefined)
        ifneq ($(SUB_VERSION), )
                VERSION := $(firstword $(subst -, ,$(SUB_VERSION)))
                SUB_VERSION := $(word 2,$(subst -, ,$(SUB_VERSION)))
-       else
-               SUB_VERSION := $(shell git describe --tags --always  | sed 's/^v//')
+       endif
+       ifeq ($(SUB_VERSION), )
+               SUB_VERSION := $(shell git rev-parse --short HEAD)
                ifeq ($(SUB_VERSION), )
                        SUB_VERSION := unknown-dev
                endif
@@ -55,7 +56,6 @@ LOCAL_BINDIR := $(ROOT_SRCDIR)/bin
 LOCAL_TOOLSDIR := $(ROOT_SRCDIR)/tools/${HOST_GOOS}
 PACKAGE_DIR := $(ROOT_SRCDIR)/package
 
-
 export GOPATH := $(shell go env GOPATH):$(ROOT_GOPRJ)
 export PATH := $(PATH):$(LOCAL_TOOLSDIR)
 
@@ -82,10 +82,10 @@ endif
 all: tools/syncthing build
 
 .PHONY: build
-build: xds webapp
+build: vendor xds webapp
 
-xds:vendor scripts tools/syncthing/copytobin
-       @echo "### Build XDS server (version $(VERSION), subversion $(SUB_VERSION))";
+xds: scripts tools/syncthing/copytobin
+       @echo "### Build XDS server (version $(VERSION), subversion $(SUB_VERSION), $(BUILD_MODE))";
        @cd $(ROOT_SRCDIR); $(BUILD_ENV_FLAGS) go build $(VERBOSE_$(V)) -i -o $(LOCAL_BINDIR)/xds-server$(EXT) -ldflags "$(GORELEASE) -X main.AppVersion=$(VERSION) -X main.AppSubVersion=$(SUB_VERSION)" .
 
 test: tools/glide
@@ -119,7 +119,7 @@ webapp/debug:
 
 webapp/install:
        (cd webapp && npm install)
-       @test -d ${DESTDIR}/usr/local/etc && rm -rf ${DESTDIR}/usr
+       @if [ -d ${DESTDIR}/usr/local/etc ]; then rm -rf ${DESTDIR}/usr; fi
 
 .PHONY: scripts
 scripts:
@@ -158,6 +158,10 @@ package-all:
 vendor: tools/glide glide.yaml
        $(LOCAL_TOOLSDIR)/glide install --strip-vendor
 
+vendor/debug: vendor
+       (cd vendor/github.com/iotbzh && \
+               rm -rf xds-common && ln -s ../../../../xds-common )
+
 .PHONY: tools/glide
 tools/glide:
        @test -f $(LOCAL_TOOLSDIR)/glide || { \