<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/e35e40efba71404401f3c47e7bad44b2e5dcd0e5">https://github.com/macports/macports-ports/commit/e35e40efba71404401f3c47e7bad44b2e5dcd0e5</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit e35e40efba71404401f3c47e7bad44b2e5dcd0e5
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Thu Oct 7 16:50:20 2021 +0100
<span style='display:block; white-space:pre;color:#404040;'> openssl3: New port for openssl 3.x.x (curerntly 3.0.0)
</span>---
devel/openssl3/Portfile | 158 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 158 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/openssl3/Portfile b/devel/openssl3/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e7d45a4a682
</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/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,158 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup muniversal 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set major_v 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name openssl$major_v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version ${major_v}.0.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Please revbump these ports when updating OpenSSL.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# - freeradius (#43461)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# - openssh (#54990)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories devel security
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license Apache-2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {larryv @larryv} {cal @neverpanic} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description OpenSSL SSL/TLS cryptography library
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description The OpenSSL Project is a collaborative effort to \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ develop a robust, commercial-grade, full-featured, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ and Open Source toolkit implementing the Secure \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Sockets Layer (SSL v2/v3) and Transport Layer \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Security (TLS v1) protocols as well as \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ a full-strength general purpose cryptography \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ library.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://www.openssl.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname openssl-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# See https://www.openssl.org/source/mirror.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites ${homepage}/source \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ftp://gd.tuwien.ac.at/infosys/security/openssl/source/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ http://mirror.switch.ch/ftp/mirror/openssl/source/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ftp://ftp.fi.muni.cz/pub/openssl/source/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ http://artfiles.org/openssl.org/source/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ftp://ftp.linux.hr/pub/openssl/source/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ftp://guest.kuria.katowice.pl/pub/openssl/source/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 a31de80cc0ab6b37bc92fa6e0c16fb94e95a599e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 59eedfcb46c25214c9bd37ed6078297b4df01d012267fe9e9eee31f61bc70536 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 14978663
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Having the stdlib set to libc++ on 10.6 causes a dependency on a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # macports-clang compiler to be added, which would be a dep cycle.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.cxx_stdlib
</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;'>+# https://github.com/openssl/openssl/commit/96ac8f13f4d0ee96baf5724d9f96c44c34b8606c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/openssl/openssl/commit/2f3b120401533db82e99ed28de5fc8aab1b76b33
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Patches updated to fix 10.4 build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# To be seen if needed with 3.0.0, and if dodes needs updating.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#patchfiles-append patch-pre-Sierra.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_name openssl-${major_v}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_prefix ${prefix}/libexec/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.ccache no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.perl /usr/bin/perl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cmd ./Configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.pre_args --prefix=${my_prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args -L${prefix}/lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --openssldir=${my_prefix}/etc/openssl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ shared \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Use SDK if necessary.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${configure.sdkroot} ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append '-isysroot ${configure.sdkroot}' \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -Wl,-syslibroot,${configure.sdkroot}
</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;'>+set merger_arch_compiler no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+array set merger_configure_args {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ppc darwin-ppc-cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ i386 darwin-i386-cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ppc64 darwin64-ppc-cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ x86_64 darwin64-x86_64-cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arm64 darwin64-arm64-cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Don't use i386 assembly on Tiger (#38015, #43303).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} <= 8} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append merger_configure_args(i386) { no-asm}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/58992
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append no-async
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Don't use x86-64 assembly on Tiger or Leopard.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} <= 9} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append merger_configure_args(x86_64) { no-asm}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # OpenSSL requires Perl 5.10.0, while Leopard ships Perl 5.8.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:perl5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.perl ${prefix}/bin/perl5
</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;'>+# Don't pass --host to configure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+array set merger_host {ppc {} i386 {} ppc64 {} x86_64 {} arm64 {}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![info exists universal_possible]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {(!${universal_possible} || ![variant_isset universal])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ && [info exists merger_configure_args(${configure.build_arch})]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append $merger_configure_args(${configure.build_arch})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.universal_args-delete --disable-dependency-tracking
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Parallel builds don't quite work (#46719).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_parallel_build no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_exists universal] && [variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global merger_dont_diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[llength ${universal_archs_to_use}] > 2} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend merger_dont_diff ${prefix}/include/openssl/opensslconf.h
</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;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Create some links to main prefix
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/include/${my_name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/lib/${my_name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${my_prefix}/include/openssl ${destroot}/${prefix}/include/${my_name}/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach l [glob -tails -directory ${destroot}${my_prefix}/lib *] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${my_prefix}/lib/${l} ${destroot}/${prefix}/lib/${my_name}/${l}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach b [glob -tails -directory ${destroot}${my_prefix}/bin *] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${my_prefix}/bin/${b} ${destroot}/${prefix}/bin/${b}-${major_v}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # shared/man dir seems to still end up in ${prefix} and not libexec...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ move ${destroot}${prefix}/share/man ${destroot}/${my_prefix}/share/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # base only compresses man file automatically if under ${prefix}/share/man
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # so do by hand here...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set gzip [findBinary gzip ${portutil::autoconf::gzip_path}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fs-traverse manpage ${destroot}${my_prefix}/share/man {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { [file isfile ${manpage}] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "${gzip} -9vf ${manpage}"
</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;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.args MANDIR=${prefix}/share/man MANSUFFIX=ssl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant rfc3779 description {enable RFC 3779: X.509 Extensions for IP Addresses and AS Identifiers} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append enable-rfc3779
</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;'>+livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url [lindex ${master_sites} 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex openssl-(\[0-9.\]+\[a-z\]?)\\.tar\\.gz
</span></pre><pre style='margin:0'>
</pre>