| 1 |
|
# Copyright 1999-2025 Gentoo Authors
|
|
1 |
# Copyright 1999-2026 Gentoo Authors
|
| 2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
|
inherit cuda flag-o-matic toolchain-funcs
|
|
6 |
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openwall.asc
|
|
7 |
inherit eapi9-ver flag-o-matic toolchain-funcs verify-sig
|
| 7 |
8 |
|
| 8 |
9 |
MY_PN="john"
|
| 9 |
10 |
MY_P="${MY_PN}-${PV}"
|
| 10 |
11 |
|
| 11 |
12 |
DESCRIPTION="fast password cracker"
|
| 12 |
13 |
HOMEPAGE="https://www.openwall.com/john/"
|
| 13 |
|
|
| 14 |
|
SRC_URI="https://www.openwall.com/john/j/${MY_P}.tar.xz"
|
|
14 |
SRC_URI="
|
|
15 |
https://www.openwall.com/john/k/${MY_P}.tar.xz
|
|
16 |
verify-sig? ( https://www.openwall.com/john/k/${MY_P}.tar.xz.sign -> ${MY_P}.tar.xz.sig )
|
|
17 |
"
|
|
18 |
S="${WORKDIR}/${MY_P}"
|
| 15 |
19 |
|
| 16 |
20 |
LICENSE="GPL-2"
|
| 17 |
21 |
SLOT="0"
|
| 18 |
22 |
KEYWORDS="~alpha amd64 arm ~hppa ~mips ppc ppc64 ~sparc x86"
|
| 19 |
|
CPU_FLAGS="cpu_flags_x86_mmx cpu_flags_x86_sse2 cpu_flags_x86_avx cpu_flags_x86_xop"
|
|
23 |
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"
|
| 20 |
24 |
IUSE="custom-cflags openmp ${CPU_FLAGS}"
|
| 21 |
25 |
|
| 22 |
|
DEPEND="virtual/zlib:=
|
| 23 |
|
virtual/libcrypt:="
|
| 24 |
|
RDEPEND="${DEPEND}
|
| 25 |
|
!app-crypt/johntheripper-jumbo"
|
| 26 |
|
|
| 27 |
|
S="${WORKDIR}/${MY_P}"
|
|
26 |
DEPEND="virtual/libcrypt:="
|
|
27 |
RDEPEND="
|
|
28 |
${DEPEND}
|
|
29 |
!app-crypt/johntheripper-jumbo
|
|
30 |
"
|
|
31 |
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-openwall )"
|
| 28 |
32 |
|
| 29 |
33 |
get_target() {
|
| 30 |
34 |
if use alpha; then
|
| 31 |
35 |
echo "linux-alpha"
|
| 32 |
36 |
elif use amd64; then
|
| 33 |
|
if use cpu_flags_x86_xop; then
|
|
37 |
if use cpu_flags_x86_avx512f; then
|
|
38 |
echo "linux-x86-64-avx512"
|
|
39 |
elif use cpu_flags_x86_avx2; then
|
|
40 |
echo "linux-x86-64-avx2"
|
|
41 |
elif use cpu_flags_x86_xop; then
|
| 34 |
42 |
echo "linux-x86-64-xop"
|
| 35 |
43 |
elif use cpu_flags_x86_avx; then
|
| 36 |
44 |
echo "linux-x86-64-avx"
|
| ... | ... | |
| 44 |
52 |
elif use sparc; then
|
| 45 |
53 |
echo "linux-sparc"
|
| 46 |
54 |
elif use x86; then
|
| 47 |
|
if use cpu_flags_x86_xop; then
|
|
55 |
if use cpu_flags_x86_avx512f; then
|
|
56 |
echo "linux-x86-64-avx512"
|
|
57 |
elif use cpu_flags_x86_avx2; then
|
|
58 |
echo "linux-x86-64-avx2"
|
|
59 |
elif use cpu_flags_x86_xop; then
|
| 48 |
60 |
echo "linux-x86-xop"
|
| 49 |
61 |
elif use cpu_flags_x86_avx; then
|
| 50 |
62 |
echo "linux-x86-avx"
|
| ... | ... | |
| 70 |
82 |
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
| 71 |
83 |
}
|
| 72 |
84 |
|
| 73 |
|
src_prepare() {
|
| 74 |
|
default
|
| 75 |
|
}
|
| 76 |
|
|
| 77 |
85 |
src_compile() {
|
| 78 |
86 |
local OMP
|
| 79 |
87 |
|
| ... | ... | |
| 122 |
130 |
}
|
| 123 |
131 |
|
| 124 |
132 |
pkg_postinst() {
|
| 125 |
|
if [ -n "${REPLACING_VERSIONS}" ] && [ "${REPLACING_VERSIONS}" != "1.8.0" ]; then
|
|
133 |
if ver_replacing -lt 1.8.0; then
|
| 126 |
134 |
ewarn "This package no longer includes jumbo. If you want jumbo please install app-crypt/johntheripper-jumbo instead."
|
| 127 |
135 |
fi
|
| 128 |
136 |
}
|