]>
Commit | Line | Data |
---|---|---|
7d23632d | 1 | # |
2 | # Conditional build: | |
3 | %bcond_without tests # do not perform "make test" | |
4 | # | |
5 | %include /usr/lib/rpm/macros.perl | |
6 | Summary: Searcher for Man pages | |
7 | Name: Sman | |
8 | Version: 0.95 | |
9 | Release: 0.1 | |
10 | # "same as perl" | |
11 | License: Artistic | |
12 | Group: Development/Languages/Perl | |
13 | Source0: http://joshr.com/src/sman/%{name}-%{version}.tar.gz | |
14 | # Source0-md5: b786338eba068a4a110bf2bbda51e695 | |
15 | URL: http://joshr.com/src/sman/ | |
16 | BuildRequires: perl-devel >= 1:5.8.0 | |
17 | BuildRequires: perl-Cache-Cache | |
18 | BuildRequires: perl-Compress-Zlib | |
19 | BuildRequires: perl-FreezeThaw | |
20 | BuildRequires: rpm-perlprov >= 4.1-13 | |
21 | BuildRequires: swish-e-perl | |
22 | %if %{with tests} | |
23 | %endif | |
24 | BuildArch: noarch | |
25 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
26 | ||
27 | #%%define _noautoreq 'perl(anything_fake_or_conditional)' | |
28 | ||
29 | %description | |
30 | Sman is the Searcher for Man pages. Based on the example of the same | |
31 | name in Josh Rabinowitz's article "How To Index Anything" in the July, | |
32 | 2003 issue of Linux Journal | |
33 | <http://www.linuxjournal.com/article.php?sid=6652>, sman is an | |
34 | enhanced version of 'apropos' and 'man -k'. Sman adds several key | |
35 | abilities over its predecessors: | |
36 | ||
37 | - Supports complex natural language text searches such as "(linux and | |
38 | kernel) or (mach and microkernel)" | |
39 | ||
40 | - Shows results in a ranked order, and optionally an extract (using | |
41 | -e) of the manpage showing the searched text highlighted | |
42 | ||
43 | - Allows for searches by manpage section, title, body, or filename | |
44 | (use 'metaname=searchword') | |
45 | ||
46 | - Indexes the complete contents of the man page, not just the title | |
47 | and description | |
48 | ||
49 | - Uses a prebuilt index to perform fast searches | |
50 | ||
51 | - Performs 'stemming' so that a search for "searches" will match a | |
52 | document with the word "searching" | |
53 | ||
54 | %prep | |
55 | %setup -q | |
56 | ||
57 | %build | |
58 | %{__perl} Makefile.PL \ | |
59 | INSTALLDIRS=vendor | |
60 | ||
61 | %{__make} | |
62 | ||
63 | %{?with_tests:%{__make} test} | |
64 | ||
65 | %install | |
66 | rm -rf $RPM_BUILD_ROOT | |
67 | ||
68 | %{__make} pure_install \ | |
69 | DESTDIR=$RPM_BUILD_ROOT | |
70 | ||
71 | %clean | |
72 | rm -rf $RPM_BUILD_ROOT | |
73 | ||
74 | %files | |
75 | %defattr(644,root,root,755) | |
76 | %doc Changes README TODO | |
77 | %attr(755,root,root) %{_bindir}/sman | |
78 | %attr(755,root,root) %{_bindir}/sman-update | |
79 | %{perl_vendorlib}/Sman.pm | |
80 | %dir %{perl_vendorlib}/Sman | |
81 | %{perl_vendorlib}/Sman/Autoconfig.pm | |
82 | %{perl_vendorlib}/Sman/Config.pm | |
83 | %dir %{perl_vendorlib}/Sman/Man | |
84 | %{perl_vendorlib}/Sman/Man/Cache.pm | |
85 | %{perl_vendorlib}/Sman/Man/Cache/DB_File.pm | |
86 | %{perl_vendorlib}/Sman/Man/Cache/FileCache.pm | |
87 | %{perl_vendorlib}/Sman/Man/Convert.pm | |
88 | %{perl_vendorlib}/Sman/Man/Find.pm | |
89 | %{perl_vendorlib}/Sman/Swishe.pm | |
90 | %{perl_vendorlib}/Sman/Util.pm | |
91 | %{perl_vendorlib}/sman.conf.pm | |
92 | %{_mandir}/man1/* | |
93 | %{_mandir}/man3/* |