Skip to content

Document native library and XCFramework bindings for Apple platforms - #150

Draft
rolfbjarne wants to merge 2 commits into
mainfrom
dev/rolf/xcframework-native-library-docs
Draft

rolfbjarne wants to merge 2 commits into
mainfrom
dev/rolf/xcframework-native-library-docs

Conversation

@rolfbjarne

@rolfbjarne rolfbjarne commented Oct 30, 2026 •

Copy link
Copy Markdown
Member

Add conceptual and reference documentation for using, binding, and distributing native libraries and XCFrameworks in .NET for iOS, Mac Catalyst, macOS, and tvOS:

  • Add docs/ios/binding-libs/index.md covering how to choose an integration approach (<NativeReference> with P/Invoke, Objective-C binding projects, or <XcodeProject>), <NativeReference> metadata, and shipping native libraries in NuGet packages (runtimes/<rid>/native/ caveats vs. binding resource packages).
  • Add docs/ios/binding-libs/xcframeworks.md covering SDK-style binding projects for single and multiple .xcframework bundles, running Objective Sharpie against a slice's .framework headers, .resources / .resources.zip binding resource packages, the .NET 12 removal of NoBindingEmbedding=false, packaging via dotnet pack, and troubleshooting.
  • Sync docs/ios/building-apps/build-properties.md and docs/ios/building-apps/build-items.md with dotnet/macios, including expanded NativeReference, NoBindingEmbedding, and CompressBindingResourcePackage documentation.
  • Add a Bind native libraries section to docs/ios/TOC.yml.

Refs:


Internal previews

File Preview link
docs/ios/binding-libs/index.md Learn preview
docs/ios/binding-libs/xcframeworks.md Learn preview
docs/ios/building-apps/build-items.md Learn preview
docs/ios/building-apps/build-properties.md Learn preview
docs/ios/TOC.yml Learn preview

Build report

rolfbjarne and others added 2 commits October 29, 2026 17:00
- Add docs/ios/binding-libs/index.md covering NativeReference, XcodeProject, and NuGet packaging (runtimes/<rid>/native/ vs binding resource packages)
- Add docs/ios/binding-libs/xcframeworks.md covering single and multiple XCFrameworks, Objective Sharpie slice usage, NoBindingEmbedding (.NET 12 removal of false), dotnet pack, and troubleshooting
- Expand NativeReference in docs/ios/building-apps/build-items.md and NoBindingEmbedding / CompressBindingResourcePackage in docs/ios/building-apps/build-properties.md
- Add Bind native libraries section to docs/ios/TOC.yml

Refs: dotnet/macios#13053
Refs: dotnet/macios#14647
Refs: dotnet/macios#14413

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 9330d047-38d9-439a-95d1-3ebf60aaebaf
… Kind docs

- Sync docs/ios/building-apps/build-properties.md and docs/ios/building-apps/build-items.md with latest additions from dotnet/macios (including AppManifestEntry, ComputeInstructionSetForReadyToRun, TrimExportAttributes, EnableCrashReport, StripMergeableLibraries, ValidateSceneManifest)
- Clarify that Kind is required on NativeReference items in binding projects (and inferred for frameworks/xcframeworks in app projects)
- Fix #xcodeproject anchor link in docs/ios/binding-libs/index.md and use relative links to binding-libs articles

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant