diff options
Diffstat (limited to 'app-crypt/johntheripper')
-rw-r--r-- | app-crypt/johntheripper/Manifest | 1 | ||||
-rw-r--r-- | app-crypt/johntheripper/johntheripper-1.8.0-r2.ebuild (renamed from app-crypt/johntheripper/johntheripper-1.8.0-r1.ebuild) | 30 | ||||
-rw-r--r-- | app-crypt/johntheripper/johntheripper-1.9.0.ebuild | 137 | ||||
-rw-r--r-- | app-crypt/johntheripper/metadata.xml | 2 |
4 files changed, 149 insertions, 21 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.8.0-r1.ebuild b/app-crypt/johntheripper/johntheripper-1.8.0-r2.ebuild index 48bf0ae95f66..c9ec0d145876 100644 --- a/app-crypt/johntheripper/johntheripper-1.8.0-r1.ebuild +++ b/app-crypt/johntheripper/johntheripper-1.8.0-r2.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 inherit cuda flag-o-matic toolchain-funcs @@ -19,9 +19,9 @@ KEYWORDS="~alpha amd64 arm ~hppa ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-lin CPU_FLAGS="cpu_flags_x86_mmx cpu_flags_x86_sse2 cpu_flags_x86_avx cpu_flags_x86_xop" IUSE="custom-cflags openmp ${CPU_FLAGS}" -RDEPEND="sys-libs/zlib +DEPEND="sys-libs/zlib virtual/libcrypt:=" -DEPEND="${RDEPEND} +RDEPEND="${DEPEND} !app-crypt/johntheripper-jumbo" S="${WORKDIR}/${MY_P}" @@ -59,27 +59,17 @@ get_target() { echo "macosx-ppc32-altivec" elif use x64-macos; then echo "macosx-x86-64" - elif use x86-solaris; then - echo "solaris-x86-any" - elif use x86-fbsd; then - if use cpu_flags_x86_sse2; then - echo "freebsd-x86-sse2" - elif use cpu_flags_x86_mmx; then - echo "freebsd-x86-mmx" - else - echo "freebsd-x86-any" - fi - elif use amd64-fbsd; then - echo "freebsd-x86-64" else echo "generic" fi } +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + pkg_setup() { - if use openmp && [[ ${MERGE_TYPE} != binary ]]; then - tc-has-openmp || die "Please switch to an openmp compatible compiler" - fi + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp } src_prepare() { @@ -112,7 +102,7 @@ EOF } src_test() { - make -C src/ check + emake -C src/ check } src_install() { 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..fabbd858c1cf --- /dev/null +++ b/app-crypt/johntheripper/johntheripper-1.9.0.ebuild @@ -0,0 +1,137 @@ +# 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_avx2 cpu_flags_x86_avx512f 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_avx512f; then + echo "linux-x86-64-avx512" + elif use cpu_flags_x86_avx2; then + echo "linux-x86-64-avx2" + elif 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_avx512f; then + echo "linux-x86-64-avx512" + elif use cpu_flags_x86_avx2; then + echo "linux-x86-64-avx2" + elif 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 +} diff --git a/app-crypt/johntheripper/metadata.xml b/app-crypt/johntheripper/metadata.xml index d15bc1c7ab36..c3a54112df3f 100644 --- a/app-crypt/johntheripper/metadata.xml +++ b/app-crypt/johntheripper/metadata.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="person"> <email>zerochaos@gentoo.org</email> |