packages: john/john.spec - updated to 1.7.7 - build with sse2 support on i6...

qboosh qboosh at pld-linux.org
Sat Apr 30 11:32:09 CEST 2011


Author: qboosh                       Date: Sat Apr 30 09:32:09 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- updated to 1.7.7
- build with sse2 support on i686/athlon/pentium4 (with fallback on i686/athlon)
- bcond to enable avx or xop on x86*
- bcond to enable altivec on ppc*
- use more specific targets for ppc* and ia64

---- Files affected:
packages/john:
   john.spec (1.61 -> 1.62) 

---- Diffs:

================================================================
Index: packages/john/john.spec
diff -u packages/john/john.spec:1.61 packages/john/john.spec:1.62
--- packages/john/john.spec:1.61	Fri Nov  5 12:23:28 2010
+++ packages/john/john.spec	Sat Apr 30 11:32:04 2011
@@ -1,15 +1,23 @@
 # $Revision$, $Date$
 #
 # 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	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
@@ -17,18 +25,25 @@
 %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
 Summary:	Password cracker
 Summary(pl.UTF-8):	Łamacz haseł
 Name:		john
-Version:	1.7.6
-Release:	2
-License:	GPL
+Version:	1.7.7
+Release:	1
+License:	GPL v2
 Group:		Applications/System
 Source0:	http://www.openwall.com/john/g/%{name}-%{version}.tar.bz2
-# Source0-md5:	321ac0793f1aa4f0603b33a393133756
+# Source0-md5:	be316618de834a58573a21225d4a2674
 Patch0:		%{name}-mailer.patch
 Patch1:		optflags.patch
-%{?with_jumbopatch:Patch1: http://www.openwall.com/john/contrib/%{name}-%{version}-jumbo-2.diff.gz}
+%{?with_jumbopatch:Patch1: http://www.openwall.com/john/contrib/%{name}-%{version}-jumbo-1.diff.gz}
 URL:		http://www.openwall.com/john/
 %{?with_jumbopatch:BuildRequires: openssl-devel >= 0.9.7}
 BuildRequires:	rpmbuild(macros) >= 1.213
@@ -60,7 +75,7 @@
 %patch1 -p1
 %{?with_jumbopatch:%patch1 -p1}
 
-rm -f doc/INSTALL
+%{__rm} doc/INSTALL
 
 %build
 cd src
@@ -78,23 +93,47 @@
 %{__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 %{ix86}
-	%if %{do_mmx}
-		TARG=linux-x86-mmx
+%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
-		TARG=linux-x86-any
+		%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
-%ifarch %{x8664}
-	TARG=linux-x86-64
-%endif
 
 %{__make} $TARG \
 	CC="%{__cc}" \
@@ -106,8 +145,10 @@
 cp -a run/{*.conf,*.chr,*.lst} $RPM_BUILD_ROOT%{_datadir}/john
 install -p run/john $RPM_BUILD_ROOT%{_bindir}
 %if %{do_mmxfb}
-install -d $RPM_BUILD_ROOT%{_libdir}/john
-install -p run/john-non-mmx $RPM_BUILD_ROOT%{_libdir}/john
+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
@@ -124,10 +165,14 @@
 %attr(755,root,root) %{_bindir}/unafs
 %attr(755,root,root) %{_bindir}/unique
 %attr(755,root,root) %{_bindir}/unshadow
-%if %{do_mmxfb}
+%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
 %{_datadir}/john
 
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
@@ -136,6 +181,13 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.62  2011/04/30 09:32:04  qboosh
+- updated to 1.7.7
+- build with sse2 support on i686/athlon/pentium4 (with fallback on i686/athlon)
+- bcond to enable avx or xop on x86*
+- bcond to enable altivec on ppc*
+- use more specific targets for ppc* and ia64
+
 Revision 1.61  2010/11/05 11:23:28  glen
 - fix ix86 build, by passing JOHN_SYSTEMWIDE_EXEC via include file; rel 2
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/john/john.spec?r1=1.61&r2=1.62&f=u



More information about the pld-cvs-commit mailing list