guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: gnu: openssl: Enable ssl2 at build time to ensure ABI compatible


From: Mark H. Weaver
Subject: 01/01: gnu: openssl: Enable ssl2 at build time to ensure ABI compatible graft.
Date: Wed, 02 Mar 2016 06:58:50 +0000

mhw pushed a commit to branch master
in repository guix.

commit ed742bc4b4f25e5baff80c1f8529c20b6d98b513
Author: Mark H Weaver <address@hidden>
Date:   Wed Mar 2 01:51:47 2016 -0500

    gnu: openssl: Enable ssl2 at build time to ensure ABI compatible graft.
    
    Fixes <https://debbugs.gnu.org/22876>
    Reported by Christopher Allan Webber <address@hidden>.
    
    * gnu/packages/tls.scm (openssl-1.0.2g)[arguments]: Override the inherited
      'configure' phase to add "enable-ssl2" as an argument to ./config.
---
 gnu/packages/tls.scm |   36 +++++++++++++++++++++++++++++++++++-
 1 files changed, 35 insertions(+), 1 deletions(-)

diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 11a59db..e942bb3 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -301,7 +301,41 @@ required structures.")
            "0cxajjayi859czi545ddafi24m9nwsnjsw4q82zrmqvwj2rv315p"))
          (patches (map search-patch
                        '("openssl-runpath.patch"
-                         "openssl-c-rehash-in.patch"))))))))
+                         "openssl-c-rehash-in.patch"))))))
+    (arguments
+     (substitute-keyword-arguments (package-arguments openssl)
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (replace 'configure
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out (assoc-ref outputs "out")))
+                 (zero?
+                  (system*
+                   "./config"
+
+                   ;; XXX TEMPORARY, FOR GRAFTING ONLY
+                   ;;     Enable ssl2 code to preserve
+                   ;;     ABI compatibility with 1.0.2f
+                   "enable-ssl2"
+
+                   "shared"             ;build shared libraries
+                   "--libdir=lib"
+
+                   ;; The default for this catch-all directory is
+                   ;; PREFIX/ssl.  Change that to something more
+                   ;; conventional.
+                   (string-append "--openssldir=" out
+                                  "/share/openssl-" ,(package-version openssl))
+
+                   (string-append "--prefix=" out)
+
+                   ;; XXX FIXME: Work around a code generation bug in GCC
+                   ;; 4.9.3 on ARM when compiled with -mfpu=neon.  See:
+                   ;; <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66917>
+                   ,@(if (and (not (%current-target-system))
+                              (string-prefix? "armhf" (%current-system)))
+                         '("-mfpu=vfpv3")
+                         '()))))))))))))
 
 (define-public libressl
   (package



reply via email to

[Prev in Thread] Current Thread [Next in Thread]