X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=john.spec;h=78e5d20e8a289fc6cf4b48a8f22c7ae06d1cc81e;hb=5529214f1b97b05be93d09fcee6ae0b8e5a9a824;hp=a2bb823ba6de2f5103337f21ecebdb8ca5651df2;hpb=8fc1a2e0f27e21edac99f49a88e767673959cd39;p=packages%2Fjohn.git diff --git a/john.spec b/john.spec index a2bb823..78e5d20 100644 --- a/john.spec +++ b/john.spec @@ -1,80 +1,93 @@ # -# Conditional build: -# _with_mmx - MMX optimization -# Optimization must be chosen at compile time :( -# Maybe some patch...? But not yet. +# TODO: +# - investigate build-time vs runtime CPU features detection # +# Conditional build: +%bcond_without opencl # OpenCL support +%bcond_without openmp # OpenMP support + +%define snap 20181101 +%define githash d73288b91d92f3bd670c18d3853ddaf0e02159f0 + Summary: Password cracker -Summary(pl): £amacz hase³ +Summary(pl.UTF-8): Łamacz haseł Name: john -Version: 1.6 -Release: 6 -License: GPL +Version: 1.8.0 +Release: 2.%{snap}.1 +License: GPL v2 Group: Applications/System -Source0: http://www.openwall.com/john/%{name}-%{version}.tar.gz -# Source0-md5: aae782f160041b2bdc624b0a84054e32 -Patch0: %{name}-%{version}.PLD.diff -Patch1: %{name}-%{version}.ini.diff -Patch2: %{name}-%{version}.makefile.diff +Source0: https://github.com/magnumripper/JohnTheRipper/archive/%{githash}/%{name}-%{snap}.tar.gz +# Source0-md5: a75c1108111c5181b471a9f4a9dab898 +Patch0: %{name}-mailer.patch +Patch1: jumbo-optflags.patch +Patch4: %{name}-x32.patch +URL: http://www.openwall.com/john/ +%{?with_opencl:BuildRequires: OpenCL-devel} +BuildRequires: autoconf >= 2.69 +BuildRequires: bzip2-devel +%{?with_openmp:BuildRequires: gcc >= 6:4.2} +BuildRequires: gmp-devel +%{?with_openmp:BuildRequires: libgomp-devel} +BuildRequires: rpmbuild(macros) >= 1.213 +BuildRequires: tar >= 1:1.22 +# for SIPdump and vncpcap2john binaries, which are not packaged +#BuildRequires: libpcap-devel +BuildRequires: openssl-devel >= 0.9.7 +BuildRequires: pkgconfig +BuildRequires: yasm +BuildRequires: zlib-devel +Requires: words BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description -John the Ripper is a password cracker, currently available for UNIX, -DOS, WinNT/Win95. Its primary purpose is to detect weak UNIX -passwords. It has been tested with Linux x86/Alpha/SPARC, FreeBSD x86, -OpenBSD x86, Solaris 2.x SPARC and x86, Digital UNIX, AIX, HP-UX, and -IRIX. +John the Ripper is a fast password cracker, currently available for +many flavors of Unix (11 are officially supported, not counting +different architectures), DOS, Win32, BeOS, and OpenVMS (the latter +requires a contributed patch). Its primary purpose is to detect weak +Unix passwords. Besides several crypt(3) password hash types most +commonly found on various Unix flavors, supported out of the box are +Kerberos/AFS and Windows NT/2000/XP LM hashes, plus several more with +contributed patches. -%description -l pl -John The Ripper jest "³amaczem" hase³ dostêpnym dla systemów UNIX, -DOS, WinNT/Win95. G³ównym jego zadaniem jest wykrywanie "s³abych" -hase³. By³ testowany z Linux x86/Alpha/SPARC, FreeBSD x86, OpenBSD x86, -Solaris 2.x SPARC i x86, Digital UNIX, AIX, HP-UX oraz IRIX. +%description -l pl.UTF-8 +John The Ripper jest szybkim "łamaczem" haseł dostępnym dla wielu +rodzajów uniksów (oficjalnie obsługiwanych jest 11, nie licząc różnych +architektur), DOS-a, Win32, BeOS-a i OpenVMS-a (ten ostatni wymaga +łaty). Głównym zastosowaniem jest wykrywanie słabych haseł uniksowych. +Oprócz różnych rodzajów skrótów haseł crypt(3) najczęściej używanych +na różnych uniksach, obsługiwane są także skróty Kerberos/AFS oraz +Windows NT/2000/XP LM, a także kilka innych przy użyciu łat. %prep -%setup -q +%setup -q -n JohnTheRipper-%{githash} %patch0 -p1 %patch1 -p1 -%patch2 -p1 +%ifarch x32 +%patch4 -p1 +%endif %build cd src -COPT="%{rpmcflags}" +%{__autoconf} -# bleh... MMX code must be chosen at compile time :( -# cannot use MMX for generic i586 nor i686 (Pentium/Pentium Pro have no MMX) -# K6 optimization exists only in Makefile -%ifarch %{ix86} - %if %{?_with_mmx:1}%{!?_with_mmx:0} - TARG=linux-x86-mmx-elf - %else - TARG=linux-x86-any-elf - %endif -%else - %ifarch alpha - TARG=linux-alpha - %else - %ifarch sparc sparc64 - TARG=linux-sparc - %else - TARG=generic - %endif - %endif +%ifarch x32 +ax_intel_x32=yes \ %endif +%configure \ + %{!?with_opencl:--disable-opencl} \ + %{!?with_openmp:--disable-openmp} -%{__make} OPT="$COPT" CC="%{__cc}" $TARG +%{__make} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/john} -install run/{*.chr,john.ini} $RPM_BUILD_ROOT%{_libdir}/john -install run/john $RPM_BUILD_ROOT%{_bindir} -rm -f doc/INSTALL +install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/john} +cp -a run/{*.conf,*.chr,*.lst} $RPM_BUILD_ROOT%{_datadir}/john +install -p run/john $RPM_BUILD_ROOT%{_bindir} -cd $RPM_BUILD_ROOT%{_bindir} -ln -sf john unafs -ln -sf john unique -ln -sf john unshadow +ln -sf john $RPM_BUILD_ROOT%{_bindir}/unafs +ln -sf john $RPM_BUILD_ROOT%{_bindir}/unique +ln -sf john $RPM_BUILD_ROOT%{_bindir}/unshadow %clean rm -rf $RPM_BUILD_ROOT @@ -82,5 +95,8 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) %doc doc/* run/mailer -%attr(755,root,root) %{_bindir}/* -%{_libdir}/john +%attr(755,root,root) %{_bindir}/john +%attr(755,root,root) %{_bindir}/unafs +%attr(755,root,root) %{_bindir}/unique +%attr(755,root,root) %{_bindir}/unshadow +%{_datadir}/john