Cross-compiling get_tools Makefile added
This commit is contained in:
parent
02327e13b6
commit
74549faac9
4
Makefile
4
Makefile
|
@ -107,7 +107,7 @@ check_tools:
|
|||
|
||||
update_tools:
|
||||
@echo "--> Updating tools to correct version"
|
||||
./scripts/get_tools.sh
|
||||
$(MAKE) -C scripts get_tools
|
||||
|
||||
update_dev_tools:
|
||||
@echo "--> Downloading linters (this may take awhile)"
|
||||
|
@ -116,7 +116,7 @@ update_dev_tools:
|
|||
|
||||
get_tools:
|
||||
@echo "--> Installing tools"
|
||||
./scripts/get_tools.sh
|
||||
$(MAKE) -C scripts get_tools
|
||||
|
||||
get_dev_tools:
|
||||
@echo "--> Downloading linters (this may take awhile)"
|
||||
|
|
|
@ -41,7 +41,7 @@ IMPROVEMENTS
|
|||
|
||||
* Gaia
|
||||
- #2637 [x/gov] Switched inactive and active proposal queues to an iterator based queue
|
||||
- #2672 [Makefile] Updated for better Windows compatibility and ledger support logic
|
||||
- #2672 [Makefile] Updated for better Windows compatibility and ledger support logic, get_tools was rewritten as a cross-compatible Makefile.
|
||||
|
||||
* SDK
|
||||
- \#2573 [x/distribution] add accum invariance
|
||||
|
|
|
@ -0,0 +1,54 @@
|
|||
###
|
||||
# Find OS and Go environment
|
||||
# GO contains the Go binary
|
||||
# FS contains the OS file separator
|
||||
###
|
||||
ifeq ($(OS),Windows_NT)
|
||||
GO := $(shell where go.exe 2> NUL)
|
||||
FS := \\
|
||||
else
|
||||
GO := $(shell command -v go 2> /dev/null)
|
||||
FS := /
|
||||
endif
|
||||
|
||||
ifeq ($(GO),)
|
||||
$(error could not find go. Is it in PATH? $(GO))
|
||||
endif
|
||||
|
||||
GOPATH ?= $(shell $(GO) env GOPATH)
|
||||
GITHUBDIR := $(GOPATH)$(FS)src$(FS)github.com
|
||||
|
||||
###
|
||||
# Functions
|
||||
###
|
||||
|
||||
go_get = $(if $(findstring Windows_NT,$(OS)),\
|
||||
IF NOT EXIST $(GITHUBDIR)$(FS)$(1)$(FS) ( mkdir $(GITHUBDIR)$(FS)$(1) ) else (cd .) &\
|
||||
IF NOT EXIST $(GITHUBDIR)$(FS)$(1)$(FS)$(2)$(FS) ( cd $(GITHUBDIR)$(FS)$(1) && git clone https://github.com/$(1)/$(2) ) else (cd .) &\
|
||||
,\
|
||||
mkdir -p $(GITHUBDIR)$(FS)$(1) &&\
|
||||
(test ! -d $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && cd $(GITHUBDIR)$(FS)$(1) && git clone https://github.com/$(1)/$(2)) || true &&\
|
||||
)\
|
||||
cd $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && git fetch origin && git checkout -q $(3)
|
||||
|
||||
go_install = $(call go_get,$(1),$(2),$(3)) && cd $(GITHUBDIR)$(FS)$(1)$(FS)$(2) && $(GO) install
|
||||
|
||||
###
|
||||
# get_tools
|
||||
###
|
||||
all: get_tools
|
||||
get_tools: dep gometalinter statik
|
||||
|
||||
dep:
|
||||
$(call go_get,golang,dep,22125cfaa6ddc71e145b1535d4b7ee9744fefff2)
|
||||
cd $(GITHUBDIR)$(FS)golang$(FS)dep$(FS)cmd$(FS)dep && $(GO) install
|
||||
|
||||
#v2.0.11
|
||||
gometalinter:
|
||||
$(call go_install,alecthomas,gometalinter,17a7ffa42374937bfecabfb8d2efbd4db0c26741)
|
||||
|
||||
statik:
|
||||
$(call go_install,rakyll,statik,v0.1.5)
|
||||
|
||||
.PHONY: all get_tools dep gometalinter statik
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
# This file downloads all of the binary dependencies we have, and checks out a
|
||||
# specific git hash.
|
||||
#
|
||||
# repos it installs:
|
||||
# github.com/golang/dep/cmd/dep
|
||||
# gopkg.in/alecthomas/gometalinter.v2
|
||||
# github.com/rakyll/statiik
|
||||
|
||||
## check if GOPATH is set
|
||||
if [ -z ${GOPATH+x} ]; then
|
||||
echo "please set GOPATH (https://github.com/golang/go/wiki/SettingGOPATH)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "$GOPATH/src/github.com"
|
||||
cd "$GOPATH/src/github.com" || exit 1
|
||||
|
||||
installFromGithub() {
|
||||
repo=$1
|
||||
commit=$2
|
||||
# optional
|
||||
subdir=$3
|
||||
echo "--> Installing $repo ($commit)..."
|
||||
if [ ! -d "$repo" ]; then
|
||||
mkdir -p "$repo"
|
||||
git clone "https://github.com/$repo.git" "$repo"
|
||||
fi
|
||||
if [ ! -z ${subdir+x} ] && [ ! -d "$repo/$subdir" ]; then
|
||||
echo "ERROR: no such directory $repo/$subdir"
|
||||
exit 1
|
||||
fi
|
||||
pushd "$repo" && \
|
||||
git fetch origin && \
|
||||
git checkout -q "$commit" && \
|
||||
if [ ! -z ${subdir+x} ]; then cd "$subdir" || exit 1; fi && \
|
||||
go install && \
|
||||
if [ ! -z ${subdir+x} ]; then cd - || exit 1; fi && \
|
||||
popd || exit 1
|
||||
echo "--> Done"
|
||||
echo ""
|
||||
}
|
||||
|
||||
installFromGithub golang/dep 22125cfaa6ddc71e145b1535d4b7ee9744fefff2 cmd/dep
|
||||
## gometalinter v2.0.11
|
||||
installFromGithub alecthomas/gometalinter 17a7ffa42374937bfecabfb8d2efbd4db0c26741
|
||||
installFromGithub rakyll/statik v0.1.5
|
Loading…
Reference in New Issue