fix: guard libpcre2 load so static builds don't abort at init
ober
dff9f69ef6324a87c272fbd6e1ebb4956a688780
--- a/lib/sed/pcre2.sls +++ b/lib/sed/pcre2.sls @@ -14,8 +14,11 @@ (define PCRE2_MULTILINE #x00000400) (define PCRE2_ZERO_TERMINATED (- (expt 2 64) 1)) - ;; Load shared library - (define init (begin (load-shared-object "libpcre2-8.so") #t)) + ;; Load shared library — guarded so static binaries (JERBOA_STATIC) don't + ;; abort at library init; pcre2 calls will fail at use time instead. + (define init + (or (guard (e [#t #f]) (load-shared-object "libpcre2-8.so") #t) + #f)) ;;; FFI declarations — use string for PCRE2_SPTR (auto null-terminated), ;;; uptr for C pointers