An FFI library declares the system shared objects it binds in its deps.edn (:jolt/native), with per-platform candidate sonames, :optional for feature-gated deps, and :process for libraries that use the running process's own symbols (libc sockets). jolt.deps collects them transitively; jolt loads them before the library's namespaces are required, so foreign-fn bindings resolve — and a missing required lib fails early with a clear message instead of a cryptic symbol error. Replaces hardcoded soname-probing inside library .clj files. |
||
|---|---|---|
| .. | ||
| clojure/core | ||
| jolt | ||