* `make` will build the cli with all backends exnabled
* `make cross` will cross build without the example and local backend
You can still cross compile with all backends by doing
```console
$ BUILD_TAGS=example,local make cross
```
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
* Make BINARY mutability explicit
* Default docker build output type is local so use this
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
* Run in parallel
* lint
* test/build/e2e test
* use cache for go
* do not use docker for building
* remove useless dependencies from the base image
Build time passes from 5 minutes to 1 minute 30 seconds
* add `make help` target
* remove unused variables
* add .exe to the binary name when on windows
* add ldflags to go build to strip the binary (smaller binary size)
* `make protos` must be executed manually when proto files change