From 6a05c569f26178870781c01c38e507523529b596 Mon Sep 17 00:00:00 2001
From: Péter Szilágyi <peterke@gmail.com>
Date: Mon, 21 Sep 2015 21:36:01 +0300
Subject: makefile: built in cross compilation targets

---
 Makefile | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

(limited to 'Makefile')

diff --git a/Makefile b/Makefile
index 3478b5433..8c7b80ea6 100644
--- a/Makefile
+++ b/Makefile
@@ -10,6 +10,30 @@ geth:
 	@echo "Done building."
 	@echo "Run \"$(GOBIN)/geth\" to launch geth."
 
+geth-cross: geth-linux geth-darwin geth-windows geth-android
+	@echo "Full cross compilation done:"
+	@ls -l $(GOBIN)/geth-*
+
+geth-linux: xgo
+	build/env.sh $(GOBIN)/xgo --dest=$(GOBIN) --deps=https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2 --targets=linux/* -v ./cmd/geth
+	@echo "Linux cross compilation done:"
+	@ls -l $(GOBIN)/geth-linux-*
+
+geth-darwin: xgo
+	build/env.sh $(GOBIN)/xgo --dest=$(GOBIN) --deps=https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2 --targets=darwin/* -v ./cmd/geth
+	@echo "Darwin cross compilation done:"
+	@ls -l $(GOBIN)/geth-darwin-*
+
+geth-windows: xgo
+	build/env.sh $(GOBIN)/xgo --dest=$(GOBIN) --deps=https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2 --targets=windows/* -v ./cmd/geth
+	@echo "Windows cross compilation done:"
+	@ls -l $(GOBIN)/geth-windows-*
+
+geth-android: xgo
+	build/env.sh $(GOBIN)/xgo --dest=$(GOBIN) --deps=https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2 --targets=android-16/*,android-21/* -v ./cmd/geth
+	@echo "Android cross compilation done:"
+	@ls -l $(GOBIN)/geth-android-*
+
 evm:
 	build/env.sh $(GOROOT)/bin/go install -v $(shell build/ldflags.sh) ./cmd/evm
 	@echo "Done building."
@@ -28,5 +52,8 @@ test: all
 travis-test-with-coverage: all
 	build/env.sh build/test-global-coverage.sh
 
+xgo:
+	build/env.sh go get github.com/karalabe/xgo
+
 clean:
 	rm -fr build/_workspace/pkg/ Godeps/_workspace/pkg $(GOBIN)/*
-- 
cgit