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_without freetds # 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: 80515ca73111a1ac66fc496646beb39e
26 Source1: %{name}-dbgen
27 Patch0: %{name}-acfixes.patch
28 Patch1: %{name}-as_needed-fix.patch
29 URL: http://www.mnogosearch.ru/
30 BuildRequires: autoconf
31 BuildRequires: automake
32 %{?with_chasen:BuildRequires: chasen-devel}
33 %{?with_expat:BuildRequires: expat-devel}
34 %{?with_freetds:BuildRequires: freetds-devel}
35 %{?with_iodbc:BuildRequires: libiodbc-devel}
36 BuildRequires: libtool
37 %{?with_mysql:BuildRequires: mysql-devel}
38 %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
39 %{?with_pgsql:BuildRequires: postgresql-devel}
40 %{?with_unixodbc:BuildRequires: unixODBC-devel}
41 BuildRequires: zlib-devel
42 Requires: %{name}-lib = %{version}-%{release}
43 #%{?with_pgsql:Requires: postgresql-clients}
46 Obsoletes: mnogosearch-stored
48 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 %define _sysconfdir /etc/%{name}
51 %define _localstatedir /var/lib/mnogosearch
52 %define _ourdatadir %{_datadir}/%{name}
53 %define htmldir /home/services/httpd/html
54 %define cgidir /home/services/httpd/cgi-bin
57 The mnogosearch system is a complete world wide web indexing and
58 searching system for a small domain or intranet. This system is not
59 meant to replace the need for powerful internet-wide search systems
60 like Lycos, Infoseek, Webcrawler and AltaVista. Instead it is meant to
61 cover the search needs for a single company, campus, or even a
62 particular sub section of a web site. Features:
65 - http: (and ftp: - via proxy) URL schemaa
68 - support for ssl (https://)
69 - limiting queries to one hostname by sth like this: <INPUT
70 TYPE=HIDDEN NAME=ul VALUE=http://www.something.com/>
71 - it's posilble to run indexers on several diffrent (theoreticaly 128)
72 hosts, and gather information on one of them, reindexing proceses make
73 no harm to avalibility of search engine. See cachemode.txt
75 As opposed to some WAIS-based or web-server based search engines,
76 mnogsearch can span several web servers at a site. The type of these
77 different web servers doesn't matter as long as they understand the
78 HTTP 1.0 protocol. Mnogosearch supports also virtual domains.
81 Mnogosearch jest kompletnym systemem indeksuj±cym i przeszukuj±cym WWW
82 dla ma³ych domen oraz intranetu. System nie zosta³ opracowany jako
83 wielki system typu Lycos, Infoseek WebCrawler i AltaVista. Natomiast
84 nadaje siê do zastosowania w pojedynczej firmie, kampusie lub
85 jakiejkolwiek stronie WWW. Zalety:
86 - przeszukiwanie znaczników MP3,
87 - niusów (Server news://localhost/pl/),
88 - htdb czyli baz danych udostêpnianych przez WWW/CGI. (HTDBList SELECT
89 \ concat("http://search.mnogo.ru/board/message.php?id=",id) \ FROM
90 udm.messages LIMIT 2))
91 - zawarto¶ci serwerów FTP (rada za 2gr: "Index no" dla serwera FTP
92 spowoduje nie indeksowanie *zawarto¶ci* plików na nim siê
94 - wyszukiwanie w zwyk³ych URL-ach http://
95 - wsparcie dla SSL (https://)
96 - wyszukiwanie w mirrorach (równie¿ lokalnych) odleg³ych sieci
97 - zgadywanie zestawu znaków
98 - zewnêtrzne przetwarzacze dokumentów na potrzeby indeksowania
99 - ograniczanie zapytañ do jednej nazwy hosta: <INPUT TYPE=HIDDEN
100 NAME=ul VALUE=http://www.something.com/>
101 - kategoryzacja witryny (doc/categories.txt)
102 - mo¿liwe jest uruchomienie kilku procesów indeksuj±cych na kilku
103 (teoretycznie 128) hostach i trzymanie bazy na jednym z nich,
104 reindeksacja nie powoduje wtedy niedostêpno¶ci wyszukiwarki.
105 Przeczytaj cachemode.txt
107 W odró¿nieniu od innych systemów bazuj±cych na WAIS-ie lub serwerach
108 WWW, mnogosearch mo¿e ³±czyæ kilka serwerów WWW w jednym miejscu. Typ
109 serwera nie ma znaczenia, dopóki pracuje on zgodnie z protoko³em HTTP
110 1.0. Pakiet wspó³pracuje równie¿ z domenami wirtualnymi.
113 Summary: mnogosearch library
114 Summary(pl): Biblioteka mnogosearch
118 This package contains mnogosearch library files.
120 %description lib -l pl
121 Ten pakiet zawiera pliki biblioteki mnogosearch.
124 Summary: Include files for mnogosearch
125 Summary(pl): Pliki nag³ówkowe mnogosearch
126 Group: Development/Libraries
127 Requires: %{name}-lib = %{version}-%{release}
128 %{?with_expat:Requires: expat-devel}
129 %{?with_freetds:Requires: freetds-devel}
130 %{?with_iodbc:Requires: libiodbc-devel}
131 %{?with_mysql:Requires: mysql-devel}
132 %{?with_ssl:Requires: openssl-devel}
133 %{?with_pgsql:Requires: postgresql-devel}
134 %{?with_unixodbc:Requires: unixODBC-devel}
138 This package contains mnogosearch development files.
140 %description devel -l pl
141 Pliki dla programistów u¿ywaj±cych mnogosearch.
144 Summary: mnogosearch static libraries
145 Summary(pl): Biblioteki statyczne mnogosearch
146 Group: Development/Libraries
147 Requires: %{name}-devel = %{version}-%{release}
150 This package contains static libraries of mnogosearch.
152 %description static -l pl
153 Ten pakiet zawiera statyczne biblioteki mnogosearch.
161 find . -type d -name CVS | xargs rm -rf
163 %{__aclocal} -I build/m4
167 --datadir=%{_ourdatadir} \
168 DOCBOOKSTYLE="/usr/share/sgml/docbook/dsssl-stylesheets" \
169 --enable-syslog=LOG_LOCAL6 \
170 --enable-charset-guesser \
171 %{?with_chasen:--enable-chasen} \
175 --enable-linux-pthreads \
176 --enable-news-extension \
180 --with-cgi-bin-dir=%{cgidir} \
181 --with-config-dir=%{_sysconfdir}/http/%{name} \
182 %{?with_expat:--with-expat} \
183 --with-image-dir=%{htmldir}/%{name} \
184 %{?with_freetds:--with-freetds} \
185 %{?with_iodbc:--with-iodbc} \
186 %{?with_mysql:--with-mysql} \
187 %{?with_ssl:--with-openssl} \
188 %{?with_pgsql:--with-pgsql} \
189 --with-search-dir=%{htmldir} \
190 %{?with_unixodbc:--with-unixODBC} \
193 # --with-readline (for SQL monitor) ?
194 # --wiht-extra-charsets=big5,gb2312,gbk,japanese,euc-kr,gujarati,tscii ?
198 # enable automatic Russian charset guesser :-]
199 # wy uze www.linux.ru procitacli sewodnja?
201 # --with-solid[=DIR] Include Solid support. DIR is the Solid base
202 # --with-openlink[=DIR] Include OpenLink ODBC support.
203 # --with-easysoft[=DIR] Include EasySoft ODBC support.
204 # --with-sapdb[=DIR] Include SAPDB support. DIR is the SAPDB base
205 # --with-ibase[=DIR] Include InterBase support. DIR is the InterBase
206 # --with-ctlib[=DIR] Include Ct-Lib support.
207 # --with-freetds[=DIR] Include FreeTDS Ct-Lib support.
208 # --with-oracle7[=DIR] Include Oracle 7.3 support. DIR is the Oracle
209 # --with-oracle8[=DIR] Include Oracle8 support. DIR is the Oracle
210 # --with-oracle8i[=DIR] Include Oracle8i support. DIR is the Oracle
212 # FIXME: add selection of storage method, spliting into %{name}-common & %{name}-$DB_NAME
215 rm -rf $RPM_BUILD_ROOT
216 install -d $RPM_BUILD_ROOT{%{_localstatedir},%{htmldir},%{cgidir},%{_sysconfdir}} \
217 $RPM_BUILD_ROOT{/etc/cron.daily,%{_infodir}}
220 DESTDIR=$RPM_BUILD_ROOT \
221 doc_FILES='$(HTML_ALL)'
223 ln -sf %{_docdir}/%{name}-%{version}/html \
224 $RPM_BUILD_ROOT%{htmldir}/mnogodoc
226 mv -f $RPM_BUILD_ROOT%{_bindir}/*.cgi \
227 $RPM_BUILD_ROOT%{cgidir}
229 install %{SOURCE1} $RPM_BUILD_ROOT/etc/cron.daily/mnogosearch-dbgen
232 cp -af doc/*.{html,css} html
234 cd $RPM_BUILD_ROOT%{_sysconfdir}
237 mv -f $f `basename $f -dist`
240 rm -rf $RPM_BUILD_ROOT%{_prefix}/doc
243 rm -rf $RPM_BUILD_ROOT
247 Please see docs (%{_docdir}/%{name}-%{version}),
248 then read how to setup db connection, and put line like this
249 "pgsql://user:password@/dbname/" into %{_sysconfdir}, then setup database
250 using "indexer -Ecreate" command.
253 %post lib -p /sbin/ldconfig
254 %postun lib -p /sbin/ldconfig
257 %defattr(644,root,root,755)
258 %doc ChangeLog README TODO html doc/samples
259 %attr(755,root,root) %{_sbindir}/*
260 %attr(755,root,root) %{_bindir}/*
261 %attr(755,root,root) %{cgidir}/*
264 %dir %{_localstatedir}
265 %attr(775,root,http) %{_localstatedir}/cache
267 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
268 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.freq
269 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.htm
270 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/locals
271 %dir %{_sysconfdir}/langmap
272 %dir %{_sysconfdir}/stopwords
273 %dir %{_sysconfdir}/synonym
274 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*/*
275 %config(noreplace) %attr(750,root,root) /etc/cron.daily/*
279 %defattr(644,root,root,755)
280 %attr(755,root,root) %{_libdir}/lib*-*.so
283 %defattr(644,root,root,755)
284 %attr(755,root,root) %{_bindir}/udm-config
285 %attr(755,root,root) %{_libdir}/libmnogosearch.so
286 %attr(755,root,root) %{_libdir}/libmnogocharset.so
291 %defattr(644,root,root,755)