summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRick Farina <zerochaos@gentoo.org>2023-08-21 16:42:17 -0400
committerRick Farina <zerochaos@gentoo.org>2023-08-21 16:55:53 -0400
commitea67777340b877aa4ec6095bb4cda2fe397349dc (patch)
treeb8302dd3205a34e888fd6c5d837e47ad3913bcc1
parentmedia-libs/gd: backport GD_BICUBIC fix, update EAPI 7 -> 8 (diff)
downloadgentoo-ea67777340b877aa4ec6095bb4cda2fe397349dc.tar.gz
gentoo-ea67777340b877aa4ec6095bb4cda2fe397349dc.tar.bz2
gentoo-ea67777340b877aa4ec6095bb4cda2fe397349dc.zip
app-crypt/johntheripper: add 1.9.0
Signed-off-by: Rick Farina <zerochaos@gentoo.org>
-rw-r--r--app-crypt/johntheripper/Manifest1
-rw-r--r--app-crypt/johntheripper/johntheripper-1.9.0.ebuild129
2 files changed, 130 insertions, 0 deletions
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
+}