#!/usr/bin/env bash

go-build(){
  CGO_ENABLED=0 \
    GOOS=$GOOS \
    GOARCH=$GOARCH \
    go build \
    -o _dist/drycc-$1-$GOOS-$GOARCH \
    drycc.go
  if [[ "$GOOS" != "darwin" ]]; then
    upx --lzma --best _dist/drycc-$1-$GOOS-$GOARCH
  fi
}

GOOS_LIST=("linux" "windows" "darwin")
GOARCH_LIST=("386" "amd64" "arm" "arm64")
EXCLUDE_TARGET=("darwin/386", "darwin/arm" "windows/arm64")

for GOOS in ${GOOS_LIST[@]}; do
  for GOARCH in ${GOARCH_LIST[@]}; do
    target="$GOOS/$GOARCH"
    if [[ ${EXCLUDE_TARGET[@]/$target/} == ${EXCLUDE_TARGET[@]} ]]; then
      go-build "$1"
    fi
  done
done
