<pre style='margin:0'>
Clemens Lang (neverpanic) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/43fac1d2c92d3d9545cdf2a143857e187fab0664">https://github.com/macports/macports-ports/commit/43fac1d2c92d3d9545cdf2a143857e187fab0664</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 43fac1d2c92 openssl3: fix build with older versions of Perl
</span>43fac1d2c92 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 43fac1d2c92d3d9545cdf2a143857e187fab0664
</span>Author: aeiouaeiouaeiouaeiouaeiouaeiou <aeioudev@outlook.com>
AuthorDate: Fri Sep 6 13:26:58 2024 +0300
<span style='display:block; white-space:pre;color:#404040;'> openssl3: fix build with older versions of Perl
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/70684
</span>---
devel/openssl3/Portfile | 5 ++
devel/openssl3/files/patch-mkinstallvars.diff | 77 +++++++++++++++++++++++++++
2 files changed, 82 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/openssl3/Portfile b/devel/openssl3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index aff063bc12c..295f97e6e74 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/openssl3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/openssl3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,6 +57,11 @@ if {${os.platform} eq "darwin" && ${os.major} < 18} {
</span> }
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/70684
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/openssl/openssl/pull/25367
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# remove this patch in the next release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-mkinstallvars.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Use timegm() in crypto/asn1/a_time.c
# Fixes build on 10.4, and is generally preferable, anyway
#
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/openssl3/files/patch-mkinstallvars.diff b/devel/openssl3/files/patch-mkinstallvars.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..0a74de18400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/openssl3/files/patch-mkinstallvars.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,77 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 40c8ebe5d2781339709554d166adb006aa495ec8 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Richard Levitte <levitte@openssl.org>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 3 Sep 2024 19:16:05 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] util/mkinstallvars.pl: replace List::Util::pairs with out own
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Unfortunately, List::Util::pairs didn't appear in perl core modules
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+before 5.19.3, and our minimum requirement is 5.10.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fortunately, we already have a replacement implementation, and can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+re-apply it in this script.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fixes #25366
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Reviewed-by: Neil Horman <nhorman@openssl.org>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Reviewed-by: Tomas Mraz <tomas@openssl.org>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+(Merged from https://github.com/openssl/openssl/pull/25367)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+(cherry picked from commit 210dc9a50dfd99caa1cf7c3d2fa42850124b1bbc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- util/mkinstallvars.pl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ util/mkinstallvars.pl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10,8 +10,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # form, or passed as variable assignments on the command line.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # The result is a Perl module creating the package OpenSSL::safe::installdata.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++use 5.10.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++use strict;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++use warnings;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++use Carp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use File::Spec;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-use List::Util qw(pairs);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#use List::Util qw(pairs);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++sub _pairs (@);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # These are expected to be set up as absolute directories
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my @absolutes = qw(PREFIX libdir);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,9 +25,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # as subdirectories to PREFIX or LIBDIR. The order of the pairs is important,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # since the LIBDIR subdirectories depend on the calculation of LIBDIR from
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # PREFIX.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-my @subdirs = pairs (PREFIX => [ qw(BINDIR LIBDIR INCLUDEDIR APPLINKDIR) ],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- LIBDIR => [ qw(ENGINESDIR MODULESDIR PKGCONFIGDIR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- CMAKECONFIGDIR) ]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++my @subdirs = _pairs (PREFIX => [ qw(BINDIR LIBDIR INCLUDEDIR APPLINKDIR) ],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ LIBDIR => [ qw(ENGINESDIR MODULESDIR PKGCONFIGDIR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CMAKECONFIGDIR) ]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # For completeness, other expected variables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my @others = qw(VERSION LDLIBS);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -151,3 +157,26 @@ package OpenSSL::safe::installdata;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ _____
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++######## Helpers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# _pairs LIST
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This operates on an even-sized list, and returns a list of "ARRAY"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# references, each containing two items from the given LIST.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# It is a quick cheap reimplementation of List::Util::pairs(), a function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# we cannot use, because it only appeared in perl v5.19.3, and we claim to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# support perl versions all the way back to v5.10.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++sub _pairs (@) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ croak "Odd number of arguments" if @_ & 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ my @pairlist = ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ while (@_) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ my $x = [ shift, shift ];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ push @pairlist, $x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return @pairlist;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span></pre><pre style='margin:0'>
</pre>