#!/bin/bash -e

source $(dirname $0)/version

cd $(dirname $0)/..

LDFLAGS="-w -s -X main.VERSION=$VERSION"
if [ "$(uname -s)" = "Linux" ]; then
    LDFLAGS="$LDFLAGS -extldflags -static"
fi
CGO_ENABLED=0 go build -ldflags="$LDFLAGS" -o bin/rancher

if [ -n "$CROSS" ]; then
    rm -rf build/bin
    mkdir -p build/bin
    for OS_ARCH in \
        linux/amd64 linux/arm linux/arm64 linux/s390x \
        windows/386 windows/amd64 \
        darwin/amd64 darwin/arm64; do
        OS="${OS_ARCH%/*}"
        ARCH="${OS_ARCH#*/}"
        OUTPUT_BIN="build/bin/rancher_$OS-$ARCH"
        if test "$OS" = "windows"; then
            OUTPUT_BIN="${OUTPUT_BIN}.exe"
        fi
        echo "Building binary for $OS/$ARCH..."
        GOARCH=$ARCH GOOS=$OS CGO_ENABLED=0 go build \
              -ldflags="-w -X main.VERSION=$VERSION" \
              -o ${OUTPUT_BIN} ./
    done
fi
