plugeth/build
Felix Lange effaf18523
build: improve cross compilation setup (#22804)
This PR cleans up the CI build system and fixes a couple of issues.

- The go tool launcher code has been moved to internal/build. With the new
  toolchain functions, the environment of the host Go (i.e. the one that built
  ci.go) and the target Go (i.e. the toolchain downloaded by -dlgo) are isolated
  more strictly. This is important to make cross compilation and -dlgo work
  correctly in more cases.
- The -dlgo option now skips the download and uses the host Go if the running Go
  version matches dlgoVersion exactly.
- The 'test' command now supports -dlgo, -cc and -arch. Running unit tests with
  foreign GOARCH is occasionally useful. For example, it can be used to run
  32-bit tests on Windows. It can also be used to run darwin/amd64 tests on
  darwin/arm64 using Rosetta 2.
- The 'aar', 'xcode' and 'xgo' commands now use a slightly different method to
  install external tools. They previously used `go get`, but this comes with the
  annoying side effect of modifying go.mod. They now use `go install` instead,
  which is the recommended way of installing tools without modifying the local
  module.
- The old build warning about outdated Go version has been removed because we're
  much better at keeping backwards compatibility now.
2021-05-04 13:01:20 +02:00
..
deb/ethereum build: put GOPATH in /tmp on launchpad (#20564) 2020-01-16 13:03:41 +02:00
checksums.txt build: upgrade -dlgo version to Go 1.16.3 (#22746) 2021-04-27 12:43:47 +02:00
ci-notes.md travis, build, internal: use own Go bundle for PPA builds (#20240) 2019-11-05 15:32:42 +02:00
ci.go build: improve cross compilation setup (#22804) 2021-05-04 13:01:20 +02:00
goimports.sh build: make build/goimports.sh more potable 2018-06-26 22:04:27 +09:00
mvn.pom build: iOS XCode framework build and upload 2016-11-14 17:56:58 +02:00
mvn.settings travis, build: further maven and gpg refinements 2016-11-15 10:25:51 +02:00
nsis.envvarupdate.nsh build: NSIS based Windows installer (#3240) 2016-11-08 22:55:39 +01:00
nsis.geth.nsi build: safe update of PATH on Windows (#3419) 2016-12-11 00:01:57 +01:00
nsis.install.nsh build: fix CLI params for windows LNK files (#21055) 2020-05-11 10:05:37 +03:00
nsis.pathupdate.nsh build: safe update of PATH on Windows (#3419) 2016-12-11 00:01:57 +01:00
nsis.simplefc.dll build: NSIS based Windows installer (#3240) 2016-11-08 22:55:39 +01:00
nsis.simplefc.source.zip build: NSIS based Windows installer (#3240) 2016-11-08 22:55:39 +01:00
nsis.uninstall.nsh build: safe update of PATH on Windows (#3419) 2016-12-11 00:01:57 +01:00
pod.podspec build: use single CocoaPods package, pre-release dev builds 2016-11-28 13:09:43 +02:00
travis_keepalive.sh travis.yml: add race detector job for Swarm (#19148) 2019-02-22 14:20:21 +01:00
update-license.go build: deduplicate same authors with different casing 2019-07-22 12:31:11 +03:00