Commit 083f23c
committed
fix(dist-apple): the staged tree is optional, because on macOS it cannot exist
2026.9.11.2 made the dispatch reachable and the member then refused one layer
up, for the same underlying reason:
error: no action claimed --format 'app'
That message is the ENGINE's. The member's own explanation -- "mcpp reported no
staged tree" -- went to stderr, which is discarded on a successful build, so
the refusal was unreadable.
And the refusal was wrong. `mcpp pack`'s built-in closure walk refuses a Mach-O
program because it uses `LD_TRACE_LOADED_OBJECTS`, which dyld answers by
RUNNING the program -- so on macOS there is no staged tree to have, and a
member that requires one can never run there. A `.app` needs ONE program, not
a tree: `${mcpp.target_file:<name>}` names it, which is the placeholder
dist/wix.cppm uses for exactly this reason and what section 6 of the design
record recommends for a member packaging a named target.
The tree is still preferred when it exists -- a `--mode vendored` tree carries
the program's dependencies beside it and a bundle should keep them. Without
one the bundle carries the program alone, which is correct for a
self-contained Mach-O and is what the platform's own default produces.
`${mcpp.stage_dir}` is now named only on the path that has a tree, because the
engine REFUSES that placeholder when there is none -- that is its contract,
and a member naming it unconditionally is a member that cannot run on a target
whose built-in staging is refused. `CFBundleExecutable` takes the target's own
name on that path, since a placeholder's basename is not knowable before the
engine expands it.
All eleven features still compile against released 2026.9.11.2.1 parent 006124b commit 083f23c
1 file changed
Lines changed: 45 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
374 | 374 | | |
375 | 375 | | |
376 | 376 | | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
377 | 399 | | |
378 | | - | |
379 | | - | |
380 | | - | |
381 | | - | |
382 | | - | |
383 | | - | |
384 | 400 | | |
385 | 401 | | |
386 | 402 | | |
| |||
390 | 406 | | |
391 | 407 | | |
392 | 408 | | |
393 | | - | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
394 | 412 | | |
395 | 413 | | |
396 | 414 | | |
| |||
400 | 418 | | |
401 | 419 | | |
402 | 420 | | |
403 | | - | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
404 | 427 | | |
405 | 428 | | |
406 | 429 | | |
| |||
470 | 493 | | |
471 | 494 | | |
472 | 495 | | |
473 | | - | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
474 | 510 | | |
475 | 511 | | |
476 | 512 | | |
| |||
0 commit comments