#!/usr/bin/env bash # Crea gli eseguibili single-file self-contained in dist//. # Senza argomenti: win-x64 e linux-x64. Con argomenti: i rid indicati (es. linux-arm64). # Funziona da Linux, WSL e macOS (la compilazione per un altro sistema non richiede quel sistema). set -euo pipefail cd "$(dirname "$0")/.." rids=("$@") [ ${#rids[@]} -eq 0 ] && rids=(win-x64 linux-x64) for rid in "${rids[@]}"; do echo "== $rid" dotnet publish src/agent-wiki-ui/agent-wiki-ui.csproj -c Release -r "$rid" --self-contained -p:PublishSingleFile=true -o "dist/$rid" --nologo -v quiet find "dist/$rid" -name '*.pdb' -delete # simboli delle librerie native: inutili a chi usa l'app done echo echo "Eseguibili pronti:" for rid in "${rids[@]}"; do ls -lh "dist/$rid" | awk -v r="$rid" 'NR>1 {print " dist/" r "/" $9 " (" $5 ")"}'; done