#!/usr/bin/env bash set -euo pipefail repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" output_dir="$repo_root/dist" version="${VERSION:-dev}" mkdir -p "$output_dir" platforms=( "linux amd64" "darwin amd64" "windows amd64" ) for platform in "${platforms[@]}"; do read -r target_os target_arch <<<"$platform" extension="" if [[ "$target_os" == "windows" ]]; then extension=".exe" fi output="$output_dir/skeleton-${target_os}-${target_arch}${extension}" echo "Building $output" CGO_ENABLED=0 GOOS="$target_os" GOARCH="$target_arch" \ go build -trimpath -ldflags "-s -w -X main.buildVersion=$version" -o "$output" . done echo "Cross-platform amd64 binaries written to $output_dir"