github.com/coreos/mantle@v0.13.0/build (about) 1 #!/usr/bin/env bash 2 3 set -e 4 5 cd $(dirname $0) 6 7 source ./env 8 9 if [[ $# -eq 0 ]]; then 10 set -- cmd/* 11 fi 12 13 version=$(git describe --dirty) 14 version="${version#v}" 15 version="${version/-/+}" 16 ldflags="-X ${REPO_PATH}/version.Version=${version}" 17 18 host_build() { 19 echo "Building $1" 20 go build -i \ 21 -ldflags "${ldflags}" \ 22 -mod vendor \ 23 -o "bin/$1" \ 24 "${REPO_PATH}/cmd/$1" 25 } 26 27 cross_build() { 28 local a 29 for a in amd64 arm64; do 30 echo "Building $a/$1" 31 mkdir -p "bin/$a" 32 CGO_ENABLED=0 GOARCH=$a \ 33 go build -mod=vendor -ldflags "${ldflags}" \ 34 -o "bin/$a/$1" "${REPO_PATH}/cmd/$1" 35 done 36 } 37 38 for cmd in "$@"; do 39 cmd=$(basename "${cmd}") 40 if [[ "${cmd}" == kolet ]]; then 41 cross_build kolet 42 else 43 host_build "${cmd}" 44 fi 45 done