good morning!!!!

Skip to content
Snippets Groups Projects
Forked from github / maticnetwork / bor
Loading
  • Felix Lange's avatar
    build: improve cross compilation setup (#22804) · effaf185
    Felix Lange authored
    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.
    effaf185
Code owners