summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/openldap.scm12
1 files changed, 11 insertions, 1 deletions
diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm
index 8d27ac9666..f3963c6e20 100644
--- a/gnu/packages/openldap.scm
+++ b/gnu/packages/openldap.scm
@@ -73,7 +73,17 @@
       (modify-phases %standard-phases
         (add-after 'configure 'provide-libtool
           (lambda _ (copy-file (which "libtool") "libtool")
-            #t)))))
+            #t))
+        (add-after 'install 'patch-sasl-path
+          ;; Give -L arguments for cyrus-sasl to avoid propagation.
+          (lambda* (#:key inputs outputs #:allow-other-keys)
+            (let ((out (assoc-ref outputs "out"))
+                  (sasl (assoc-ref inputs "cyrus-sasl")))
+              (substitute* (map (lambda (f) (string-append out "/" f))
+                                '("lib/libldap.la" "lib/libldap_r.la"))
+                (("-lsasl2" lib)
+                 (string-append "-L" sasl "/lib " lib)))
+              #t))))))
    (synopsis "Implementation of the Lightweight Directory Access Protocol")
    (description
     "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.")