Commit e5908b4
fix(iOS): opt spm_dependency pod targets out of Swift explicit modules
A pod target consuming an SPM binary target via spm_dependency sees the
binary target's module.modulemap twice: Xcode processes the xcframework
into both the platform-wide products dir and the pod's TARGET_BUILD_DIR,
and the existing SWIFT_INCLUDE_PATHS workaround makes the former visible.
Implicit modules tolerate the duplicate definition; the explicit-modules
dependency scanner (the default starting with Xcode 26) fails with
"redefinition of module". Before the VFS-overlay removal these targets
carried -ivfsoverlay, which disqualified them from explicit modules and
masked the problem; the overlay's removal made them eligible and the
nightly-tests react-native-enriched-markdown (RaTeX) job went red.
Set SWIFT_ENABLE_EXPLICIT_MODULES=NO on exactly the targets
spm_dependency touches, restoring the previous compile mode for the
CocoaPods+SPM interop path only.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent b33de75 commit e5908b4
1 file changed
Lines changed: 8 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
40 | 48 | | |
41 | 49 | | |
42 | 50 | | |
| |||
0 commit comments