X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=john.spec;h=14faef01a7b49d0e58ba886c4da58c3f17b1688c;hb=c087c841115afc136011617b3841be65d6a75437;hp=f64174773ee552b4ff7f0b9e6552c0e95dbd9a6e;hpb=3dbf4b73335ff231ead622d5b2b13ec8c092a913;p=packages%2Fjohn.git diff --git a/john.spec b/john.spec index f641747..14faef0 100644 --- a/john.spec +++ b/john.spec @@ -1,74 +1,38 @@ -# TODO -# no jumbo patch for 1.8.0, try making our own from github? -# https://github.com/magnumripper/JohnTheRipper/archive/%{version}/%{name}-%{version}-jumbo.tar.gz -# # Conditional build: -%bcond_with jumbopatch # This patch integrates lots of contributed - # patches adding support for over 30 - # of additional hash types, and more. -%bcond_with avx # use x86 AVX instructions -%bcond_with xop # use x86 XOP instructions -%bcond_with altivec # use PPC Altivec instructions +%bcond_without opencl # OpenCL support (in jumbo version) +%bcond_without openmp # OpenMP support (in jumbo version) -%ifarch i586 i686 athlon pentium2 pentium3 pentium4 -%define do_mmx 1 -%else -%define do_mmx 0 -%endif -%ifarch i686 athlon pentium4 -%define do_sse2 1 -%else -%define do_sse2 0 -%endif -%ifarch i586 i686 -%define do_mmxfb 1 -%define optmmxfb -DCPU_FALLBACK=1 -%else -%define do_mmxfb 0 -%undefine optmmxfb -%endif -%ifarch i686 athlon -%define do_ssefb 1 -%define optssefb -DCPU_FALLBACK=1 -%else -%define do_ssefb 0 -%define optssefb %{nil} -%endif +%define snap 20181101 +%define githash d73288b91d92f3bd670c18d3853ddaf0e02159f0 Summary: Password cracker Summary(pl.UTF-8): Łamacz haseł Name: john Version: 1.8.0 -Release: 0.1 +Release: 2.%{snap}.1 License: GPL v2 Group: Applications/System -Source0: http://www.openwall.com/john/j/%{name}-%{version}.tar.xz -# Source0-md5: a4086df68f51778782777e60407f1869 -Source1: http://www.openwall.com/john/j/%{name}-extra-20130529.tar.xz -# Source1-md5: bb191828e8cbfd5fe0779dff5d87d5f4 +Source0: https://github.com/magnumripper/JohnTheRipper/archive/%{githash}/john-%{snap}.tar.gz +# Source0-md5: a75c1108111c5181b471a9f4a9dab898 Patch0: %{name}-mailer.patch -Patch1: optflags.patch -Patch2: http://www.openwall.com/john/g/%{name}-1.7.9-jumbo-7.diff.gz -# Patch2-md5: b953fcb7f743eeeb5f938a28c352b8ef -Patch3: %{name}-jumbo-optflags.patch -Patch4: no-inline.patch +Patch1: jumbo-optflags.patch +Patch4: %{name}-x32.patch URL: http://www.openwall.com/john/ -%{?with_jumbopatch:BuildRequires: openssl-devel >= 0.9.7} BuildRequires: rpmbuild(macros) >= 1.213 +BuildRequires: autoconf >= 2.69 BuildRequires: tar >= 1:1.22 -BuildRequires: xz +%{?with_opencl:BuildRequires: OpenCL-devel} +BuildRequires: bzip2-devel +%{?with_openmp:BuildRequires: gcc >= 6:4.2} +BuildRequires: gmp-devel +%{?with_openmp:BuildRequires: libgomp-devel} +# 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 -%ifarch %{ix86} %{x8664} -%if %{with xop} -Requires: cpuinfo(xop) -%endif -%if %{with xop} || %{with avx} -Requires: cpuinfo(avx) -%endif -%if %{do_sse2} && !%{do_ssefb} -Requires: cpuinfo(sse2) -%endif -%endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -91,93 +55,31 @@ 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 -%{!?with_jumbopatch:%patch1 -p1} -%{?with_jumbopatch:%patch2 -p1} -%{?with_jumbopatch:%patch3 -p1} -%ifarch %{x8664} -%{?with_jumbopatch:%patch4 -p1} +%patch1 -p1 +%ifarch x32 +%patch4 -p1 %endif -mv john-extra-*/*.chr run - -%{__rm} doc/INSTALL - %build cd src +%{__autoconf} -cat > defs.h <<'EOF' -#define JOHN_SYSTEMWIDE 1 -#define JOHN_SYSTEMWIDE_EXEC "%{_libdir}/john" -EOF - -%if %{do_mmxfb} -%{__make} linux-x86-any \ - CC="%{__cc}" \ - OPTFLAGS="%{rpmcflags} -include defs.h" -mv ../run/john ../run/john-non-mmx -%{__make} clean -%endif - -%if %{do_ssefb} -%{__make} linux-x86-mmx \ - CC="%{__cc}" \ - OPTFLAGS="%{rpmcflags} -include defs.h %{?optmmxfb}" -mv ../run/john ../run/john-non-sse -%{__make} clean +%ifarch x32 +ax_intel_x32=yes \ %endif +%configure \ + %{!?with_opencl:--disable-opencl} \ + %{!?with_openmp:--disable-openmp} -TARG=generic -%ifarch %{x8664} - TARG=linux-x86-64%{?with_xop:-xop}%{!?with_xop:%{?with_avx:-avx}} -%endif -%ifarch %{ix86} - %if %{with xop} || %{with avx} - TARG=linux-x86%{?with_xop:-xop}%{!?with_xop:%{?with_avx:-avx}} - %else - %if %{do_sse2} - TARG=linux-x86-sse2 - %else - %if %{do_mmx} - TARG=linux-x86-mmx - %else - TARG=linux-x86-any - %endif - %endif - %endif -%endif -%ifarch ppc - TARG=linux-ppc32%{?with_altivec:-altivec} -%endif -%ifarch ppc64 - TARG=linux-ppc64%{?with_altivec:-altivec} -%endif -%ifarch alpha - TARG=linux-alpha -%endif -%ifarch ia64 - TARG=linux-ia64 -%endif -%ifarch sparc sparcv9 - TARG=linux-sparc -%endif - -%{__make} $TARG \ - CC="%{__cc}" \ - OPTFLAGS='%{rpmcflags} -include defs.h %{?optmmxfb}' +%{__make} %install rm -rf $RPM_BUILD_ROOT 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} -%if %{do_mmxfb} -install -D -p run/john-non-mmx $RPM_BUILD_ROOT%{_libdir}/john/john-non-mmx -%endif -%if %{do_ssefb} -install -D -p run/john-non-sse $RPM_BUILD_ROOT%{_libdir}/john/john-non-sse -%endif ln -sf john $RPM_BUILD_ROOT%{_bindir}/unafs ln -sf john $RPM_BUILD_ROOT%{_bindir}/unique @@ -193,13 +95,4 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/unafs %attr(755,root,root) %{_bindir}/unique %attr(755,root,root) %{_bindir}/unshadow -%if %{do_mmxfb} || %{do_ssefb} -%dir %{_libdir}/john -%if %{do_mmxfb} -%attr(755,root,root) %{_libdir}/john/john-non-mmx -%endif -%if %{do_ssefb} -%attr(755,root,root) %{_libdir}/john/john-non-sse -%endif -%endif %{_datadir}/john