@@ -305,31 +305,6 @@ In the long term, we hope to implement stack switching ``stdin`` devices, but
305305that is out of scope for this PEP.
306306
307307
308- Missing RPATH Support
309- ---------------------
310-
311- An important limitation of the Emscripten dynamic loader is that it does not
312- currently have RPATH support. Pyodide's present workaround is as follows:
313- ``auditwheel-emscripten `` places shared library dependencies that are vendored
314- into a package in a ``${package}.libs `` folder, following auditwheel's
315- convention. Pyodide patches the dynamic loader to treat this ``${package}.libs ``
316- folder as if it were on the RPATH of all of the dynamic libraries in the wheel.
317-
318- In Emscripten 4.0.5, we have updated the shared object file format, ``wasm-ld ``
319- and ``emcc `` to accept an ``-rpath `` flag. We are still working on updating the
320- dynamic loader to respect the rpath, but we expect this will be finished soon.
321- Pyodide will then switch to using the RPATH and drop the patch on the dynamic
322- loader.
323-
324- Emscripten Python currently uses the unpatched dynamic loader and so cannot load
325- extension modules that depend on vendored dynamic libraries via DT_NEEDED.
326- Extension modules can load dynamic libraries via DT_NEEDED if they are in the
327- system ``lib `` directory. We will wait to resolve this until we have fixed the
328- Emscripten dynamic loader upstream. When Emscripten Python is built with a
329- compatible version of Emscripten, it will automatically pick up support for
330- wheels with vendored dynamic libraries.
331-
332-
333308Traps and Uncaught Exceptions
334309-----------------------------
335310
0 commit comments