mirror of
https://github.com/coreos/mantle.git
synced 2026-02-05 09:45:01 +01:00
46 lines
723 B
Bash
Executable File
46 lines
723 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
cd $(dirname $0)
|
|
|
|
source ./env
|
|
|
|
if [[ $# -eq 0 ]]; then
|
|
set -- cmd/*
|
|
fi
|
|
|
|
version=$(git describe --dirty)
|
|
version="${version#v}"
|
|
version="${version/-/+}"
|
|
ldflags="-X ${REPO_PATH}/version.Version=${version}"
|
|
|
|
host_build() {
|
|
echo "Building $1"
|
|
go build -i \
|
|
-ldflags "${ldflags}" \
|
|
-mod vendor \
|
|
-o "bin/$1" \
|
|
"${REPO_PATH}/cmd/$1"
|
|
}
|
|
|
|
cross_build() {
|
|
local a
|
|
for a in amd64; do
|
|
echo "Building $a/$1"
|
|
mkdir -p "bin/$a"
|
|
CGO_ENABLED=0 GOARCH=$a \
|
|
go build -mod=vendor -ldflags "${ldflags}" \
|
|
-o "bin/$a/$1" "${REPO_PATH}/cmd/$1"
|
|
done
|
|
}
|
|
|
|
for cmd in "$@"; do
|
|
cmd=$(basename "${cmd}")
|
|
if [[ "${cmd}" == kolet ]]; then
|
|
cross_build kolet
|
|
else
|
|
host_build "${cmd}"
|
|
fi
|
|
done
|