<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/0b5b05d2bdf5f2fa9a8a65903d50a7efb838fc7f">https://github.com/macports/macports-ports/commit/0b5b05d2bdf5f2fa9a8a65903d50a7efb838fc7f</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 0b5b05d2bdf5f2fa9a8a65903d50a7efb838fc7f
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Tue Jun 18 14:42:09 2024 -0700
<span style='display:block; white-space:pre;color:#404040;'> openssl3: Remove version holdback for OS <10.14.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> See: https://trac.macports.org/ticket/68766
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Also fixes the build on 10.4. See the Portfile comments for more
</span><span style='display:block; white-space:pre;color:#404040;'> details. Because this slightly changes the build, it gets a revbump.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> TESTED:
</span><span style='display:block; white-space:pre;color:#404040;'> Tested on 10.4-10.5 ppc, 10.5-10.6 ppc (i386 Rosetta), 10.4-10.6 i386,
</span><span style='display:block; white-space:pre;color:#404040;'> 10.5-12.x x86_64, and 11.x-14.x arm64.
</span><span style='display:block; white-space:pre;color:#404040;'> Builds on all tested platforms except 10.4 ppc +universal, including
</span><span style='display:block; white-space:pre;color:#404040;'> running three simple programs to check that the old 3.2.0+ bug is not
</span><span style='display:block; white-space:pre;color:#404040;'> present.
</span><span style='display:block; white-space:pre;color:#404040;'> One test fails on 10.5 i386 +universal, in a bizarre way that doesn't
</span><span style='display:block; white-space:pre;color:#404040;'> appear to be an issue with OpenSSL itself. The test framework fails
</span><span style='display:block; white-space:pre;color:#404040;'> on 10.6-10.8 due to apparent Perl issues. All other buildable cases
</span><span style='display:block; white-space:pre;color:#404040;'> pass all tests, albeit with some intermittent failures and/or hangs on
</span><span style='display:block; white-space:pre;color:#404040;'> 10.4-10.12 x86.
</span>---
devel/openssl3/Portfile | 41 ++++++++++++++----------------
devel/openssl3/files/patch-use-timegm.diff | 11 ++++++++
2 files changed, 30 insertions(+), 22 deletions(-)
<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 ff549d33baf..94bac345992 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;'>@@ -10,10 +10,10 @@ legacysupport.newest_darwin_requires_legacy 8
</span>
set major_v 3
name openssl$major_v
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# For rolling back to 3.1.4 release where needed. Must now stay.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# For former rollback to 3.1.x release where needed. Must now stay.
</span> epoch 1
version ${major_v}.3.1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 1
</span>
# Please revbump these ports when updating the openssl3 version/revision
# - freeradius (#43461)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,26 +53,23 @@ checksums rmd160 f7d3736a023dcf7d40db016182ca6d1de5a6fa69 \
</span> sha256 777cd596284c883375a2a7a11bf5d2786fc5413255efab20c50d6ffe6d020b7e \
size 18055752
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# 3.2.0 is currently broken for OS < 10.14, see #68766
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${os.platform} eq "darwin" && ${os.major} < 18} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- subport ${name}-devel {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts ${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {$subport eq $name} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts ${name}-devel
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- version ${major_v}.1.6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- distname openssl-${version}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 4f026a75f201f77cdfe1f5976d5a57883cce060f \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 5d2be4036b478ef3cb0a854ca9b353072c3a0e26d8a56f8f0ab9fb6ed32d38d7 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 15672690
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Use timegm() in crypto/asn1/a_time.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fixes build on 10.4, and is generally preferable, anyway
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Since v3.2.0, crypto/asin1/a_time.c has included timezone compensation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# which uses timegm() in some cases, or localtime() adjusted for the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# timezone in others. Since timegm() is considered nonstandard, it uses
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# it in an opt-in basis, which currently includes only FreeBSD and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# WebAssembly. On the Mac (at least) the 'timezone' variable which it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# otherwise relies on is a variable when __DARWIN_UNIX03 is set, and is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# a function when not, which is incompatible with this use. By
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# default, __DARWIN_UNIX03 is set on 10.5+ but not on 10.4, leading to a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# build failure on 10.4. Meanwhile, timegm() is available on all Mac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# versions, and is preferable when available. This fix adds __APPLE__ to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the conditions for using timegm(), thereby building successfully on all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# OS versions with slightly less code.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-use-timegm.diff
</span>
if {${os.platform} eq "darwin" && ${os.major} < 11} {
# Having the stdlib set to libc++ on 10.6 causes a dependency on a
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/openssl3/files/patch-use-timegm.diff b/devel/openssl3/files/patch-use-timegm.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..2b4897f6bd2
</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-use-timegm.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- crypto/asn1/a_time.c.orig 2024-06-04 05:53:04.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ crypto/asn1/a_time.c 2024-06-13 14:47:19.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -599,7 +599,7 @@ int ASN1_TIME_compare(const ASN1_TIME *a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define timezone _timezone
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__FreeBSD__) || defined(__wasi__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__FreeBSD__) || defined(__wasi__) || defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define USE_TIMEGM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>
</pre>