3 %bcond_with chasen # use ChaSen Japanese morphological analisys system
4 # (not tested, maybe on by default?)
5 %bcond_without expat # without XML support (using expat library)
6 %bcond_without ssl # without SSL support (using OpenSSL)
8 %bcond_without mysql # support for MySQL
9 %bcond_without pgsql # support for PostgreSQL
10 # databases through ODBC
11 %bcond_with iodbc # with ODBC support through iODBC
12 %bcond_with unixodbc # with ODBC support through unixODBC
13 # databases through FreeTDS
14 %bcond_with mssql # support for MS SQL through FreeTDS
16 Summary: Another one web indexing and searching system for a small domain or intranet
17 Summary(pl): Kolejny system indeksowania i przeszukiwania WWW dla ma³ych domen i intranetu
22 Group: Networking/Utilities
23 #Source0Download: http://www.mnogosearch.ru/download.html
24 Source0: http://www.mnogosearch.ru/Download/%{name}-%{version}.tar.gz
25 # Source0-md5: c244702ad4bc95bacf7b06ac1327b159
26 Source1: %{name}-dbgen
27 Patch0: %{name}-acfixes.patch
28 URL: http://www.mnogosearch.ru/
29 BuildRequires: autoconf
30 BuildRequires: automake
31 %{?with_chasen:BuildRequires: chasen-devel}
32 %{?with_expat:BuildRequires: expat-devel}
33 %{?with_mssql:BuildRequires: freetds-devel}
34 %{?with_iodbc:BuildRequires: libiodbc-devel}
35 BuildRequires: libtool
36 %{?with_mysql:BuildRequires: mysql-devel}
37 %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
38 %{?with_pgsql:BuildRequires: postgresql-devel}
39 %{?with_unixodbc:BuildRequires: unixODBC-devel}
40 BuildRequires: zlib-devel
42 #%{?with_pgsql:PreReq: postgresql-clients}
43 Requires: %{name}-lib = %{version}-%{release}
45 Obsoletes: mnogosearch-stored
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 %define _sysconfdir /etc/%{name}
50 %define _localstatedir /var/lib/mnogosearch
51 %define _ourdatadir %{_datadir}/%{name}
52 %define htmldir /home/services/httpd/html
53 %define cgidir /home/services/httpd/cgi-bin
56 The mnogosearch system is a complete world wide web indexing and
57 searching system for a small domain or intranet. This system is not
58 meant to replace the need for powerful internet-wide search systems
59 like Lycos, Infoseek, Webcrawler and AltaVista. Instead it is meant to
60 cover the search needs for a single company, campus, or even a
61 particular sub section of a web site. Features:
64 - http: (and ftp: - via proxy) URL schemaa
67 - support for ssl (https://)
68 - limiting queries to one hostname by sth like this: <INPUT
69 TYPE=HIDDEN NAME=ul VALUE=http://www.something.com/>
70 - it's posilble to run indexers on several diffrent (theoreticaly 128)
71 hosts, and gather information on one of them, reindexing proceses make
72 no harm to avalibility of search engine. See cachemode.txt
74 As opposed to some WAIS-based or web-server based search engines,
75 mnogsearch can span several web servers at a site. The type of these
76 different web servers doesn't matter as long as they understand the
77 HTTP 1.0 protocol. Mnogosearch supports also virtual domains.
80 Mnogosearch jest kompletnym systemem indeksuj±cym i przeszukuj±cym WWW
81 dla ma³ych domen oraz intranetu. System nie zosta³ opracowany jako
82 wielki system typu Lycos, Infoseek WebCrawler i AltaVista. Natomiast
83 nadaje siê do zastosowania w pojedynczej firmie, kampusie lub
84 jakiejkolwiek stronie WWW. Zalety:
85 - przeszukiwanie tagów MP3,
86 - niusów (Server news://localhost/pl/),
87 - htdb czyli baz danych udostêpnianych przez WWW/CGI. (HTDBList SELECT
88 \ concat("http://search.mnogo.ru/board/message.php?id=",id) \ FROM
89 udm.messages LIMIT 2))
90 - zawarto¶ci serwerów FTP (rada za 2gr: "Index no" dla serwera FTP
91 spowoduje nie indeksowanie *zawarto¶ci* plików na nim siê znajduj±cych)
92 - wyszukiwanie w zwyk³ych URL-ach http://
93 - wsparcie dla SSL (https://)
94 - wyszukiwanie w mirrorach (równie¿ lokalnych) odleg³ych sieci
95 - zgadywanie zestawu znaków
96 - zewnêtrzne przetwarzacze dokumentów na potrzeby indeksowania
97 - ograniczanie zapytañ do jednej nazwy hosta: <INPUT TYPE=HIDDEN
98 NAME=ul VALUE=http://www.something.com/>
99 - kategoryzacja witryny (doc/categories.txt)
100 - mo¿liwe jest uruchomienie kilku procesów indeksuj±cych na kilku
101 (teoretycznie 128) hostach i trzymanie bazy na jednym z nich,
102 reindeksacja nie powoduje wtedy niedostêpno¶ci wyszukiwarki.
103 Przeczytaj cachemode.txt
105 W odró¿nieniu od innych systemów bazuj±cych na WAIS-ie lub serwerach
106 WWW, mnogosearch mo¿e ³±czyæ kilka serwerów WWW w jednym miejscu. Typ
107 serwera nie ma znaczenia, dopóki pracuje on zgodnie z protoko³em HTTP
108 1.0. Pakiet wspó³pracuje równie¿ z domenami wirtualnymi.
111 Summary: mnogosearch library
112 Summary(pl): Biblioteka mnogosearch
116 This package contains mnogosearch library files.
118 %description lib -l pl
119 Ten pakiet zawiera pliki biblioteki mnogosearch.
122 Summary: Include files for mnogosearch
123 Summary(pl): Pliki nag³ówkowe mnogosearch
124 Group: Development/Libraries
125 Requires: %{name}-lib = %{version}-%{release}
126 %{?with_expat:Requires: expat-devel}
127 %{?with_iodbc:Requires: libiodbc-devel}
128 %{?with_mysql:Requires: mysql-devel}
129 %{?with_ssl:Requires: openssl-devel}
130 %{?with_pgsql:Requires: postgresql-devel}
131 %{?with_unixodbc:Requires: unixODBC-devel}
135 This package contains mnogosearch development files.
137 %description devel -l pl
138 Pliki dla programistów u¿ywaj±cych mnogosearch.
141 Summary: mnogosearch static libraries
142 Summary(pl): Biblioteki statyczne mnogosearch
143 Group: Development/Libraries
144 Requires: %{name}-devel = %{version}-%{release}
147 This package contains static libraries of mnogosearch.
149 %description static -l pl
150 Ten pakiet zawiera statyczne biblioteki mnogosearch.
157 find . -type d -name CVS | xargs rm -rf
163 --datadir=%{_ourdatadir} \
164 DOCBOOKSTYLE="/usr/share/sgml/docbook/dsssl-stylesheets" \
165 --enable-syslog=LOG_LOCAL6 \
166 --enable-charset-guesser \
167 %{?with_chasen:--enable-chasen} \
171 --enable-linux-pthreads \
172 --enable-news-extension \
176 --with-cgi-bin-dir=%{cgidir} \
177 --with-config-dir=%{_sysconfdir}/http/%{name} \
178 %{?with_expat:--with-expat} \
179 --with-image-dir=%{htmldir}/%{name} \
180 %{?with_mssql:--with-freetds} \
181 %{?with_iodbc:--with-iodbc} \
182 %{?with_mysql:--with-mysql} \
183 %{?with_ssl:--with-openssl} \
184 %{?with_pgsql:--with-pgsql} \
185 --with-search-dir=%{htmldir} \
186 %{?with_unixodbc:--with-unixODBC} \
189 # --with-readline (for SQL monitor) ?
190 # --wiht-extra-charsets=big5,gb2312,gbk,japanese,euc-kr,gujarati,tscii ?
194 # enable automatic Russian charset guesser :-]
195 # wy uze www.linux.ru procitacli sewodnja?
197 # --with-solid[=DIR] Include Solid support. DIR is the Solid base
198 # --with-openlink[=DIR] Include OpenLink ODBC support.
199 # --with-easysoft[=DIR] Include EasySoft ODBC support.
200 # --with-sapdb[=DIR] Include SAPDB support. DIR is the SAPDB base
201 # --with-ibase[=DIR] Include InterBase support. DIR is the InterBase
202 # --with-ctlib[=DIR] Include Ct-Lib support.
203 # --with-freetds[=DIR] Include FreeTDS Ct-Lib support.
204 # --with-oracle7[=DIR] Include Oracle 7.3 support. DIR is the Oracle
205 # --with-oracle8[=DIR] Include Oracle8 support. DIR is the Oracle
206 # --with-oracle8i[=DIR] Include Oracle8i support. DIR is the Oracle
208 # FIXME: add selection of storage method, spliting into %{name}-common & %{name}-$DB_NAME
211 rm -rf $RPM_BUILD_ROOT
212 install -d $RPM_BUILD_ROOT{%{_localstatedir},%{htmldir},%{cgidir},%{_sysconfdir}} \
213 $RPM_BUILD_ROOT{/etc/cron.daily,%{_infodir}}
216 DESTDIR=$RPM_BUILD_ROOT \
217 doc_FILES='$(HTML_ALL)'
219 ln -sf %{_defaultdocdir}/%{name}-%{version}/html \
220 $RPM_BUILD_ROOT%{htmldir}/mnogodoc
222 mv -f $RPM_BUILD_ROOT%{_bindir}/*.cgi \
223 $RPM_BUILD_ROOT%{cgidir}
225 install -d $RPM_BUILD_ROOT/usr/src/example/mnogosearch
226 install %{SOURCE1} $RPM_BUILD_ROOT/etc/cron.daily/mnogosearch-dbgen
229 cp -af doc/*.{html,css} html
231 cd $RPM_BUILD_ROOT%{_sysconfdir}
234 mv -f $f `basename $f -dist`
237 rm -rf $RPM_BUILD_ROOT%{_prefix}/doc
240 rm -rf $RPM_BUILD_ROOT
244 Please see docs (%{_defaultdocdir}/%{name}-%{version}),
245 then read how to setup db connection, and put line like this
246 "pgsql://user:password@/dbname/" into %{_sysconfdir}, then setup database
247 using "indexer -Ecreate" command.
250 %post lib -p /sbin/ldconfig
251 %postun lib -p /sbin/ldconfig
254 %defattr(644,root,root,755)
255 %doc ChangeLog README TODO html doc/samples
256 %attr(755,root,root) %{_sbindir}/*
257 %attr(755,root,root) %{_bindir}/*
258 %attr(755,root,root) %{cgidir}/*
261 %dir %{_localstatedir}
262 %attr(775,root,http) %{_localstatedir}/cache
263 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.conf
264 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.freq
265 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.htm
266 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/locals
267 %dir %{_sysconfdir}/langmap
268 %dir %{_sysconfdir}/stopwords
269 %dir %{_sysconfdir}/synonym
270 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*/*
271 %config(noreplace) %attr(750,root,root) /etc/cron.daily/*
275 %defattr(644,root,root,755)
276 %attr(755,root,root) %{_libdir}/lib*-*.so
279 %defattr(644,root,root,755)
280 %attr(755,root,root) %{_bindir}/udm-config
281 %attr(755,root,root) %{_libdir}/libmnogosearch.so
282 %attr(755,root,root) %{_libdir}/libmnogocharset.so
287 %defattr(644,root,root,755)