commit:     ea67777340b877aa4ec6095bb4cda2fe397349dc
Author:     Rick Farina <zerochaos <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 21 20:42:17 2023 +0000
Commit:     Rick Farina <zerochaos <AT> gentoo <DOT> org>
CommitDate: Mon Aug 21 20:55:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea677773

app-crypt/johntheripper: add 1.9.0

Signed-off-by: Rick Farina <zerochaos <AT> gentoo.org>

 app-crypt/johntheripper/Manifest                   |   1 +
 app-crypt/johntheripper/johntheripper-1.9.0.ebuild | 129 +++++++++++++++++++++
 2 files changed, 130 insertions(+)

diff --git a/app-crypt/johntheripper/Manifest b/app-crypt/johntheripper/Manifest
index b522016fa042..682d048011a4 100644
--- a/app-crypt/johntheripper/Manifest
+++ b/app-crypt/johntheripper/Manifest
@@ -1 +1,2 @@
 DIST john-1.8.0.tar.xz 4468704 BLAKE2B 
90d6acc03dc8d22ef869320723e4799e64e15b621cde327ad420595889a43242b182079fd306bb7741b766ddc5e1239e3bdd4f4e396a4ab1e86d635cbebf8f60
 SHA512 
e2820ecabd7ea4c7404c3d40f064994d0f5746b093c859a58fbf2588492ebcef411d9f3088c8e8ee726284ead969e26fdae834cdae3eb2d32408fc79ed906543
+DIST john-1.9.0.tar.xz 8944932 BLAKE2B 
57f5b83a541a7048e34d87dbee2f8f56953ef8a98bf7163b981064289d38452d11e59f1fb48a98a4f5f61d5f33866987f7c8515bf9900d742c09b7ac3e61376e
 SHA512 
26e9a245e9f050344ae8c3320e1e24dad6bc2b73e99cc041a50c2d124b2c898c93d048727451ab8a2ba1c8aa4d8d462a8c0c9fea7de39f3479a0c170a5e9ad60

diff --git a/app-crypt/johntheripper/johntheripper-1.9.0.ebuild 
b/app-crypt/johntheripper/johntheripper-1.9.0.ebuild
new file mode 100644
index 000000000000..d7bd1317da50
--- /dev/null
+++ b/app-crypt/johntheripper/johntheripper-1.9.0.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+MY_PN="john"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="fast password cracker"
+HOMEPAGE="https://www.openwall.com/john/";
+
+SRC_URI="https://www.openwall.com/john/k/${MY_P}.tar.xz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~mips ppc ppc64 sparc x86 ~amd64-linux 
~x86-linux ~ppc-macos"
+CPU_FLAGS="cpu_flags_x86_mmx cpu_flags_x86_sse2 cpu_flags_x86_avx 
cpu_flags_x86_xop"
+IUSE="custom-cflags openmp ${CPU_FLAGS}"
+
+DEPEND="virtual/libcrypt:="
+RDEPEND="${DEPEND}
+       !app-crypt/johntheripper-jumbo"
+
+S="${WORKDIR}/${MY_P}"
+
+get_target() {
+       if use alpha; then
+               echo "linux-alpha"
+       elif use amd64; then
+               if use cpu_flags_x86_xop; then
+                       echo "linux-x86-64-xop"
+               elif use cpu_flags_x86_avx; then
+                       echo "linux-x86-64-avx"
+               else
+                       echo "linux-x86-64"
+               fi
+       elif use ppc; then
+               echo "linux-ppc32"
+       elif use ppc64; then
+               echo "linux-ppc64"
+       elif use sparc; then
+               echo "linux-sparc"
+       elif use x86; then
+               if use cpu_flags_x86_xop; then
+                       echo "linux-x86-xop"
+               elif use cpu_flags_x86_avx; then
+                       echo "linux-x86-avx"
+               elif use cpu_flags_x86_sse2; then
+                       echo "linux-x86-sse2"
+               elif use cpu_flags_x86_mmx; then
+                       echo "linux-x86-mmx"
+               else
+                       echo "linux-x86-any"
+               fi
+       elif use ppc-macos; then
+               echo "macosx-ppc32-altivec"
+       elif use x64-macos; then
+               echo "macosx-x86-64"
+       else
+               echo "generic"
+       fi
+}
+
+pkg_pretend() {
+       [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+       [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+       default
+}
+
+src_compile() {
+       local OMP
+
+       use custom-cflags || strip-flags
+       cat <<- EOF >> config.gentoo || die
+       #define JOHN_SYSTEMWIDE 1
+       #define JOHN_SYSTEMWIDE_HOME "${EPREFIX}/etc/john"
+       #define JOHN_SYSTEMWIDE_EXEC "${EPREFIX}/usr/libexec/john"
+EOF
+
+       append-flags -fPIC -fPIE
+       #gcc-specs-pie && append-ldflags -nopie
+       use openmp && OMP="-fopenmp"
+
+       CPP="$(tc-getCXX)" CC="$(tc-getCC)" AS="$(tc-getCC)" LD="$(tc-getCC)"
+
+       emake -C src/ \
+               CPP="${CPP}" CC="${CC}" AS="${AS}" LD="${LD}" \
+               CFLAGS="-c -Wall -include ../config.gentoo ${CFLAGS} ${OMP}" \
+               LDFLAGS="${LDFLAGS} ${OMP}" \
+               OPT_NORMAL="" \
+               OMPFLAGS="${OMP}" \
+               $(get_target)
+}
+
+src_test() {
+       emake -C src/ check
+}
+
+src_install() {
+       # executables
+       dosbin run/john
+       newsbin run/mailer john-mailer
+
+       dosym john /usr/sbin/unafs
+       dosym john /usr/sbin/unique
+       dosym john /usr/sbin/unshadow
+
+       # config files
+       insinto /etc/john
+       doins run/*.chr run/password.lst
+       doins run/*.conf
+
+       # documentation
+       dodoc doc/*
+}
+
+pkg_postinst() {
+       if [ -n "${REPLACING_VERSIONS}" ] && [ "${REPLACING_VERSIONS}" != 
"1.8.0" ]; then
+               ewarn "This package no longer includes jumbo.  If you want 
jumbo please install app-crypt/johntheripper-jumbo instead."
+       fi
+}

Reply via email to