summary refs log tree commit diff
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2018-09-11 16:40:48 -0400
committerLeo Famulari <leo@famulari.name>2018-09-14 16:51:49 -0400
commit9e9e5d5a269f32fab596c83451824a50dbc2b62d (patch)
treef2174e2b95b7a8a139a51298a03c2d09d6bc5005
parente830c9d0b0ff7622b8bb86348ee0c97a28e2f2d8 (diff)
downloadguix-9e9e5d5a269f32fab596c83451824a50dbc2b62d.tar.gz
gnu: OpenSSL 1.1: Update to 1.1.1.
* gnu/packages/tls.scm (openssl-next): Update to 1.1.1.
[arguments]: Patch a `/usr/bin/env` invocation in the 'config' script.
Adjust the documentation output.
* gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch: Rename and ...
* gnu/packages/patches/openssl-1.1-c-rehash-in.patch: ... adjust patch.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/patches/openssl-1.1-c-rehash-in.patch (renamed from gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch)6
-rw-r--r--gnu/packages/tls.scm30
3 files changed, 29 insertions, 9 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 7b230cb6f5..d37a193adb 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1011,7 +1011,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/openssl-runpath.patch			\
   %D%/packages/patches/openssl-1.0.2-CVE-2018-0495.patch	\
   %D%/packages/patches/openssl-1.0.2-CVE-2018-0732.patch	\
-  %D%/packages/patches/openssl-1.1.0-c-rehash-in.patch		\
+  %D%/packages/patches/openssl-1.1-c-rehash-in.patch		\
   %D%/packages/patches/openssl-c-rehash-in.patch		\
   %D%/packages/patches/orpheus-cast-errors-and-includes.patch	\
   %D%/packages/patches/osip-CVE-2017-7853.patch			\
diff --git a/gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch b/gnu/packages/patches/openssl-1.1-c-rehash-in.patch
index e3a982b7a8..c96493b584 100644
--- a/gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch
+++ b/gnu/packages/patches/openssl-1.1-c-rehash-in.patch
@@ -6,14 +6,14 @@ to create symbolic links to certificates, for instance in the 'nss-certs'
 package.
 
 diff --git a/tools/c_rehash.in b/tools/c_rehash.in
-index 2fef627..9d40eae 100644
+index 421fd89208..93aca4e168 100644
 --- a/tools/c_rehash.in
 +++ b/tools/c_rehash.in
 @@ -1,4 +1,6 @@
--#!{- $config{hashbangperl} -}
+-#!{- $config{HASHBANGPERL} -}
 +eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
 +  & eval 'exec perl -wS "$0" $argv:q'
 +    if 0;
  
  # {- join("\n# ", @autowarntext) -}
- # Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved.
+ # Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved.
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 5e49509ddd..f7de901385 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -410,7 +410,7 @@ required structures.")
   (package
     (inherit openssl)
     (name "openssl")
-    (version "1.1.0i")
+    (version "1.1.1")
     (source (origin
              (method url-fetch)
              (uri (list (string-append "https://www.openssl.org/source/openssl-"
@@ -420,13 +420,13 @@ required structures.")
                         (string-append "ftp://ftp.openssl.org/source/old/"
                                        (string-trim-right version char-set:letter)
                                        "/" name "-" version ".tar.gz")))
-              (patches (search-patches "openssl-1.1.0-c-rehash-in.patch"))
+              (patches (search-patches "openssl-1.1-c-rehash-in.patch"))
               (sha256
                (base32
-                "16fgaf113p6s5ixw227sycvihh3zx6f6rf0hvjjhxk68m12cigzb"))))
+                "0gbab2fjgms1kx5xjvqx8bxhr98k4r8l2fa8vw7kvh491xd8fdi8"))))
     (outputs '("out"
-               "doc"        ; 1.3MiB of man3 pages
-               "static"))   ; 5.5MiB of .a files
+               "doc"        ; 6.7 MiB of man3 pages and full HTML documentation
+               "static"))   ; 6.4 MiB of .a files
     (arguments
      (substitute-keyword-arguments (package-arguments openssl)
        ((#:phases phases)
@@ -439,6 +439,11 @@ required structures.")
              (lambda* (#:key outputs #:allow-other-keys)
                (let* ((out (assoc-ref outputs "out"))
                       (lib (string-append out "/lib")))
+                 ;; It's not a shebang so patch-source-shebangs misses it.
+                 (substitute* "config"
+                   (("/usr/bin/env")
+                    (string-append (assoc-ref %build-inputs "coreutils")
+                                   "/bin/env")))
                  (invoke "./config"
                          "shared"       ;build shared libraries
                          "--libdir=lib"
@@ -460,6 +465,21 @@ required structures.")
                                '("-mfpu=vfpv3")
                                '())))))
 
+           (delete 'move-man3-pages)
+           (add-after 'install 'move-extra-documentation
+             (lambda* (#:key outputs #:allow-other-keys)
+               ;; Move man3 pages and full HTML documentation to "doc".
+               (let* ((out    (assoc-ref outputs "out"))
+                      (man3   (string-append out "/share/man/man3"))
+                      (html (string-append out "/share/doc/openssl"))
+                      (doc    (assoc-ref outputs "doc"))
+                      (man-target (string-append doc "/share/man/man3"))
+                      (html-target (string-append doc "/share/doc/openssl")))
+                 (copy-recursively man3 man-target)
+                 (delete-file-recursively man3)
+                 (copy-recursively html html-target)
+                 (delete-file-recursively html)
+                 #t)))
            ;; XXX: Duplicate this phase to make sure 'version' evaluates
            ;; in the current scope and not the inherited one.
            (replace 'remove-miscellany