]> git.pld-linux.org Git - packages/john.git/blobdiff - john.spec
- cosmetic changes in todo, bconds desc
[packages/john.git] / john.spec
index f7a895a4614f50ee8019c25f78094127905c16b9..78e5d20e8a289fc6cf4b48a8f22c7ae06d1cc81e 100644 (file)
--- a/john.spec
+++ b/john.spec
 #
-# Conditional build:
-%bcond_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
 #
-%ifarch athlon
-%define with_mmx 1
-%endif
+# 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.37
-Release:       7
-License:       GPL
+Version:       1.8.0
+Release:       2.%{snap}.1
+License:       GPL v2
 Group:         Applications/System
-Source0:       http://www.openwall.com/john/a/%{name}-%{version}.tar.gz
-# Source0-md5: 9403233b640927295c05b0564ff1f678
-# needed for docs and charset files
-Source1:       http://www.openwall.com/john/%{name}-1.6.tar.gz
-# Source1-md5: aae782f160041b2bdc624b0a84054e32
-Patch0:                %{name}-1.6.PLD.diff
-Patch1:                %{name}-1.6.ini.diff
-Patch2:                %{name}-1.6.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/
-BuildRequires: sed >= 4.0
+%{?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 -a1
+%setup -q -n JohnTheRipper-%{githash}
 %patch0 -p1
-#%patch1 -p1
-#%patch2 -p1
-# or move it to /var maybe?
-sed -i -e 's,/usr/lib,%{_libdir},' src/params.h run/john.conf
+%patch1 -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}
-               TARG=linux-x86-mmx-elf
-       %else
-               TARG=linux-x86-any-elf
-       %endif
-%else
-       %ifarch alpha
-               TARG=linux-alpha
-       %else
-               %ifarch sparc64
-                       TARG=linux-sparc
-               %else
-                       %ifarch amd64
-                               TARG=linux-x86-64
-                       %else
-                               TARG=generic
-                       %endif  
-               %endif
-       %endif
+%ifarch x32
+ax_intel_x32=yes \
 %endif
+%configure \
+       %{!?with_opencl:--disable-opencl} \
+       %{!?with_openmp:--disable-openmp}
 
-%{__make} $TARG \
-       OPT="$COPT" \
-       CC="%{__cc}"
+%{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/john}
-install run/john.conf john-1.6/run/*.chr $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
 
 %files
 %defattr(644,root,root,755)
-%doc doc/* john-1.6/doc/{CONFIG,EXAMPLES,EXTERNAL,FAQ,MODES,NEWS,OPTIONS,RULES} run/mailer
-%attr(755,root,root) %{_bindir}/*
-%{_libdir}/john
+%doc doc/* run/mailer
+%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
This page took 0.059239 seconds and 4 git commands to generate.