This repository builds .NET iOS and Mac Catalyst bindings plus NuGet packages using Cake.
- .NET SDK from
global.json. - Xcode compatible with the installed .NET Apple workloads.
- CocoaPods (
pod).
Restore the checked-in Cake tool manifest before building:
dotnet tool restoreIf you are working from a fork and need to restore packages published from that fork, configure a GitHub Packages source:
./scripts/configure-github-feed.sh --ghYou can also use a local personal access token with read:packages scope:
export GITHUB_PACKAGES_PAT="your_github_pat_here"
./scripts/configure-github-feed.shDo not commit tokens or generated local NuGet credentials.
The script detects the fork owner from the git remote, adds a source named like github-<YourUsername>, and allows dotnet restore to resolve fork-published packages.
Build and produce .nupkg files under ./output:
dotnet tool run dotnet-cake -- --target=nuget --names=Google.SignIndotnet tool run dotnet-cake -- --target=cleanThis can happen when using MSBuild solution-level targets with some .NET SDK versions. The Cake script builds .csproj files directly in dependency order to avoid that failure mode.
Some packages depend on other packages built from this repository. The Cake script handles dependency-first packing. If restore still fails, run the component build through Cake instead of building the project directly:
dotnet tool run dotnet-cake -- --target=nuget --names=Google.SignInThe Cake scripts disable code signing by default (CODE_SIGNING_ALLOWED=NO) for CI compatibility. If you need signed frameworks, override the build settings locally instead of committing signing material.
If restore cannot find packages from a fork, verify the configured sources:
dotnet nuget list sourceThen clear local NuGet caches if needed:
dotnet nuget locals all --clear
dotnet restore