Commit 6317f7c
vendor-hermes: export public hermes_napi_* entry points
The clean Hermes build at the pinned SHA does NOT export
hermes_napi_create_env (and the other hermes_napi_* entry points): Hermes
compiles every target with a global -fvisibility=hidden, and because those
entry points are C++ symbols taking hermes_napi_host*, a function's
visibility is clamped by its parameter types' hidden visibility — so they
stay out of the framework's dynamic export table even though they carry
NAPI_EXTERN. Last session's env creation only linked because the pod's
Hermes binary was hand-patched; a from-scratch build fails at the app link
with "Undefined symbol: hermes_napi_create_env".
vendor-hermes now appends `-fvisibility=default` to the hermesNapi_obj
CMake target (idempotently, after cloning), overriding the earlier global
flag for that target only. Verified via nm that the entry points now export
(napi/node_api runtime symbols unaffected) and the iOS allTests suite is
green (14 passing) from a clean pod build — no binary hand-patching.
Also ignore **/build-tests/** in ESLint (CMake writes compiler_depend.ts
dependency files there that aren't real TypeScript).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>1 parent ed4e8c6 commit 6317f7c
2 files changed
Lines changed: 29 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
31 | 56 | | |
32 | 57 | | |
33 | 58 | | |
| |||
115 | 140 | | |
116 | 141 | | |
117 | 142 | | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
118 | 146 | | |
119 | 147 | | |
120 | 148 | | |
0 commit comments