]> git.pld-linux.org Git - packages/john.git/blob - john.spec
1a9fba39334bf9b9664f33204ed3ad7e550c9066
[packages/john.git] / john.spec
1 #
2 # Conditional build:
3 %bcond_with jumbopatch  # This patch integrates lots of contributed
4                         # patches adding support for over 30
5                         # of additional hash types, and more.
6
7 %ifarch i586 i686 athlon pentium2 pentium3 pentium4
8 %define do_mmx 1
9 %else
10 %define do_mmx 0
11 %endif
12 %ifarch i586 i686
13 %define do_mmxfb 1
14 %define optmmxfb        -DCPU_FALLBACK=1
15 %else
16 %define do_mmxfb 0
17 %undefine optmmxfb
18 %endif
19 Summary:        Password cracker
20 Summary(pl.UTF-8):      Łamacz haseł
21 Name:           john
22 Version:        1.7.6
23 Release:        1
24 License:        GPL
25 Group:          Applications/System
26 Source0:        http://www.openwall.com/john/g/%{name}-%{version}.tar.bz2
27 # Source0-md5:  321ac0793f1aa4f0603b33a393133756
28 Patch0:         %{name}-mailer.patch
29 Patch1:         optflags.patch
30 %{?with_jumbopatch:Patch1: http://www.openwall.com/john/contrib/%{name}-%{version}-jumbo-2.diff.gz}
31 URL:            http://www.openwall.com/john/
32 %{?with_jumbopatch:BuildRequires: openssl-devel >= 0.9.7}
33 BuildRequires:  rpmbuild(macros) >= 1.213
34 Requires:       words
35 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
37 %description
38 John the Ripper is a fast password cracker, currently available for
39 many flavors of Unix (11 are officially supported, not counting
40 different architectures), DOS, Win32, BeOS, and OpenVMS (the latter
41 requires a contributed patch). Its primary purpose is to detect weak
42 Unix passwords. Besides several crypt(3) password hash types most
43 commonly found on various Unix flavors, supported out of the box are
44 Kerberos/AFS and Windows NT/2000/XP LM hashes, plus several more with
45 contributed patches.
46
47 %description -l pl.UTF-8
48 John The Ripper jest szybkim "łamaczem" haseł dostępnym dla wielu
49 rodzajów uniksów (oficjalnie obsługiwanych jest 11, nie licząc różnych
50 architektur), DOS-a, Win32, BeOS-a i OpenVMS-a (ten ostatni wymaga
51 łaty). Głównym zastosowaniem jest wykrywanie słabych haseł uniksowych.
52 Oprócz różnych rodzajów skrótów haseł crypt(3) najczęściej używanych
53 na różnych uniksach, obsługiwane są także skróty Kerberos/AFS oraz
54 Windows NT/2000/XP LM, a także kilka innych przy użyciu łat.
55
56 %prep
57 %setup -q
58 %patch0 -p1
59 %patch1 -p1
60 %{?with_jumbopatch:%patch1 -p1}
61
62 rm -f doc/INSTALL
63
64 %build
65 cd src
66
67 %if %{do_mmxfb}
68 %{__make} linux-x86-any \
69         CC="%{__cc}" \
70         OPTFLAGS="%{rpmcflags} -DJOHN_SYSTEMWIDE=1"
71 mv ../run/john ../run/john-non-mmx
72 %{__make} clean
73 %endif
74
75 TARG=generic
76 %ifarch %{ix86}
77         %if %{do_mmx}
78                 TARG=linux-x86-mmx
79         %else
80                 TARG=linux-x86-any
81         %endif
82 %endif
83 %ifarch alpha
84         TARG=linux-alpha
85 %endif
86 %ifarch sparc sparcv9
87         TARG=linux-sparc
88 %endif
89 %ifarch %{x8664}
90         TARG=linux-x86-64
91 %endif
92
93 %{__make} $TARG \
94         CC="%{__cc}" \
95         OPTFLAGS="%{rpmcflags} -DJOHN_SYSTEMWIDE=1 -DJOHN_SYSTEMWIDE_EXEC=\\\"%{_libdir}/john\\\" %{?optmmxfb}"
96
97 %install
98 rm -rf $RPM_BUILD_ROOT
99 install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/john}
100 cp -a run/{*.conf,*.chr,*.lst} $RPM_BUILD_ROOT%{_datadir}/john
101 install -p run/john $RPM_BUILD_ROOT%{_bindir}
102 %if %{do_mmxfb}
103 install -d $RPM_BUILD_ROOT%{_libdir}/john
104 install -p run/john-non-mmx $RPM_BUILD_ROOT%{_libdir}/john
105 %endif
106
107 ln -sf john $RPM_BUILD_ROOT%{_bindir}/unafs
108 ln -sf john $RPM_BUILD_ROOT%{_bindir}/unique
109 ln -sf john $RPM_BUILD_ROOT%{_bindir}/unshadow
110
111 %clean
112 rm -rf $RPM_BUILD_ROOT
113
114 %files
115 %defattr(644,root,root,755)
116 %doc doc/* run/mailer
117 %attr(755,root,root) %{_bindir}/john
118 %attr(755,root,root) %{_bindir}/unafs
119 %attr(755,root,root) %{_bindir}/unique
120 %attr(755,root,root) %{_bindir}/unshadow
121 %if %{do_mmxfb}
122 %dir %{_libdir}/john
123 %attr(755,root,root) %{_libdir}/john/john-non-mmx
124 %endif
125 %{_datadir}/john
This page took 0.157268 seconds and 2 git commands to generate.