[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