Add support for setting GOARM in cross target.

This adds to the existing format of `<GOOS>/<GOARCH>` to allow for
`<GOOS>/arm/v<GOARM>`

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
This commit is contained in:
Brian Goff
2019-04-16 15:40:53 -07:00
parent 4ed9059e55
commit fbb001d1f9
3 changed files with 30 additions and 2 deletions

View File

@@ -233,6 +233,27 @@ following:
This will create "./bundles/$VERSION/dynbinary-client/docker-$VERSION", which for
client-only builds is the important file to grab and install as appropriate.
### Cross Compilation
Limited cross compilation is supported due to requiring cgo for critical
functionality (such as seccomp support).
To cross compile run `make cross`. You can specify the platforms to target by
setting the `DOCKER_CROSSPLATFORMS` environment variable to a list of platforms
in the format `<GOOS>/<GOARCH>`. Specify multiple platforms by using a space
in between each desired platform.
For setting arm variants, you can specify the `GOARM` value by append `/v<GOARM>`
to your `<GOOS>/arm`. Example:
```
make DOCKER_CROSSPLATFORMS=linux/arm/v7 cross
```
This will create a linux binary targeting arm 7.
See `hack/make/.binary` for supported cross compliation platforms.
## System Dependencies
### Runtime Dependencies