aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile21
1 files changed, 18 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index b9848cc..2b8aff6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,3 @@
-# Default shell
-SHELL := /bin/bash
-
# General
WORKDIR = $(PWD)
@@ -8,6 +5,11 @@ WORKDIR = $(PWD)
GOCMD = go
GOTEST = $(GOCMD) test -v
+# Git config
+GIT_VERSION ?=
+GIT_DIST_PATH ?= $(PWD)/.git-dist
+GIT_REPOSITORY = http://github.com/git/git.git
+
# Coverage
COVERAGE_REPORT = coverage.txt
COVERAGE_PROFILE = profile.out
@@ -17,6 +19,16 @@ ifneq ($(origin CI), undefined)
WORKDIR := $(GOPATH)/src/gopkg.in/src-d/go-git.v4
endif
+build-git:
+ @if [ -f $(GIT_DIST_PATH)/git ]; then \
+ echo "nothing to do, using cache $(GIT_DIST_PATH)"; \
+ else \
+ git clone $(GIT_REPOSITORY) -b $(GIT_VERSION) --depth 1 --single-branch $(GIT_DIST_PATH); \
+ cd $(GIT_DIST_PATH); \
+ make configure; \
+ ./configure; \
+ make all; \
+ fi
test:
cd $(WORKDIR); \
@@ -35,3 +47,6 @@ test-coverage:
rm $(COVERAGE_PROFILE); \
fi; \
done; \
+
+clean:
+ rm -rf $(GIT_DIST_PATH) \ No newline at end of file