Commit dee0b6a
Fix switch shadow node compilation for cross-platform SPM builds
Package.swift's #if os(macOS) runs on the host (always macOS), not
the target platform. This meant iOS builds got macOS switch excludes,
causing AppKit import errors.
Instead of conditionally excluding files in Package.swift, add
#if TARGET_OS_OSX guards directly in the .mm files. Both files are
now included in all builds but compile to empty on the wrong platform.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent e31da84 commit dee0b6a
3 files changed
Lines changed: 13 additions & 4 deletions
File tree
- packages/react-native
- ReactCommon/react/renderer/components/switch/iosswitch/react/renderer/components/switch
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
385 | 385 | | |
386 | 386 | | |
387 | 387 | | |
388 | | - | |
389 | 388 | | |
390 | 389 | | |
391 | 390 | | |
392 | | - | |
393 | 391 | | |
394 | 392 | | |
395 | 393 | | |
| |||
448 | 446 | | |
449 | 447 | | |
450 | 448 | | |
451 | | - | |
| 449 | + | |
| 450 | + | |
452 | 451 | | |
453 | 452 | | |
454 | 453 | | |
| |||
459 | 458 | | |
460 | 459 | | |
461 | 460 | | |
462 | | - | |
| 461 | + | |
463 | 462 | | |
464 | 463 | | |
465 | 464 | | |
| |||
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
8 | 11 | | |
9 | 12 | | |
10 | 13 | | |
| |||
26 | 29 | | |
27 | 30 | | |
28 | 31 | | |
| 32 | + | |
| 33 | + | |
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
8 | 11 | | |
9 | 12 | | |
10 | 13 | | |
| |||
30 | 33 | | |
31 | 34 | | |
32 | 35 | | |
| 36 | + | |
| 37 | + | |
0 commit comments