]> git.pld-linux.org Git - packages/john.git/blobdiff - john.spec
- merged into john-x32.patch
[packages/john.git] / john.spec
index 4508f381d6db9ef2aa85e22a6d3deb39c9aa559c..14faef01a7b49d0e58ba886c4da58c3f17b1688c 100644 (file)
--- a/john.spec
+++ b/john.spec
@@ -1,65 +1,38 @@
-#
 # 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
-#
-%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
-%endif
+%bcond_without opencl          # OpenCL support (in jumbo version)
+%bcond_without openmp          # OpenMP support (in jumbo version)
+
+%define                snap            20181101
+%define                githash         d73288b91d92f3bd670c18d3853ddaf0e02159f0
+
 Summary:       Password cracker
 Summary(pl.UTF-8):     Łamacz haseł
 Name:          john
-Version:       1.7.8
-Release:       1
+Version:       1.8.0
+Release:       2.%{snap}.1
 License:       GPL v2
 Group:         Applications/System
-Source0:       http://www.openwall.com/john/g/%{name}-%{version}.tar.bz2
-# Source0-md5: e6d7f261829610d6949c706ebac0517c
+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}-%{version}-jumbo-2.diff.gz
-# Patch2-md5:  445bbcc9049a632c18359cb7a0fdfb27
-Patch3:                %{name}-jumbo-optflags.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
+%{?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
@@ -82,87 +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
+%setup -q -n JohnTheRipper-%{githash}
 %patch0 -p1
-%{!?with_jumbopatch:%patch1 -p1}
-%{?with_jumbopatch:%patch2 -p1}
-%{?with_jumbopatch:%patch3 -p1}
-
-%{__rm} doc/INSTALL
+%patch1 -p1
+%ifarch x32
+%patch4 -p1
+%endif
 
 %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
-%endif
-
-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
+%ifarch x32
+ax_intel_x32=yes \
 %endif
+%configure \
+       %{!?with_opencl:--disable-opencl} \
+       %{!?with_openmp:--disable-openmp}
 
-%{__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
@@ -178,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
This page took 0.091774 seconds and 4 git commands to generate.