<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/061c6023c18b92e8c2291824210f7d703bdb6dc4">https://github.com/macports/macports-ports/commit/061c6023c18b92e8c2291824210f7d703bdb6dc4</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 061c6023c18b92e8c2291824210f7d703bdb6dc4
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Sun Sep 10 23:26:20 2023 +0200
<span style='display:block; white-space:pre;color:#404040;'> john-jumbo: fix build on arm64; add devel subport; claim maintainership
</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/42379
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/62859
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/67973
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/67974
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/67975
</span>---
sysutils/john/Portfile | 311 +++++++++++++++++++++++---------
sysutils/john/files/patch-apple-m1.diff | 137 ++++++++++++++
2 files changed, 367 insertions(+), 81 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/john/Portfile b/sysutils/john/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index b1d4327588e..198b66a3dbe 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/john/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/john/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,115 +1,264 @@
</span> # -*- 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 style='display:block; white-space:pre;background:#ffe0e0;'>-PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-name john
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts john-jumbo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version 1.9.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-categories sysutils security
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-maintainers nomaintainer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-license {GPL-2+ OpenSSLException}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name john
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories sysutils security
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@catap korins.ky:kirill} openmaintainer
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-description Featureful Unix password cracker
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description John the Ripper is a UNIX password cracker, currently available for \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- UNIX (tested with Linux x86, FreeBSD x86, Solaris 2.x SPARC, OSF/1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Alpha), DOS, WinNT/Win95.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage https://www.openwall.com/john/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms darwin
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites http://www.openwall.com/${name}/k/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://www.openwall.com/john/
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_xz yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 16114db2fe5004ce4044a2d56b46ef209b941dc4 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 0b266adcfef8c11eed690187e71494baea539efbd632fe221181063ba09508df \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 8944932
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles patch-src-params.h.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles patch-src-params.h.diff
</span>
post-patch {
reinplace "s|@PREFIX@|${prefix}|g" ${worksrcpath}/src/params.h
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_configure no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "john"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version 1.9.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 2
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_parallel_build no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # john is quite old and doesn't support arm64, but jumbo is different story
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ supported_archs i386 ppc ppc64 x86_64
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-build.dir ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-build.args CC=${configure.cc}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-build.target clean
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-switch ${configure.build_arch} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- i386 {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.target-append macosx-x86-sse2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- x86_64 {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # x86_64 is only supported on Leopard and up
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${os.major} >= 9} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.target-append macosx-x86-64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.build_arch i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ license {GPL-2+ OpenSSLException}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description Featureful Unix password cracker
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description John the Ripper is a UNIX password cracker, currently available for \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ UNIX (tested with Linux x86, FreeBSD x86, Solaris 2.x SPARC, OSF/1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Alpha), DOS, WinNT/Win95.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ master_sites https://www.openwall.com/john/k/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_xz yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 16114db2fe5004ce4044a2d56b46ef209b941dc4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 0b266adcfef8c11eed690187e71494baea539efbd632fe221181063ba09508df \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 8944932
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts john-jumbo john-jumbo-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_configure no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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;'>+ build.dir ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.args CC=${configure.cc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target clean
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ switch ${configure.build_arch} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ i386 {
</span> build.target-append macosx-x86-sse2
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ppc {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Use altivec if available
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![catch {sysctl hw.vectorunit} result] && $result == 1} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.target-append macosx-ppc32-altivec
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.target-append macosx-ppc32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ x86_64 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # x86_64 is only supported on Leopard and up
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} >= 9} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target-append macosx-x86-64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.build_arch i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target-append macosx-x86-sse2
</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;'>+ ppc {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Use altivec if available
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![catch {sysctl hw.vectorunit} result] && $result == 1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target-append macosx-ppc32-altivec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target-append macosx-ppc32
</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;'>+ ppc64 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target-append macosx-ppc64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.target-append unknown-arch
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ppc64 {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.target-append macosx-ppc64
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file copy ${worksrcpath}/run ${destroot}${prefix}/share/john
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- system "chmod -R a+rX ${destroot}${prefix}/share/john"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- system "ln -s ${prefix}/share/john/john ${destroot}${prefix}/bin/john"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${destroot}${prefix}/share/doc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file copy ${worksrcpath}/doc ${destroot}${prefix}/share/doc/john
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- system "chmod -R a+rX ${destroot}${prefix}/share/doc/john"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport john-jumbo {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version 1.9.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set jumbo_patchlvl 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ master_sites https://www.openwall.com/john/k/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distname ${name}-${version}-jumbo-${jumbo_patchlvl}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_xz yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 ea75c464d211691f00db7aec66e0503c1177866b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 f5d123f82983c53d8cc598e174394b074be7a77756f5fb5ed8515918c81e7f3b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 33638768
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts john john-jumbo-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-apple-m1.diff
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+subport john-jumbo-devel {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup github 1.0
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-subport john-jumbo {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts john
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- version 1.9.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set jumbo_patchlvl 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- license GPL-2 GPL-3+ Apache-2 Restrictive
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- master_sites https://www.openwall.com/john/k/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ github.setup openwall john c798c3f39215f6e08c67677eb9b79f65cfe08e40
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version 20230717
</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;'>+ checksums rmd160 8bbee5e154eece0e05185342cca4fc852275a198 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 f45971f2d5d34b6c37bf76ea83b697226ffb00c0c9d5c8e7dde54e12a9a46e75 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 56766799
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts john john-jumbo
</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;'>+if {${subport} in [list "john-jumbo" "john-jumbo-devel"]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup openssl 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description This is the community-enhanced, "jumbo" version of John the Ripper.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description {*}${description}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ license GPL-2 GPL-3+ Apache-2 Restrictive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:bzip2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:gmp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libpcap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:zlib
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # note: according to https://www.openwall.com/john/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # developement appears to have moved to github
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # https://github.com/magnumripper/JohnTheRipper
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set perl_version 5.34
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib-append path:lib/libssl.dylib:openssl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set ruby_branch 3.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set ruby_version [string map {. {}} ${ruby_branch}]
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- distname ${name}-${version}-jumbo-${jumbo_patchlvl}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # NOTE: not all scripts were migrated to python3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # See:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # - https://github.com/openwall/john/issues/4883
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # - https://github.com/openwall/john/pull/5309
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python2_branch 2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python3_branch 3.11
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 ea75c464d211691f00db7aec66e0503c1177866b \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 f5d123f82983c53d8cc598e174394b074be7a77756f5fb5ed8515918c81e7f3b \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 33638768
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python2_version [string map {. {}} ${python2_branch}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python3_version [string map {. {}} ${python3_branch}]
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- use_configure yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.dir ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:p${perl_version}-compress-raw-lzma \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:p${perl_version}-digest-md4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:p${perl_version}-net-radius \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:p${perl_version}-netpacket \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:p${perl_version}-data-plist \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:perl${perl_version} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python2_version}-asn1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python2_version}-plyvel \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python2_version}-pysap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-asn1crypto \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-bsddb3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-ldap3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-parsimonious \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-protobuf3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:python${python2_version} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:python${python3_version} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:ruby${ruby_version}
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # error We need minimum OpenCL 1.2 to build with OpenCL support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${subport} eq "john-jumbo"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:py${python2_version}-lxml \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python2_version}-pycryptodome \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python2_version}-scapy
</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;'>+ if {${subport} eq "john-jumbo-devel"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:py${python3_version}-asn1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-cbor2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-lxml \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-pycryptodome \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${python3_version}-scapy
</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;'>+ configure.dir ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # error We need minimum OpenCL 1.2 to build with OpenCL support.
</span> if {${os.platform} eq "darwin" && ${os.major} <= 11} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append --disable-opencl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --disable-opencl
</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;'>+ build.dir ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant native description {Enable CPU-specific optimizations} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-native-march
</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;'>+ variant experimental description {Enable new, experimental or even incomplete features} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-experimental-code
</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;'>+ variant threads description {Enable multithreaded support via OpenMP} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.openmp_version 3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libomp
</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;'>+ # libomp aren't available on PowerPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${build_arch} ni [list ppc ppc64]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +threads
</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;'>+ if {![variant_isset native]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes "\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This version is built based on a base architecture for convenience,\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ which may not be optimized for your system. To build a version\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ customized for your machine, use the +native variant"
</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;'>+ # pse2john.py depends on pysap which is python2 only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W ${destroot}${prefix}/share/john \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -locale C -E -q "1s|^#! ?/usr/bin/(env )?python|#!${prefix}/bin/python${python2_branch}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pse2john.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${subport} eq "john-jumbo"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W ${destroot}${prefix}/share/john \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -locale C -E -q "1s|^#! ?/usr/bin/(env )?python|#!${prefix}/bin/python${python2_branch}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DPAPImk2john.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aix2john.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ibmiscanner2john.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ keyring2john.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ kirbi2john.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pcap2john.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ps_token2john.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W ${destroot}${prefix}/share/john "chmod +x diskcryptor2john.py"
</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;'>+ if {${subport} eq "john-jumbo-devel"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W ${destroot}${prefix}/share/john "chmod +x bestcryptve2john.py coinomi2john.py"
</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;'>+ reinplace -locale C -E -q "1s|^#! ?/usr/bin/(env )?python2|#!${prefix}/bin/python${python2_branch}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {*}[glob ${destroot}${prefix}/share/john/*.py]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -locale C -E -q "1s|^#! ?/usr/bin/(env )?python3?|#!${prefix}/bin/python${python3_branch}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {*}[glob ${destroot}${prefix}/share/john/*.py]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -locale C -E -q "1s|^#! ?/usr/bin/(env )?perl|#!${prefix}/bin/perl${perl_version}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {*}[glob -directory ${destroot}${prefix}/share/john *.pl benchmark-unify relbench]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -locale C -E -q "1s|^#! ?/usr/bin/(env )?ruby|#!${prefix}/bin/ruby${ruby_branch}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {*}[glob ${destroot}${prefix}/share/john/*.rb]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/etc/bash_completion.d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ move ${destroot}${prefix}/share/john/john.bash_completion \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/etc/bash_completion.d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/zsh/site-functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ move ${destroot}${prefix}/share/john/john.zsh_completion \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/zsh/site-functions
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>- build.dir ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.target default
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.env-append CC=${configure.cc} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "CFLAGS=${configure.cflags} [get_canonical_archflags cc]" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "LDFLAGS=${configure.ldflags} [get_canonical_archflags ld]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/run ${destroot}${prefix}/share/john
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "chmod -R a+rX ${destroot}${prefix}/share/john"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "ln -s ${prefix}/share/john/john ${destroot}${prefix}/bin/john"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/doc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/doc ${destroot}${prefix}/share/doc/john
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "chmod -R a+rX ${destroot}${prefix}/share/doc/john"
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-notes "You'll find the john files under ${prefix}/share/john/"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+notes-append "You'll find the john files under ${prefix}/share/john/"
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.type regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex /${name}-(\[0-9.\]+)${extract.suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} in [list "john" "john-jumbo"]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.regex /${name}-(\[0-9.\]+)${extract.suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/john/files/patch-apple-m1.diff b/sysutils/john/files/patch-apple-m1.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..697aae240cf
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/john/files/patch-apple-m1.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,137 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/openwall/john/issues/4585
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/arm32le.h src/arm32le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9a8ff99956..a0c60c0d26 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/arm32le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/arm32le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27,7 +27,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_INT_GT_32 0
</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;'>+-#define ARCH_ALLOWS_UNALIGNED 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_ALLOWS_UNALIGNED __ARM_FEATURE_UNALIGNED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_INDEX(x) ((unsigned int)(unsigned char)(x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define CPU_DETECT 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/arm64le.h src/arm64le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a916cc0538..63b1ed932e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/arm64le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/arm64le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28,7 +28,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_INT_GT_32 0
</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;'>+-#define ARCH_ALLOWS_UNALIGNED 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_ALLOWS_UNALIGNED __ARM_FEATURE_UNALIGNED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_INDEX(x) ((unsigned int)(unsigned char)(x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define CPU_DETECT 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/configure src/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6b9a5088c4..796660f8d7 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9321,6 +9321,42 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $as_echo "no" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ conftest.$ac_objext conftest.beam conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CC="$CC_BACKUP -march=armv8-a+simd"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ASIMD" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo_n "checking for ASIMD... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test "$cross_compiling" = yes; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++as_fn_error $? "cannot run test program while cross compiling
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++See \`config.log' for more details" "$LINENO" 5; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* end confdefs.h. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ extern void exit(int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ int main(){uint32x4_t t;*((long*)&t)=1;t=veorq_u32(t,t);if((*(unsigned*)&t)==88)printf(".");exit(0);}
</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;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ac_fn_c_try_run "$LINENO"; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CPU_BEST_FLAGS="-march=armv8-a+simd"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SIMD_NAME="ASIMD"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "yes" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ARCH_LINK=arm64le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CPU_NOTFOUND="1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "no" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conftest.$ac_objext conftest.beam conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9329,6 +9365,7 @@ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for NEON" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $as_echo_n "checking for NEON... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CC="$CC_BACKUP -mfpu=neon"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* end confdefs.h. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9350,6 +9387,34 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $as_echo "no" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rm -f core conftest.err conftest.$ac_objext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ conftest$ac_exeext conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ASIMD" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo_n "checking for ASIMD... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CC="$CC_BACKUP -march=armv8-a+simd"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* end confdefs.h. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ extern void exit(int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ int main(){uint32x4_t t;*((long*)&t)=1;t=veorq_u32(t,t);if((*(unsigned*)&t)==88)printf(".");exit(0);}
</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;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ac_fn_c_try_link "$LINENO"; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CPU_BEST_FLAGS="-march=armv8-a+simd"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SIMD_NAME="ASIMD"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ARCH_LINK=arm64le.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "yes" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CPU_NOTFOUND="1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "no" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rm -f core conftest.err conftest.$ac_objext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conftest$ac_exeext conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/pseudo_intrinsics.h src/pseudo_intrinsics.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5fabbdbb81..450e2477b5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/pseudo_intrinsics.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/pseudo_intrinsics.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -66,10 +66,10 @@ typedef union {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define VLOADU_EMULATED 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define vor(x, y) (vtype)vorrq_u32((x).v32, (y).v32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define vorn(x, y) (vtype)vornq_u32((x).v32, (y).v32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define vroti_epi32(x, i) (i > 0 ? (vtype)vsliq_n_u32(vshrq_n_u32((x).v32, 32 - (i)), (x).v32, i) : \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- (vtype)vsriq_n_u32(vshlq_n_u32((x).v32, 32 + (i)), (x).v32, -(i)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define vroti_epi64(x, i) (i > 0 ? (vtype)vsliq_n_u64(vshrq_n_u64((x).v64, 64 - (i)), (x).v64, i) : \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- (vtype)vsriq_n_u64(vshlq_n_u64((x).v64, 64 + (i)), (x).v64, -(i)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define vroti_epi32(x, i) (i > 0 ? (vtype)vsliq_n_u32(vshrq_n_u32((x).v32, 32 - ((i) & 31)), (x).v32, (i) & 31) : \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (vtype)vsriq_n_u32(vshlq_n_u32((x).v32, (32 + (i)) & 31), (x).v32, (-(i)) & 31))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define vroti_epi64(x, i) (i > 0 ? (vtype)vsliq_n_u64(vshrq_n_u64((x).v64, 64 - ((i) & 63)), (x).v64, (i) & 63) : \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (vtype)vsriq_n_u64(vshlq_n_u64((x).v64, (64 + (i)) & 63), (x).v64, (-(i)) & 63))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define vroti16_epi32 vroti_epi32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define vset1_epi32(i) (vtype)vdupq_n_u32(i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define vset1_epi64(i) (vtype)vdupq_n_u64(i)
</span></pre><pre style='margin:0'>
</pre>