Skip to content

Plugin manifest: support prebuilt iOS static libraries (xcframeworks/archives), not just compiled sources #55

Description

@GenericJam

Found by the mob_scene3d Filament spike: the plugin build mechanism's cpp_archive slot compiles SOURCES only — there is no manifest slot for linking PREBUILT iOS static libs. Filament ships 32 static-lib xcframeworks (~104MB extracted, incl. gltfio/ktxreader/basis_transcoder); the spike hand-wired ~40 lines into the generated app's ios/build.zig (ObjC++ compile step via Apple clang -std=gnu++17, ~20 archives via addFileArg, -framework Metal). For mob_scene3d to ship as a normal plugin, the manifest needs: a list of vendored .xcframework/.a paths (with per-slice device/sim selection), extra frameworks to link, and an optional ObjC++ compile step. Android's gradle_deps (Maven coordinates) already covers that side — note it is Maven-Central-only, which also constrains version pinning (Filament v1.76.0 exists on GitHub but not Maven; pin discipline must track Maven). Full context: mob_scene3d decisions/2026-08-30-filament-spike.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions