Portage is a package management system used by Gentoo Linux
# ChangeLog for app-crypt/johntheripper
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/app-crypt/johntheripper/ChangeLog,v 1.85 2008/06/16 19:48:53 jer Exp $
16 Jun 2008; Jeroen Roovers
johntheripper-1.7.2-r5.ebuild:
Marked ~hppa again (bug #227631).
*johntheripper-1.7.2-r5 (16 Jun 2008)
16 Jun 2008; Robin H. Johnson
+johntheripper-1.7.2-r5.ebuild:
Re-add the MPI support. Tested with OpenMPI+Torque running 8 instances
between a ppc (G5) and an amd64 box. ~hppa and ~mips dropped per bug #227631.
13 Feb 2008; Alon Bar-Lev
Cleanup
*johntheripper-1.7.2-r4 (11 Jan 2008)
11 Jan 2008; Alon Bar-Lev
+johntheripper-1.7.2-r4.ebuild:
Cleanups, bug#202306, thanks to Alex Barker
06 Jan 2008; Alon Bar-Lev
-johntheripper-1.7.2-r2.ebuild:
Cleanup
04 Jan 2008; Richard Freeman
johntheripper-1.7.2-r3.ebuild:
amd64 stable - bug 202306
02 Jan 2008; Jeroen Roovers
johntheripper-1.7.2-r3.ebuild:
Stable for HPPA (bug #202306).
31 Dec 2007; Raúl Porcel
johntheripper-1.7.2-r3.ebuild:
alpha/sparc stable wrt #202306
30 Dec 2007; Markus Meier
johntheripper-1.7.2-r3.ebuild:
x86 stable, bug #202306
29 Dec 2007; Brent Baude
johntheripper-1.7.2-r3.ebuild:
Marking johntheripper-1.7.2-r3 ppc64 for bug 202306
29 Dec 2007; nixnut
Stable on ppc wrt bug 202306
*johntheripper-1.7.2-r3 (14 Dec 2007)
14 Dec 2007; Alon Bar-Lev
+johntheripper-1.7.2-r3.ebuild:
Fix hardened issues, bug #167731
16 Nov 2007; Raúl Porcel
johntheripper-1.7.2-r2.ebuild:
alpha stable wrt #198659
13 Nov 2007; Alon Bar-Lev
-files/johntheripper-1.7.2-funroll-loops.patch,
johntheripper-1.7.2-r2.ebuild:
Remove funroll-loops patch, do this using argument to make
13 Nov 2007; Jeroen Roovers
+files/johntheripper-1.7.2-funroll-loops.patch,
johntheripper-1.7.2-r2.ebuild:
Stable for HPPA (bug #198659). Add (trivial) funroll-loops removal patch.
11 Nov 2007; Samuli Suominen
johntheripper-1.7.2-r2.ebuild:
amd64 stable wrt #198659
11 Nov 2007; Dawid Węgliński
johntheripper-1.7.2-r2.ebuild:
Finally stable on x86 (bug #198659)
11 Nov 2007; Alon Bar-Lev
johntheripper-1.7.2-r2.ebuild:
Reapply sandbox patch, can reproduce this
11 Nov 2007; Alon Bar-Lev
johntheripper-1.7.2-r2.ebuild:
Remove the mkdir hack for now
10 Nov 2007; Ferris McCormick
johntheripper-1.7.2-r2.ebuild:
Sparc stable, bug #198659.
10 Nov 2007; Markus Rothe
johntheripper-1.7.2-r2.ebuild:
Stable on ppc64; bug #198659
10 Nov 2007; Alon Bar-Lev
+files/johntheripper-1.7.2-mkdir-sandbox.patch,
johntheripper-1.7.2-r2.ebuild:
Fix access denied for sandbox, bug#198659
10 Nov 2007; Dawid Węgliński
johntheripper-1.7.2-r2.ebuild:
Reverting back to ~x86
10 Nov 2007; Dawid Węgliński
johntheripper-1.7.2-r2.ebuild:
Stable on x86 (bug #198659)
10 Nov 2007; nixnut
Stable on ppc wrt bug 198659
04 Nov 2007; Christian Heim
Removing myself as the maintainer.
*johntheripper-1.7.2-r2 (01 Aug 2007)
01 Aug 2007; Alon Bar-Lev
-johntheripper-1.7.2-r1.ebuild, +johntheripper-1.7.2-r2.ebuild:
Place lists at correct location, bug#187320, thanks to Paul Taylor
20 Jul 2007; Alon Bar-Lev
johntheripper-1.7.2-r1.ebuild:
Strip flags, as upstream requested
19 Jul 2007; Alon Bar-Lev
johntheripper-1.7.2-r1.ebuild:
ebuild cleanups, I think this is better shape
19 Jul 2007; Alon Bar-Lev
-files/johntheripper-1.7.0.2-stackdef.S, -files/clk_tck.patch,
-files/john-ntlm.skey.patch, -johntheripper-1.6.ebuild,
-johntheripper-1.6-r3.ebuild, -johntheripper-1.6.40.ebuild,
-johntheripper-1.7.0.2.ebuild:
Cleanup
*johntheripper-1.7.2-r1 (19 Jul 2007)
19 Jul 2007; Alon Bar-Lev
+files/johntheripper-1.7.2-stackdef-2.S.patch, johntheripper-1.7.2.ebuild,
+johntheripper-1.7.2-r1.ebuild:
Patch update, bug#185646, sse2 support, bug#185645, thanks to Erwin Paternotte
04 Apr 2007; Christian Heim
johntheripper-1.6.40.ebuild, johntheripper-1.7.0.2.ebuild:
Fixing ebuild.badheader.
04 Apr 2007; Christian Heim
johntheripper-1.7.2.ebuild:
Relaxing PaX/MPROTECT on the executable, as it's failing on hardened.
20 Feb 2007; Christian Heim
johntheripper-1.7.2.ebuild:
Fixing linking for amd64, thanks to Tony in #167731.
30 Dec 2006; Fabian Groffen
johntheripper-1.6.40.ebuild, johntheripper-1.7.0.2.ebuild,
johntheripper-1.7.2.ebuild:
Dropped ppc-macos keyword, see you in prefix
04 Dec 2006; Alexander H. Færøy
johntheripper-1.7.2.ebuild:
Stable on MIPS.
19 Oct 2006; Bryan Østergaard
johntheripper-1.7.2.ebuild:
Stable on Alpha.
16 Oct 2006; Simon Stelling
fix the use mmx && amd64 case
15 Oct 2006; Tobias Scherbaum
johntheripper-1.7.2.ebuild:
hppa stable
29 Sep 2006; Markus Rothe
Stable on ppc64
27 Sep 2006; Jason Wever
Stable on SPARC.
27 Sep 2006; Simon Stelling
stable on amd64
20 Sep 2006; Joshua Jackson
johntheripper-1.7.2.ebuild:
stable x86 bug #147027
16 Sep 2006; Tobias Scherbaum
johntheripper-1.7.2.ebuild:
ppc stable
*johntheripper-1.7.2 (04 Aug 2006)
04 Aug 2006; Christian Heim
+files/johntheripper-1.7.2-params.h.patch,
+files/johntheripper-1.7.2-sha1-memset.patch,
+files/johntheripper-1.7.2-stackdef.S.patch,
+files/johntheripper-1.7.2-stripping.patch, metadata.xml,
+johntheripper-1.7.2.ebuild:
Taking maintainership. Version bump. Fixing #132844 (thanks Alex Efros
Max Dilay
15 Jun 2006; Pieter Van den Abeele
Typo in this one too.
15 Jun 2006; Luca Barbato
johntheripper-1.7.0.2.ebuild:
Typo in the ebuild
*johntheripper-1.7.0.2 (04 Jun 2006)
04 Jun 2006; Daniel Black
+files/johntheripper-1.7.0.2-stackdef.S, +johntheripper-1.7.0.2.ebuild:
version bump as per bug #122435. Thanks Allan Que for the ebuild and all others
11 Apr 2006; Daniel Black
johntheripper-1.6.40.ebuild:
CLK_TCK to CLOCKS_PER_SEC bug #126102 refers. Thanks to Michael Terepeta and
Mikko Tiihonen
14 Jan 2006; Daniel Black
johntheripper-1.6-r3.ebuild:
fixed -lm in 1.6-r3 bug #106652
14 Jan 2006; Daniel Black
johntheripper-1.6.40.ebuild:
added -lm to link flags to solve missing symbol floor. Thanks to Craig
Hughes in bug #118732 and others
07 Jan 2006; Daniel Black
johntheripper-1.6.ebuild:
executable stacks removed from 1.6 as per bug #118185 thanks Toralf Forster
*johntheripper-1.6.40 (07 Jan 2006)
07 Jan 2006; Daniel Black
johntheripper-1.6-r3.ebuild, -johntheripper-1.6.37_p11.ebuild,
-johntheripper-1.6.38.ebuild, +johntheripper-1.6.40.ebuild:
johntheripper-1.6-r3 - fixed executable stack. Fixed bad k6 logic. Added
selftest. Removed nonuser CFLAG usage (-finline-functions -funroll-loops).
Added johntheripper-1.6.40 - bug #116706 thanks to Michael Gaber. 1.6.40 is
still masked due to unidentified TEXTREL. Removed other unstable versions as
insufficient files were installed - bug #114677 thanks to Matthias Bethke
06 Jan 2006; Fabian Groffen
johntheripper-1.6.38.ebuild:
Allow compilation on ppc-macos again; in elseif statements, have most specific
match first. Now the right case is matched, also fix the make target
invocation. Marked ~ppc-macos (bug #106606)
20 Sep 2005; Marcelo Goes
johntheripper-1.6-r3.ebuild:
Back to ~x86 because of bug 106652.
19 Sep 2005; Marcelo Goes
johntheripper-1.6-r3.ebuild:
1.6-r3 x86 stable.
09 Sep 2005; Aron Griffis
johntheripper-1.6-r3.ebuild:
Mark 1.6-r3 stable on alpha
*johntheripper-1.6.38 (23 Aug 2005)
*johntheripper-1.6.37_p11 (23 Aug 2005)
23 Aug 2005; Daniel Black
-johntheripper-1.6.37_p1.ebuild, +johntheripper-1.6.37_p11.ebuild,
+johntheripper-1.6.38.ebuild:
fixes to bug #76399 (removed johntheripper-1.6.37_p1). replaced with
johntheripper-1.6.37_p11 and johntheripper-1.6.38
21 Apr 2005; Simon Stelling
johntheripper-1.6.37_p1.ebuild:
stable on amd64
29 Mar 2005; Markus Rothe
johntheripper-1.6.37_p1.ebuild:
Stable on ppc64
01 Jan 2005; Markus Rothe
johntheripper-1.6.37_p1.ebuild:
Added ~ppc64 to KEYWORDS
*johntheripper-1.6.37_p1 (01 Jan 2005)
01 Jan 2005; Daniel Black
-johntheripper-1.6-r1.ebuild, -johntheripper-1.6.37-r1.ebuild,
+johntheripper-1.6.37_p1.ebuild, metadata.xml:
Version bump removes old version. New _p1 version contains new patches and
fixes bug #59195 (by Benoit Izac
(Alexander Holler
28 Nov 2004; Simon Stelling
johntheripper-1.6.37-r1.ebuild:
added ~amd64
01 Nov 2004; Lars Weiler
johntheripper-1.6.37-r1.ebuild:
Fixed ebuild so that the patch applies correctly. Also marked stable on ppc,
as requested in Bug #44203.
02 Oct 2004; Aaron Walker
johntheripper-1.6.37-r1.ebuild:
Compress gentoo patch; fixes bug #61804
19 Sep 2004; Tom Gall
stable on ppc64, bug #60890
29 Jun 2004; Aron Griffis
johntheripper-1.6-r3.ebuild, johntheripper-1.6.ebuild:
sync IUSE (+kerberos, +mysql, -samba), add sed-4 dep
01 Jun 2004; Aron Griffis
johntheripper-1.6.ebuild:
Fix use invocation
25 May 2004; Daniel Black
johntheripper-1.6.37-r1.ebuild:
Fix for bug #51795. generic make target for x86(non-mmx/non-k6) changed to
linux-x86-any-elf. hppa and mips removed from keywords until generic target
has been fixed. Added missing kerberos use flag too. Thanks to Owen Ford
*johntheripper-1.6.37-r1 (24 May 2004)
24 May 2004; Daniel Black
+johntheripper-1.6.37-r1.ebuild, -johntheripper-1.6.37.ebuild:
Fixed patches
*johntheripper-1.6.37 (22 May 2004)
22 May 2004; Daniel Black
-johntheripper-1.6-r2.ebuild, johntheripper-1.6-r3.ebuild,
+johntheripper-1.6.37.ebuild:
version bump to solve bug #44203. johntheripper-1.6-r3 small
dependancy fix.
*johntheripper-1.6-r3 (20 May 2004)
20 May 2004; Daniel Black
+johntheripper-1.6-r3.ebuild:
fixes to bug #51442 and bug #49988. Thanks to Ghislain Bourgeois
*johntheripper-1.6-r2 (18 May 2004)
18 May 2004; Daniel Black
+files/john-ntlm.skey.patch, +johntheripper-1.6-r2.ebuild
+metadata.xml:
fixes thanks to Ghislain Bourgeois ghislain48@hotmail.com in bug #49988.
All patches are patching the same area of code. mysql dropped due
conficts with other patches.
01 Oct 2003; Tavis Ormandy
Stable on alpha
13 Feb 2003; Guy Martin
Changed keyword ~hppa to hppa.
*johntheripper-1.6-r1 (13 Feb 2003)
13 Feb 2003;
new version that uses patches for ntlm, mysql, etc password cracking
13 Feb 2003;
new
*johntheripper-1.6 (22 May 2002)
28 Mar 2003; Pieter Van den Abeele
Moved to stable ppc
09 Feb 2003; Seemant Kulleen
Changed to use epatch. Also, changed sed expression delimiters from / to
:, closing bug #15006 by Blu3
06 Dec 2002; Rodney Rees
22 May 2002; Grant Goodyear
New package. I use the debian patch because it contains some
useful hacks to make john fit in an LFS filesystem (not to
mention man pages).
-- Explanation of ChangeLog format:
Every new version or revision of the package should be marked by a '*'
seperator line as above. Changes since the last revision have to be added to
the top of the file, underneath the initial copyright and cvs header
comments, in exactly the same format as this comment.
This means that you start with header line that has the following format,
indented two spaces:
DD MMM YYYY; your_name
explanation should follow. It should be indented and wrapped at a line width
of 80 characters. The changed_files can be omitted if they are obvious; for
example, if you are only modifying the .ebuild file and committing a new rev
of a package. Any details about what exactly changed in the code should be
added as a message when the changes are committed to cvs, not in this file.
AUX johntheripper-1.7.2-mkdir-sandbox.patch 554 RMD160 2dfa6d0e912d15ac6205ea89450a0a43c90e563b SHA1 5cd63044c33774f795f32184c486b88df9bb6fc1 SHA256 ced75f4476fc2fe412f630083a5be1102fbbd5ceafc2f34d703cccefdc03e588
AUX johntheripper-1.7.2-params.h.patch 526 RMD160 f32582a6bfb5a4a2c8b1813d81dfd065d7f46cbf SHA1 030450dafbbc613aff20fd28e230bd35ecf05cd3 SHA256 fc050acd68ce5f7f79312c0dc54a110c92f074c908ec32394baaf0b172b7d611
AUX johntheripper-1.7.2-sha1-memset.patch 388 RMD160 71190df1e84e543eef49e95391596280d01b3601 SHA1 ec901d34075b32d515993a1918089e29084d234f SHA256 eb5a126c521b34dea476deccf4afe20816ccc861b41910dda7dd5e3625f75028
AUX johntheripper-1.7.2-stackdef-2.S.patch 363 RMD160 dfb0912bcff9ded13a50ccc153448423c0f00831 SHA1 ea3b75eb936adc98ebfe41650f608173b6b272f9 SHA256 9ce4d1e7ee1440208a7b8ed48fd4270c558772df10d3b2bb8ecaffc26152a073
AUX johntheripper-1.7.2-stackdef.S.patch 1845 RMD160 947aa7be3186c13f87b35e2bbd1bd63f28c5e1a9 SHA1 705a85daf7a65b9b0908b638144c4eaae2ee7316 SHA256 952f076de0eef22db086864ca95e84aab16eb5fcb7035cb3d9c23340b3e2311f
AUX johntheripper-1.7.2-stripping.patch 840 RMD160 9001329b0fcda4ed244c746cdd6dc2d5bde9ae94 SHA1 e60f41af985f12a431b9c272e3964d166d552782 SHA256 e2b989facd64aa1634de13df5a76c3c5579ad90d75a4af63f68b5ad970eca0b8
DIST john-1.7.2-all-7.diff.gz 64450 RMD160 c0adeb226ee75bbc9a875b93a622b99927fb825f SHA1 a0b25e3f9606b5839a4f1a59f896727f0195ba9a SHA256 fb2f42d12ec94be02ad398ac9e823190e518cefcb096a4197c6a37d83d29124c
DIST john-1.7.2-all-9.diff.gz 70430 RMD160 20fde9586f5d7938fbb9f187ec0689f48a56590d SHA1 1d5202842e1ba7f68306d1524bb029b29a5c3e29 SHA256 44555f9c2b630d9c35597f1a4319379f4e3f452ab2103b21cee8d3ebe6d38bbe
DIST john-1.7.2-bp17-mpi8.patch.gz 110095 RMD160 aca159a58c1a8134eb646775ea601a6af4192db5 SHA1 98067712a825f8dc1ae5d0e3ba73b4c69e2a4d1a SHA256 c05bf57a95bda859f54c7a0fbeea2361433cac3a3b3dbce994133ff1cdc0dbae
DIST john-1.7.2.tar.gz 809308 RMD160 8ab90216401cf5cda7ba50a8bb88f53678e35eac SHA1 c3c4720c2f1446a3349b0307a0522af574d013e4 SHA256 9a94d2417b13d49cb11aeb11186933fe0e0491904987ca47c88bf5710935c3cb
EBUILD johntheripper-1.7.2-r3.ebuild 3256 RMD160 ecf828bec14a2d55a28c73140e569bec61329a2b SHA1 3882167d75c0f4f5b853c2fb90ab0e35ee35410e SHA256 54049154f71ff658f883ee0aab478d12fda50151248ebad2d4d578242878a8dc
EBUILD johntheripper-1.7.2-r4.ebuild 2964 RMD160 97a42db852ab61ff199637bdc7d8a839eb7b5bf2 SHA1 964fb7fb2629a5ef24c10b740688f64010230507 SHA256 9a62dcb4696cddad8c9ef9c11084ce3c8530f2b2b83edc6231935e2e74452254
EBUILD johntheripper-1.7.2-r5.ebuild 3253 RMD160 2350f9e8b8fec664df85199116505b5a483e06a3 SHA1 2d8715ab9b511d07e320eb589bf836e1e11c6ad1 SHA256 0afeac26f9754ba09a75b9a71a117f1f88e3f1a8594872c6da5fa26f4c5ce4ac
MISC ChangeLog 14359 RMD160 0e5cf18c5c356f03a7d8f32e1adf3721a7cc3430 SHA1 85d42285f5d8cb224d6780e2975c0dd18f3a492e SHA256 9bd476bf9380a4158683e8740bdabb0bb2f50991c076d7732dcd9964e3e8e252
MISC metadata.xml 160 RMD160 61ea9f9370afee3db802f40f7c6b2edd2f5347cf SHA1 51cf29a3589cff823294704e225b0de18f65e6dd SHA256 7419f4e73ddd07284403525f1380824fc68280cad69e2dfae0645ad52b33ef10
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-crypt/johntheripper/johntheripper-1.7.2-r3.ebuild,v 1.8 2008/02/04 18:47:56 grobian Exp $
inherit eutils flag-o-matic toolchain-funcs pax-utils
MY_PBASE=${P/theripper/}
MY_PNBASE=${PN/theripper/}
S=${WORKDIR}/${MY_PBASE}
DESCRIPTION="fast password cracker"
HOMEPAGE="http://www.openwall.com/john/"
SRC_URI="http://www.openwall.com/john/f/${MY_PBASE}.tar.gz
http://www.openwall.com/john/contrib/${MY_PNBASE}-1.7.2-all-7.diff.gz"
# banquise-to-bigpatch-17.patch.bz2"
# based off /var/tmp/portage/johntheripper-1.6.40
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 hppa ~mips ppc ppc64 sparc x86"
IUSE="mmx altivec sse2 custom-cflags"
RDEPEND=">=dev-libs/openssl-0.9.7"
src_unpack() {
unpack ${A}
cd "${S}"
epatch "${WORKDIR}"/${MY_PNBASE}-1.7.2-all-7.diff
for p in sha1-memset stackdef.S stackdef-2.S mkdir-sandbox; do
epatch "${FILESDIR}/${P}-${p}.patch"
done
}
src_compile() {
#
# upstream request to strip
# any flags, as he optimize the
# outputs
#
use custom-cflags || strip-flags
append-flags -fno-PIC -fno-PIE
append-ldflags -nopie
cd "${S}"/src
# Remove default OPT_NORMAL -funroll-loops bug#198659 for unknown archs
OPTIONS="CPP=$(tc-getCXX) CC=$(tc-getCC) AS=$(tc-getCC) LD=$(tc-getCC) \
CFLAGS=\"-c -Wall ${CFLAGS} -DJOHN_SYSTEMWIDE \
-DJOHN_SYSTEMWIDE_HOME=\\\"\\\\\\\"/etc/john\\\\\\\"\\\"\" \
LDFLAGS=\"${LDFLAGS}\" \
OPT_NORMAL=\"\""
if use x86 ; then
if use sse2 ; then
eval emake ${OPTIONS} linux-x86-sse2 || die "Make failed"
elif use mmx ; then
eval emake ${OPTIONS} linux-x86-mmx || die "Make failed"
else
eval emake ${OPTIONS} linux-x86-any || die "Make failed"
fi
elif use alpha ; then
eval emake ${OPTIONS} linux-alpha || die "Make failed"
elif use sparc; then
eval emake ${OPTIONS} linux-sparc || die "Make failed"
elif use amd64; then
eval emake ${OPTIONS} linux-x86-64 || die "Make failed"
elif use ppc64; then
if use altivec; then
eval emake ${OPTIONS} linux-ppc32-altivec || die "Make failed"
else
eval emake ${OPTIONS} linux-ppc64 || die "Make failed"
fi
# linux-ppc64-altivec is slightly slower than linux-ppc32-altivec for most hash types.
# as per the Makefile comments
elif use ppc; then
if use altivec; then
eval emake ${OPTIONS} linux-ppc32-altivec || die "Make failed"
else
eval emake ${OPTIONS} linux-ppc32 || die "Make failed"
fi
else
eval emake ${OPTIONS} generic || die "Make failed"
fi
# currently broken
#eval emake bench || die "make failed"
}
src_test() {
cd run
if [ -f /etc/john/john.conf -o -f /etc/john/john.ini ]; then
./john --test || die 'self test failed'
else
ewarn "selftest requires /etc/john/john.conf or /etc/john/john.ini"
fi
}
src_install() {
# executables
dosbin run/john
newsbin run/mailer john-mailer
pax-mark -m "${D}"/usr/sbin/john
dosym john /usr/sbin/unafs
dosym john /usr/sbin/unique
dosym john /usr/sbin/unshadow
# for EGG only
dosym john /usr/sbin/undrop
#newsbin src/bench john-bench
# config files
insinto /etc/john
doins run/john.conf
doins run/*.chr run/password.lst
# documentation
dodoc doc/*
}
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-crypt/johntheripper/johntheripper-1.7.2-r4.ebuild,v 1.2 2008/02/04 18:47:56 grobian Exp $
inherit eutils flag-o-matic toolchain-funcs pax-utils
MY_PN="${PN/theripper/}"
MY_P="${MY_PN/theripper/}-${PV}"
S="${WORKDIR}/${MY_P}"
DESCRIPTION="fast password cracker"
HOMEPAGE="http://www.openwall.com/john/"
SRC_URI="http://www.openwall.com/john/f/${MY_P}.tar.gz
http://www.openwall.com/john/contrib/${MY_P}-all-9.diff.gz"
# When mpi stable:
# mpi? ( http://bindshell.net/tools/johntheripper/${MY_P}-bp17-mpi2.patch.gz )"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
IUSE="mmx altivec sse2 custom-cflags"
RDEPEND=">=dev-libs/openssl-0.9.7"
# When mpi stable:
# mpi? ( sys-cluster/openmpi )"
DEPEND="${RDEPEND}"
get_target() {
if use x86 ; then
if use sse2 ; then
echo "linux-x86-sse2"
elif use mmx ; then
echo "linux-x86-mmx"
else
echo "linux-x86-any"
fi
elif use alpha ; then
echo "linux-alpha"
elif use sparc; then
echo "linux-sparc"
elif use amd64; then
echo "linux-x86-64"
elif use ppc64; then
if use altivec; then
echo "linux-ppc32-altivec"
else
echo "linux-ppc64"
fi
# linux-ppc64-altivec is slightly slower than linux-ppc32-altivec for most hash types.
# as per the Makefile comments
elif use ppc; then
if use altivec; then
echo "linux-ppc32-altivec"
else
echo "linux-ppc32"
fi
else
echo "generic"
fi
}
src_unpack() {
unpack ${A}
cd "${S}"
# When mpi stable:
# if use mpi ; then
# epatch "${WORKDIR}"/${MY_P}-bp17-mpi2.patch
# else
cd "${S}/src"
epatch "${WORKDIR}"/${MY_P}-all-9.diff
for p in stackdef.S stackdef-2.S mkdir-sandbox; do
epatch "${FILESDIR}/${P}-${p}.patch"
done
}
src_compile() {
cd "${S}/src"
use custom-cflags || strip-flags
append-flags -fno-PIC -fno-PIE
append-ldflags -nopie
emake \
CPP=$(tc-getCXX) CC=$(tc-getCC) AS=$(tc-getCC) LD=$(tc-getCC) \
CFLAGS="-c -Wall ${CFLAGS} -DJOHN_SYSTEMWIDE \
-DJOHN_SYSTEMWIDE_HOME=\"\\\"/etc/john\\\"\"" \
LDFLAGS="${LDFLAGS}" \
OPT_NORMAL="" \
$(get_target) \
|| die "make failed"
}
src_test() {
cd "${S}/run"
if [ -f /etc/john/john.conf -o -f /etc/john/john.ini ]; then
# When mpi stable:
# if use mpi ; then
# mpirun -np 2 ./john --test || die 'self test failed'
# else
./john --test || die 'self test failed'
else
ewarn "selftest requires /etc/john/john.conf or /etc/john/john.ini"
fi
}
src_install() {
# executables
dosbin run/john
newsbin run/mailer john-mailer
pax-mark -m "${D}"/usr/sbin/john
dosym john /usr/sbin/unafs
dosym john /usr/sbin/unique
dosym john /usr/sbin/unshadow
# for EGG only
dosym john /usr/sbin/undrop
#newsbin src/bench john-bench
# config files
insinto /etc/john
doins run/john.conf
doins run/*.chr run/password.lst
# documentation
dodoc doc/*
}
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-crypt/johntheripper/johntheripper-1.7.2-r5.ebuild,v 1.2 2008/06/16 19:48:53 jer Exp $
inherit eutils flag-o-matic toolchain-funcs pax-utils
MY_PN="${PN/theripper/}"
MY_P="${MY_PN/theripper/}-${PV}"
S="${WORKDIR}/${MY_P}"
DESCRIPTION="fast password cracker"
HOMEPAGE="http://www.openwall.com/john/"
SRC_URI="http://www.openwall.com/john/f/${MY_P}.tar.gz
http://www.openwall.com/john/contrib/${MY_P}-all-9.diff.gz
mpi? ( http://bindshell.net/tools/johntheripper/${MY_P}-bp17-mpi8.patch.gz )"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
IUSE="mmx altivec sse2 custom-cflags mpi"
# Seems a bit fussy with other MPI implementations.
RDEPEND=">=dev-libs/openssl-0.9.7
mpi? ( sys-cluster/openmpi )"
DEPEND="${RDEPEND}"
get_target() {
if use x86 ; then
if use sse2 ; then
echo "linux-x86-sse2"
elif use mmx ; then
echo "linux-x86-mmx"
else
echo "linux-x86-any"
fi
elif use alpha ; then
echo "linux-alpha"
elif use sparc; then
echo "linux-sparc"
elif use amd64; then
echo "linux-x86-64"
elif use ppc64; then
if use altivec; then
echo "linux-ppc32-altivec"
else
echo "linux-ppc64"
fi
# linux-ppc64-altivec is slightly slower than linux-ppc32-altivec for most hash types.
# as per the Makefile comments
elif use ppc; then
if use altivec; then
echo "linux-ppc32-altivec"
else
echo "linux-ppc32"
fi
else
echo "generic"
fi
}
src_unpack() {
unpack ${A}
cd "${S}"
PATCHLIST=""
if use mpi ; then
epatch "${WORKDIR}"/${MY_P}-bp17-mpi8.patch
else
cd "${S}/src"
epatch "${WORKDIR}"/${MY_P}-all-9.diff
PATCHLIST=stackdef.S
fi
PATCHLIST="${PATCHLIST} stackdef-2.S mkdir-sandbox"
cd "${S}/src"
for p in ${PATCHLIST}; do
epatch "${FILESDIR}/${P}-${p}.patch"
done
}
src_compile() {
cd "${S}/src"
use custom-cflags || strip-flags
append-flags -fno-PIC -fno-PIE
append-ldflags -nopie
CPP=$(tc-getCXX) CC=$(tc-getCC) AS=$(tc-getCC) LD=$(tc-getCC)
use mpi && CPP=mpicxx CC=mpicc AS=mpicc LD=mpicc
emake \
CPP=${CPP} CC=${CC} AS=${AS} LD=${LD} \
CFLAGS="-c -Wall ${CFLAGS} -DJOHN_SYSTEMWIDE \
-DJOHN_SYSTEMWIDE_HOME=\"\\\"/etc/john\\\"\"" \
LDFLAGS="${LDFLAGS}" \
OPT_NORMAL="" \
$(get_target) \
|| die "make failed"
}
src_test() {
cd "${S}/run"
if [ -f /etc/john/john.conf -o -f /etc/john/john.ini ]; then
# This requires that MPI is actually 100% online on your system, which might not
# be the case, depending on which MPI implementation you are using.
#if use mpi ; then
# mpirun -np 2 ./john --test || die 'self test failed'
#else
./john --test || die 'self test failed'
else
ewarn "selftest requires /etc/john/john.conf or /etc/john/john.ini"
fi
}
src_install() {
# executables
dosbin run/john
newsbin run/mailer john-mailer
pax-mark -m "${D}"/usr/sbin/john
dosym john /usr/sbin/unafs
dosym john /usr/sbin/unique
dosym john /usr/sbin/unshadow
# for EGG only
dosym john /usr/sbin/undrop
#newsbin src/bench john-bench
# config files
insinto /etc/john
doins run/john.conf
doins run/*.chr run/password.lst
# documentation
dodoc doc/*
}