changelog shortlog graph tags branches changeset file revisions annotate raw help

Mercurial > infra / autogen.lisp

revision 291: 9c37db8ed167
parent 289: acaa2f3cfbd4
child 295: 61f88f16e0f1
     1.1--- a/autogen.lisp	Tue Jun 18 16:38:44 2024 -0400
     1.2+++ b/autogen.lisp	Wed Jun 19 20:37:13 2024 +0000
     1.3@@ -84,11 +84,13 @@
     1.4 (defun check-shared-lib (name &optional warn)
     1.5   "Check for a shared library by loading it in the current session with dlopen.
     1.6 When WARN is non-nil, signal a warning instead of an error."
     1.7-  (let ((lib-name (format nil "lib~a.so" name)))
     1.8-    (if-let ((lib (ignore-errors (sb-alien:load-shared-object lib-name))))
     1.9-      (unwind-protect (format t "found shared lib: ~A~%" lib)
    1.10-        (sb-alien:unload-shared-object lib))
    1.11-      (check-err warn "shared library missing: ~x" name))))
    1.12+  (let ((local-lib-name (format nil "/usr/local/lib/lib~a.so" name))
    1.13+        (sys-lib-name (format nil "/usr/lib/lib~a.so" name)))
    1.14+    (if-let ((lib (or (ignore-errors (sb-alien:load-shared-object local-lib-name))
    1.15+                      (ignore-errors (sb-alien:load-shared-object sys-lib-name)))))
    1.16+            (unwind-protect (format t "found shared lib: ~A~%" lib)
    1.17+              (sb-alien:unload-shared-object lib))
    1.18+            (check-err warn "shared library missing in /usr/lib/ or /usr/local/lib/: ~x" name))))
    1.19 
    1.20 (defun check-exe (name &optional warn)
    1.21   "Check for an executable in current $PATH by NAME. When WARN is non-nil, signal