Skip to content

Workflows, projects, and packages updates #582

Workflows, projects, and packages updates

Workflows, projects, and packages updates #582

Workflow file for this run

name: Build
on: [push, pull_request]
jobs:
Everything:
strategy:
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v6
with:
submodules: 'recursive'
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: '10.x'
- name: .NET Workload restore
run: dotnet workload restore
- name: Query required Xcode version
if: matrix.os == 'macos-latest'
id: xcode-version
run: |
# Find the installed MacCatalyst SDK pack after workload restore
SDK_PATH=$(find ~/.dotnet/packs -name "Microsoft.MacCatalyst.Sdk.net*" -type d 2>/dev/null | head -1)
if [ -n "$SDK_PATH" ]; then
# Extract version from path (e.g., Microsoft.MacCatalyst.Sdk.net10.0_26.2)
XCODE_VERSION=$(basename "$SDK_PATH" | sed -n 's/.*_\([0-9]*\.[0-9]*\).*/\1/p')
echo "Required Xcode version from SDK: $XCODE_VERSION"
echo "xcode-version=$XCODE_VERSION" >> $GITHUB_OUTPUT
else
echo "Could not determine required Xcode version, using latest-stable"
echo "xcode-version=latest-stable" >> $GITHUB_OUTPUT
fi
shell: bash
- name: Setup Xcode
if: matrix.os == 'macos-latest'
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ steps.xcode-version.outputs.xcode-version }}
- name: Restore NuGet Packages
run: dotnet restore CSharpMath.sln
- name: Build Everything
run: dotnet build CSharpMath.sln /p:Configuration=Release