X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=mnogosearch.spec;h=b4b304c10e0b6134cb61bb2a87a62e8fa5ead83c;hb=f6e68ced6fc433aace720f920213f3721e3a91da;hp=117b873ea3a35cb71ef369d22085e1058010c11e;hpb=651b0209a8f33597f60c764656eb8045879f6bf7;p=packages%2Fmnogosearch.git diff --git a/mnogosearch.spec b/mnogosearch.spec index 117b873..b4b304c 100644 --- a/mnogosearch.spec +++ b/mnogosearch.spec @@ -1,53 +1,60 @@ +# TODO: webapps? # # Conditional build: -%bcond_with chasen # use ChaSen Japanese morphological analisys system - # (not tested, maybe on by default?) -%bcond_without expat # without XML support (using expat library) +%bcond_with chasen # use ChaSen Japanese morphological analysis system (not tested, maybe on by default?) %bcond_without ssl # without SSL support (using OpenSSL) +%bcond_with mecab # use mecab Japanese morphological system # databases -%bcond_with mysql # support for MySQL +%bcond_without mysql # support for MySQL %bcond_without pgsql # support for PostgreSQL +%bcond_with sqlite # support for SQLite 2.x +%bcond_without sqlite3 # support for SQLite 3.x +%bcond_with ibase # support for InterBase/Firebird # databases through ODBC %bcond_with iodbc # with ODBC support through iODBC %bcond_with unixodbc # with ODBC support through unixODBC -# +# databases through FreeTDS +%bcond_without freetds # support for Sybase/MS SQL through FreeTDS + Summary: Another one web indexing and searching system for a small domain or intranet -Summary(pl): Kolejny System indeksowania i przeszukiwania www dla ma³ych domen i intranetu +Summary(pl.UTF-8): Kolejny system indeksowania i przeszukiwania WWW dla małych domen i intranetu Name: mnogosearch -Version: 3.2.18 -Release: 1 +Version: 3.3.14 +Release: 3 License: GPL v2+ Group: Networking/Utilities -#Source0Download: http://www.mnogosearch.ru/download.html -Source0: http://www.mnogosearch.ru/Download/%{name}-%{version}.tar.gz -# Source0-md5: b72b5157e4aae232a70533ccc589ba14 -Source1: %{name}-gethostnames -Source2: %{name}-dbgen +# Source0Download: http://www.mnogosearch.org/download.html +Source0: http://www.mnogosearch.org/Download/%{name}-%{version}.tar.gz +# Source0-md5: caf042f31134ae1304f0963a9f4964a9 +Source1: %{name}-dbgen Patch0: %{name}-acfixes.patch -URL: http://www.mnogosearch.ru/ +Patch1: %{name}-as_needed-fix.patch +URL: http://www.mnogosearch.org/ +%{?with_ibase:BuildRequires: Firebird-devel} BuildRequires: autoconf BuildRequires: automake %{?with_chasen:BuildRequires: chasen-devel} -%{?with_expat:BuildRequires: expat-devel} +%{?with_freetds:BuildRequires: freetds-devel} %{?with_iodbc:BuildRequires: libiodbc-devel} BuildRequires: libtool +%{?with_mecab:BuildRequires: mecab-devel} %{?with_mysql:BuildRequires: mysql-devel} %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d} %{?with_pgsql:BuildRequires: postgresql-devel} +%{?with_sqlite:BuildRequires: sqlite-devel} +%{?with_sqlite3:BuildRequires: sqlite3-devel} %{?with_unixodbc:BuildRequires: unixODBC-devel} BuildRequires: zlib-devel -PreReq: webserver -#%{?with_pgsql:PreReq: postgresql-clients} -Requires: %{name}-lib = %{version} -Obsoletes: udmsearch +Requires: %{name}-lib = %{version}-%{release} +Requires: webserver Obsoletes: aspseek -Obsoletes: %{name}-stored +Obsoletes: mnogosearch-stored +Obsoletes: udmsearch BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _sysconfdir /etc/%{name} %define _localstatedir /var/lib/mnogosearch -%define htmldir /home/services/httpd/html -%define cgidir /home/services/httpd/cgi-bin +%define cgidir /usr/lib/cgi-bin %description The mnogosearch system is a complete world wide web indexing and @@ -56,206 +63,161 @@ meant to replace the need for powerful internet-wide search systems like Lycos, Infoseek, Webcrawler and AltaVista. Instead it is meant to cover the search needs for a single company, campus, or even a particular sub section of a web site. Features: - - mp3 tag info - - news searching(?) - - http: (and ftp: - via proxy) URL schemaa - - charset guesser - - externel parsers - - support for ssl (https://) - - limiting queries to one hostname by sth like this: - - it's posilble to run indexers on several diffrent (theoreticaly 128) - hosts, and gather information on one of them, reindexing proceses make - no harm to avalibility of search engine. See cachemode.txt +- MP3 tag info +- news searching(?) +- http: (and ftp: - via proxy) URL schemaa +- charset guesser +- externel parsers +- support for ssl (https://) +- limiting queries to one hostname by sth like this: +- it's possilble to run indexers on several different (theoreticaly + 128) hosts, and gather information on one of them, reindexing proceses + make no harm to avalibility of search engine. See cachemode.txt As opposed to some WAIS-based or web-server based search engines, mnogsearch can span several web servers at a site. The type of these different web servers doesn't matter as long as they understand the HTTP 1.0 protocol. Mnogosearch supports also virtual domains. -%description -l pl -Mnogosearch jest kompletnym systemem indeksuj±cym i przeszukuj±cym www -dla ma³ych domen oraz intranetu. System nie zosta³ opracowany jako +%description -l pl.UTF-8 +Mnogosearch jest kompletnym systemem indeksującym i przeszukującym WWW +dla małych domen oraz intranetu. System nie został opracowany jako wielki system typu Lycos, Infoseek WebCrawler i AltaVista. Natomiast -nadaje siê do zastosowania w pojedynczej firmie, kampusie lub -jakiejkolwiek stronie www. Zalety: - - przeszukiwaie tagów mp3, - - niusów (Server news://localhost/pl/), - - htdb czyli baz danych udostêpnianych przez www/cgi. (HTDBList SELECT - \ concat("http://search.mnogo.ru/board/message.php?id=",id) \ FROM - udm.messages LIMIT 2)) - - zawarto¶ci serwerów ftp (rada za 2gr: "Index no" dla serwera ftp - spowoduje nie indexowanie *zawarto¶ci* plików na nim siê znajduj±cych) - - wyszukiwanie w zwyk³ych URL-ach http:// - - wsparcie dla SSL (https://) - - wyszukiwanie w mirrorach (równie¿ lokalnych) odleg³ych sieci - - zgadywanie zestawu znaków - - zewnêtrzne przetwarzacze dokumentów na potrzeby indeksowania - - ograniczanie zapytañ do jednej nazwy hosta: - - kategoryzacja witryny (doc/categories.txt) - - mo¿liwe jest uruchomienie kilku procesów indeksuj±cych na kilku - (teoretycznie 128) hostach i trzymanie bazy na jednym z nich, - reindeksacja nie powoduje wtedy niedostêpno¶ci wyszukiwarki. - Przeczytaj cachemode.txt - -W odró¿nieniu od innych systemów bazuj±cych na WAIS-ie lub serwerach -www, mnogosearch mo¿e ³±czyæ kilka serwerów www w jednym miejscu. Typ -serwera nie ma znaczenia, dopóki pracuje on zgodnie z protoko³em HTTP -1.0. Pakiet wspó³pracuje równie¿ z domenami wirtualnymi. +nadaje się do zastosowania w pojedynczej firmie, kampusie lub +jakiejkolwiek stronie WWW. Zalety: +- przeszukiwanie znaczników MP3, +- niusów (Server news://localhost/pl/), +- htdb czyli baz danych udostępnianych przez WWW/CGI. (HTDBList SELECT + \ concat("http://search.mnogo.ru/board/message.php?id=",id) \ FROM + udm.messages LIMIT 2)) +- zawartości serwerów FTP (rada za 2gr: "Index no" dla serwera FTP + spowoduje nie indeksowanie *zawartości* plików na nim się + znajdujących) +- wyszukiwanie w zwykłych URL-ach http:// +- wsparcie dla SSL (https://) +- wyszukiwanie w mirrorach (również lokalnych) odległych sieci +- zgadywanie zestawu znaków +- zewnętrzne przetwarzacze dokumentów na potrzeby indeksowania +- ograniczanie zapytań do jednej nazwy hosta: +- kategoryzacja witryny (doc/categories.txt) +- możliwe jest uruchomienie kilku procesów indeksujących na kilku + (teoretycznie 128) hostach i trzymanie bazy na jednym z nich, + reindeksacja nie powoduje wtedy niedostępności wyszukiwarki. + Przeczytaj cachemode.txt + +W odróżnieniu od innych systemów bazujących na WAIS-ie lub serwerach +WWW, mnogosearch może łączyć kilka serwerów WWW w jednym miejscu. Typ +serwera nie ma znaczenia, dopóki pracuje on zgodnie z protokołem HTTP +1.0. Pakiet współpracuje również z domenami wirtualnymi. %package lib Summary: mnogosearch library -Summary(pl): Biblioteka mnogosearch +Summary(pl.UTF-8): Biblioteka mnogosearch Group: Libraries %description lib This package contains mnogosearch library files. -%description lib -l pl +%description lib -l pl.UTF-8 Ten pakiet zawiera pliki biblioteki mnogosearch. %package devel Summary: Include files for mnogosearch -Summary(pl): Pliki nag³ówkowe mnogosearch +Summary(pl.UTF-8): Pliki nagłówkowe mnogosearch Group: Development/Libraries -Requires: %{name}-lib = %{version} -%{?with_expat:Requires: expat-devel} +Requires: %{name}-lib = %{version}-%{release} +%{?with_ibase:Requires: Firebird-devel} +%{?with_chasen:Requires: chasen-devel} +%{?with_freetds:Requires: freetds-devel} %{?with_iodbc:Requires: libiodbc-devel} +%{?with_mecab:Requires: mecab-devel} %{?with_mysql:Requires: mysql-devel} %{?with_ssl:Requires: openssl-devel} %{?with_pgsql:Requires: postgresql-devel} +%{?with_sqlite:Requires: sqlite-devel} +%{?with_sqlite3:Requires: sqlite3-devel} %{?with_unixodbc:Requires: unixODBC-devel} Requires: zlib-devel %description devel This package contains mnogosearch development files. -%description devel -l pl -Pliki dla programistów u¿ywaj±cych mnogosearch. +%description devel -l pl.UTF-8 +Pliki dla programistów używających mnogosearch. %package static Summary: mnogosearch static libraries -Summary(pl): Biblioteki statyczne mnogosearch +Summary(pl.UTF-8): Biblioteki statyczne mnogosearch Group: Development/Libraries -Requires: %{name}-devel = %{version} +Requires: %{name}-devel = %{version}-%{release} %description static This package contains static libraries of mnogosearch. -%description static -l pl +%description static -l pl.UTF-8 Ten pakiet zawiera statyczne biblioteki mnogosearch. -%package pgsql -Summary: pgsql storage-support for mnogosearch -Summary(pl): Obs³uga przechowywania danych w bazie PostgreSQL -Group: Networking/Utilities -Requires: %{name} = %{version} - -%description pgsql -This package contains PostgreSQL storage support. - -Note: install will try to create tables in database mnogosearch. - -%description pgsql -l pl -Ten pakiet zawiera obs³ugê baz PostgreSQL do przechowywania -informacji. - -Instalacja tego pakietu spowoduje za³o¿enie tabel w bazie mnogosearch. - -%package stored -Summary: Deamon for saving gziped versions of documents -Summary(pl): Demon zapisuj±cy zgzipowane wersje dokumentów -Group: Development/Libraries -PreReq: rc-scripts -Requires(post,preun): /sbin/chkconfig -Requires: %{name} = %{version} - -%description stored -This package contains optional part of mnogosearch stored daemon, -which stores locally gziped versions of parsed (& indexed) html files, -news articles, etc. - -%description stored -l pl -Pakiet zawiera opcjonaln± czê¶æ mnogosearch demon stored, zajmuj±cy -siê lokalnym przechowywaniem przetworzonych (i zindeksowanych) -spakowanych wersji plików html, artyku³ów usenetu, itp. - %prep %setup -q -%patch -p1 +%patch0 -p1 +%patch1 -p1 %build find . -type d -name CVS | xargs rm -rf %{__libtoolize} -%{__aclocal} +%{__aclocal} -I build/m4 %{__autoconf} %{__automake} %configure \ DOCBOOKSTYLE="/usr/share/sgml/docbook/dsssl-stylesheets" \ + --datadir=%{_datadir}/%{name} \ --enable-syslog=LOG_LOCAL6 \ - --enable-charset-guesser \ - %{?with_chasen:--enable-chasen} \ - --enable-fast-cat \ - --enable-fast-tag \ - --enable-fast-site \ - --enable-linux-pthreads \ - --enable-news-extension \ - --enable-phrase \ - --enable-shared \ - --with-built-in \ - --with-cgi-bin-dir=%{cgidir} \ - --with-config-dir=%{_sysconfdir}/http/%{name} \ - %{?with_expat:--with-expat} \ - --with-image-dir=%{htmldir}/%{name} \ + %{?with_chasen:--with-chasen} \ + %{?with_freetds:--with-freetds} \ + %{?with_ibase:--with-ibase} \ %{?with_iodbc:--with-iodbc} \ + %{?with_mecab:--with-mecab} \ %{?with_mysql:--with-mysql} \ %{?with_ssl:--with-openssl} \ %{?with_pgsql:--with-pgsql} \ - --with-search-dir=%{htmldir} \ + %{?with_sqlite:--with-sqlite} \ + %{?with_sqlite3:--with-sqlite3} \ %{?with_unixodbc:--with-unixODBC} \ --with-zlib +# --enable-mysql-fulltext-plugin ? # --with-readline (for SQL monitor) ? # --wiht-extra-charsets=big5,gb2312,gbk,japanese,euc-kr,gujarati,tscii ? -%{__make} +%{__make} -j1 -C src libmnogocharset.la +%{__make} -j1 -# enable automatic Russian charset guesser :-] -# wy uze www.linux.ru procitacli sewodnja? - -# --with-solid[=DIR] Include Solid support. DIR is the Solid base +# --with-solid[=DIR] Include Solid support. DIR is the Solid base # --with-openlink[=DIR] Include OpenLink ODBC support. # --with-easysoft[=DIR] Include EasySoft ODBC support. -# --with-sapdb[=DIR] Include SAPDB support. DIR is the SAPDB base -# --with-ibase[=DIR] Include InterBase support. DIR is the InterBase -# --with-ctlib[=DIR] Include Ct-Lib support. -# --with-freetds[=DIR] Include FreeTDS Ct-Lib support. -# --with-oracle7[=DIR] Include Oracle 7.3 support. DIR is the Oracle -# --with-oracle8[=DIR] Include Oracle8 support. DIR is the Oracle +# --with-sapdb[=DIR] Include SAPDB support. DIR is the SAPDB base +# --with-ctlib[=DIR] Include Ct-Lib support. +# --with-oracle7[=DIR] Include Oracle 7.3 support. DIR is the Oracle +# --with-oracle8[=DIR] Include Oracle8 support. DIR is the Oracle # --with-oracle8i[=DIR] Include Oracle8i support. DIR is the Oracle # # FIXME: add selection of storage method, spliting into %{name}-common & %{name}-$DB_NAME %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_localstatedir},%{htmldir},%{cgidir},%{_sysconfdir}} \ +install -d $RPM_BUILD_ROOT{%{_localstatedir},%{cgidir},%{_sysconfdir}} \ $RPM_BUILD_ROOT{/etc/cron.daily,%{_infodir}} -%{__make} install \ +%{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT \ doc_FILES='$(HTML_ALL)' -ln -sf %{_defaultdocdir}/%{name}-%{version}/html \ - $RPM_BUILD_ROOT%{htmldir}/mnogodoc - -mv -f $RPM_BUILD_ROOT%{_bindir}/*.cgi \ - $RPM_BUILD_ROOT%{cgidir} +mv -f $RPM_BUILD_ROOT%{_bindir}/search.cgi \ + $RPM_BUILD_ROOT%{cgidir}/mnogosearch.cgi -install %{SOURCE1} \ - $RPM_BUILD_ROOT/etc/cron.daily/mnogosearch-gethostnames -install -d $RPM_BUILD_ROOT/usr/src/example/mnogosearch -install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.daily/mnogosearch-dbgen +install %{SOURCE1} $RPM_BUILD_ROOT/etc/cron.daily/mnogosearch-dbgen mkdir html cp -af doc/*.{html,css} html @@ -263,67 +225,69 @@ cp -af doc/*.{html,css} html cd $RPM_BUILD_ROOT%{_sysconfdir} touch locals for f in *-dist ; do - mv -f $f `basename $f -dist` + mv -f $f `basename $f -dist` done +# packaged as %doc +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/mnogosearch + %clean rm -rf $RPM_BUILD_ROOT %post cat << EOF -Please see docs (%{_defaultdocdir}/%{name}-%{version} or http://localhost/mnogodoc), +Please see docs (%{_docdir}/%{name}-%{version}), then read how to setup db connection, and put line like this "pgsql://user:password@/dbname/" into %{_sysconfdir}, then setup database -by something like "psql < %{_defaultdocdir}/%{name}-%{version}/create/pgsql/*.txt" +using "indexer -Ecreate" command. EOF %post lib -p /sbin/ldconfig %postun lib -p /sbin/ldconfig -# can be only in some script - %post/%postun must not mess with databases -#%post pgsql -#echo "Creating database mnogosearch..." -#su postgres -c "psql -U postgres template1 < %{_docdir}/%{name}-%{version}/create/pgsql/mnogosearch-all.psql" -#echo "Mnogosearch user was created with passwd aqq123 - change it!" -# -#%postun pgsql -#echo -n 'Dropping Database mnogosearch:' -#su postgres -c "psql -U postgres template1 -c 'DROP DATABASE mnogosearch;' " - %files %defattr(644,root,root,755) %doc ChangeLog README TODO html doc/samples -# instructions for database creation -%doc create/db2 create/ibase create/mssql create/mysql create/oracle create/pgsql create/sapdb create/solid create/sybase create/virtuoso -%attr(755,root,root) %{_sbindir}/* -%attr(755,root,root) %{_bindir}/* -%attr(755,root,root) %{cgidir}/* -%{htmldir}/mnogodoc -%dir %{_localstatedir} -%attr(775,root,http) %{_localstatedir}/cache -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.conf -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.freq -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.htm -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/locals +%attr(755,root,root) %{_sbindir}/indexer +%attr(755,root,root) %{_bindir}/mconv +%attr(755,root,root) %{_bindir}/mguesser +%attr(755,root,root) %{cgidir}/mnogosearch.cgi +%{_datadir}/%{name} +%attr(775,root,http) %dir %{_localstatedir} +%dir %{_sysconfdir} +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/indexer.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/langmap.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/stopwords.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.freq +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/search.htm +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/node.xml +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/locals %dir %{_sysconfdir}/langmap +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/langmap/*.lm %dir %{_sysconfdir}/stopwords +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/stopwords/*.sl %dir %{_sysconfdir}/synonym -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*/* -%config(noreplace) %attr(750,root,root) /etc/cron.daily/* -%{_mandir}/man?/* +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/synonym/*.syn +%config(noreplace) %attr(750,root,root) /etc/cron.daily/mnogosearch-dbgen +%{_mandir}/man1/indexer.1* +%{_mandir}/man5/indexer.conf.5* %files lib %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/lib*-*.so +%attr(755,root,root) %{_libdir}/libmnogocharset-3.3.so +%attr(755,root,root) %{_libdir}/libmnogosearch-3.3.so %files devel %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/udm-config -%attr(755,root,root) %{_libdir}/libmnogosearch.so %attr(755,root,root) %{_libdir}/libmnogocharset.so -%{_libdir}/lib*.la -%{_includedir}/* +%attr(755,root,root) %{_libdir}/libmnogosearch.so +%{_libdir}/libmnogocharset.la +%{_libdir}/libmnogosearch.la +%{_includedir}/udmsearch.h +%{_includedir}/udm_*.h %files static %defattr(644,root,root,755) -%{_libdir}/lib*.a +%{_libdir}/libmnogocharset.a +%{_libdir}/libmnogosearch.a