Commit 1a96088
committed
fix(macos): static libc++ via ld64 -hidden-l (gtest SIGABRT on exit)
Linking the archives by path left their symbols with default
visibility; the system libc++/libc++abi that libSystem pulls in
indirectly then clashes with the static copy and processes abort
during static destruction — every gtest binary exited 6 on macos CI
(the mcpp/xlings entry points only survived via their _Exit guards).
-hidden-l is the ld64 feature built for static libc++: it links the
archive (never the sibling dylib) and gives its symbols hidden
visibility, so the two copies can coexist.1 parent cf975ca commit 1a96088
1 file changed
Lines changed: 12 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
363 | 363 | | |
364 | 364 | | |
365 | 365 | | |
366 | | - | |
367 | | - | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
368 | 369 | | |
369 | 370 | | |
370 | | - | |
371 | | - | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
372 | 380 | | |
373 | 381 | | |
374 | 382 | | |
| |||
0 commit comments