summary refs log tree commit diff
path: root/gnu/packages/databases.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-12-10 16:19:23 +0100
committerMarius Bakke <mbakke@fastmail.com>2019-12-11 01:14:38 +0100
commit939c5b2cb6952cd8549bf17d6fd3bcbfb582f0bd (patch)
treef17df167c8671d005391ac677d4774a963d1fe8c /gnu/packages/databases.scm
parent3d19c77d74d0d5b68e1265939c046f69915b699f (diff)
downloadguix-939c5b2cb6952cd8549bf17d6fd3bcbfb582f0bd.tar.gz
gnu: MariaDB: Do not propagate OpenSSL.
* gnu/packages/databases.scm (mariadb)[propagated-inputs]: Remove.
[inputs]: Add OPENSSL-1.0.
[arguments]: Add absolute references to OpenSSL in "post-install" phase.
Diffstat (limited to 'gnu/packages/databases.scm')
-rw-r--r--gnu/packages/databases.scm17
1 files changed, 12 insertions, 5 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 23c5ed32e0..0f04647a73 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -851,10 +851,11 @@ Language.")
              #t))
          (add-after
           'install 'post-install
-          (lambda* (#:key outputs #:allow-other-keys)
+          (lambda* (#:key inputs outputs #:allow-other-keys)
             (let* ((out     (assoc-ref outputs "out"))
                    (dev     (assoc-ref outputs "dev"))
-                   (lib     (assoc-ref outputs "lib")))
+                   (lib     (assoc-ref outputs "lib"))
+                   (openssl (assoc-ref inputs "openssl")))
               (substitute* (string-append out "/bin/mysql_install_db")
                 (("basedir=\"\"")
                  (string-append "basedir=\"" out "\"")))
@@ -876,6 +877,14 @@ Language.")
                            (string-append dev "/share/pkgconfig"))
               (rename-file (string-append out "/bin/mysql_config")
                            (string-append dev "/bin/mysql_config"))
+
+              ;; Embed an absolute reference to OpenSSL in mysql_config
+              ;; and the pkg-config file to avoid propagation.
+              (substitute* (list (string-append dev "/bin/mysql_config")
+                                 (string-append dev "/share/pkgconfig/mariadb.pc"))
+                (("-lssl -lcrypto" all)
+                 (string-append "-L" openssl "/lib " all)))
+
               #t))))))
     (native-inputs
      `(("bison" ,bison)
@@ -889,13 +898,11 @@ Language.")
        ("libaio" ,libaio)
        ("libxml2" ,libxml2)
        ("ncurses" ,ncurses)
+       ("openssl" ,openssl-1.0)
        ("pam" ,linux-pam)
        ("pcre" ,pcre)
        ("xz" ,xz)
        ("zlib" ,zlib)))
-    (propagated-inputs
-     ;; mariadb.pc says -lssl -lcrypto, so propagate it.
-     `(("openssl" ,openssl-1.0)))
     ;; The test suite is very resource intensive and can take more than three
     ;; hours on a x86_64 system.  Give slow and busy machines some leeway.
     (properties '((timeout . 64800)))        ;18 hours