gnu: openssl: Remove run-time dependency on Perl.

This shrinks the closure of OpenSSL from 154 MiB to 73 MiB.

* gnu/packages/patches/openssl-c-rehash.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/tls.scm (openssl)[source]: Use it.
  [arguments]: Add 'remove-miscellany' phase.
* gnu/packages/certs.scm (nss-certs)[native-inputs]: Add PERL.
This commit is contained in:
Ludovic Courtès 2015-09-09 19:01:48 +02:00
parent fe8199a80c
commit 784d6e9115
4 changed files with 34 additions and 3 deletions

View file

@ -0,0 +1,17 @@
This patch removes the explicit reference to the 'perl' binary,
such that OpenSSL does not retain a reference to Perl.
The 'c_rehash' program is seldom used, but it is used nonetheless
to create symbolic links to certificates, for instance in the 'nss-certs'
package.
--- openssl-1.0.2d/tools/c_rehash 2015-09-09 18:36:07.313316482 +0200
+++ openssl-1.0.2d/tools/c_rehash 2015-09-09 18:36:28.965458458 +0200
@@ -1,4 +1,6 @@
-#!/usr/bin/perl
+eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
+ & eval 'exec perl -wS "$0" $argv:q'
+ if 0;
# Perl c_rehash script, scan all files in a directory
# and add symbolic links to their hash values.