#!/bin/bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" SOLUTION_ROOT="$(dirname "$SCRIPT_DIR")" VERSION="${1:-0.1.0}" echo "Building free-code .NET v${VERSION}..." RID_TARGETS=("osx-arm64" "osx-x64" "linux-x64" "linux-arm64" "win-x64") for RID in "${RID_TARGETS[@]}"; do echo "Publishing for ${RID}..." dotnet publish "${SOLUTION_ROOT}/src/FreeCode/FreeCode.csproj" \ -c Release \ -r "${RID}" \ /p:Version="${VERSION}" \ /p:PublishAot=true \ /p:PublishSingleFile=true \ /p:PublishTrimmed=true \ -o "${SOLUTION_ROOT}/dist/${RID}" done echo "Build complete. Outputs in ${SOLUTION_ROOT}/dist/"