| 1 | 
   | 
    
    # Copyright 1999-2023 Gentoo Authors 
   | 
  
   | 
  1 | 
    
    # Copyright 1999-2025 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 | 
    
    inherit eapi9-ver flag-o-matic toolchain-funcs 
   | 
  
  | 7 | 
  7 | 
    
    
   | 
  
  | 8 | 
  8 | 
    
    MY_PN="john" 
   | 
  
  | 9 | 
  9 | 
    
    MY_P="${MY_PN}-${PV}"
   | 
  
| ... | ... |  | 
  | 11 | 
  11 | 
    
    DESCRIPTION="fast password cracker" 
   | 
  
  | 12 | 
  12 | 
    
    HOMEPAGE="https://www.openwall.com/john/" 
   | 
  
  | 13 | 
  13 | 
    
    
   | 
  
  | 14 | 
   | 
    
    SRC_URI="https://www.openwall.com/john/j/${MY_P}.tar.xz"
   | 
  
   | 
  14 | 
    
    SRC_URI="https://www.openwall.com/john/k/${MY_P}.tar.xz"
   | 
  
  | 15 | 
  15 | 
    
    
   | 
  
  | 16 | 
  16 | 
    
    LICENSE="GPL-2" 
   | 
  
  | 17 | 
  17 | 
    
    SLOT="0" 
   | 
  
  | 18 | 
  18 | 
    
    KEYWORDS="~alpha amd64 arm ~hppa ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" 
   | 
  
  | 19 | 
   | 
    
    CPU_FLAGS="cpu_flags_x86_mmx cpu_flags_x86_sse2 cpu_flags_x86_avx cpu_flags_x86_xop" 
   | 
  
   | 
  19 | 
    
    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 | 
  20 | 
    
    IUSE="custom-cflags openmp ${CPU_FLAGS}"
   | 
  
  | 21 | 
  21 | 
    
    
   | 
  
  | 22 | 
   | 
    
    DEPEND="sys-libs/zlib 
   | 
  
  | 23 | 
   | 
    
    	virtual/libcrypt:=" 
   | 
  
   | 
  22 | 
    
    DEPEND="virtual/libcrypt:=" 
   | 
  
  | 24 | 
  23 | 
    
    RDEPEND="${DEPEND}
   | 
  
  | 25 | 
  24 | 
    
    	!app-crypt/johntheripper-jumbo" 
   | 
  
  | 26 | 
  25 | 
    
    
   | 
  
| ... | ... |  | 
  | 30 | 
  29 | 
    
    	if use alpha; then 
   | 
  
  | 31 | 
  30 | 
    
    		echo "linux-alpha" 
   | 
  
  | 32 | 
  31 | 
    
    	elif use amd64; then 
   | 
  
  | 33 | 
   | 
    
    		if use cpu_flags_x86_xop; then 
   | 
  
   | 
  32 | 
    
    		if use cpu_flags_x86_avx512f; then 
   | 
  
   | 
  33 | 
    
    			echo "linux-x86-64-avx512" 
   | 
  
   | 
  34 | 
    
    		elif use cpu_flags_x86_avx2; then 
   | 
  
   | 
  35 | 
    
    			echo "linux-x86-64-avx2" 
   | 
  
   | 
  36 | 
    
    		elif use cpu_flags_x86_xop; then 
   | 
  
  | 34 | 
  37 | 
    
    			echo "linux-x86-64-xop" 
   | 
  
  | 35 | 
  38 | 
    
    		elif use cpu_flags_x86_avx; then 
   | 
  
  | 36 | 
  39 | 
    
    			echo "linux-x86-64-avx" 
   | 
  
| ... | ... |  | 
  | 44 | 
  47 | 
    
    	elif use sparc; then 
   | 
  
  | 45 | 
  48 | 
    
    		echo "linux-sparc" 
   | 
  
  | 46 | 
  49 | 
    
    	elif use x86; then 
   | 
  
  | 47 | 
   | 
    
    		if use cpu_flags_x86_xop; then 
   | 
  
   | 
  50 | 
    
    		if use cpu_flags_x86_avx512f; then 
   | 
  
   | 
  51 | 
    
    			echo "linux-x86-64-avx512" 
   | 
  
   | 
  52 | 
    
    		elif use cpu_flags_x86_avx2; then 
   | 
  
   | 
  53 | 
    
    			echo "linux-x86-64-avx2" 
   | 
  
   | 
  54 | 
    
    		elif use cpu_flags_x86_xop; then 
   | 
  
  | 48 | 
  55 | 
    
    			echo "linux-x86-xop" 
   | 
  
  | 49 | 
  56 | 
    
    		elif use cpu_flags_x86_avx; then 
   | 
  
  | 50 | 
  57 | 
    
    			echo "linux-x86-avx" 
   | 
  
| ... | ... |  | 
  | 124 | 
  131 | 
    
    } 
   | 
  
  | 125 | 
  132 | 
    
    
   | 
  
  | 126 | 
  133 | 
    
    pkg_postinst() {
   | 
  
  | 127 | 
   | 
    
    	if [ -n "${REPLACING_VERSIONS}" ] && [ "${REPLACING_VERSIONS}" != "1.8.0" ]; then
   | 
  
   | 
  134 | 
    
    	if ver_replacing -lt 1.8.0; then 
   | 
  
  | 128 | 
  135 | 
    
    		ewarn "This package no longer includes jumbo.  If you want jumbo please install app-crypt/johntheripper-jumbo instead." 
   | 
  
  | 129 | 
  136 | 
    
    	fi 
   | 
  
  | 130 | 
  137 | 
    
    } 
   |