Search
j0ke.net Open Build Service
>
Projects
>
server:search
>
hyperestraier
> Changes
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
Changes of Revision 8
[-]
[+]
Added
hyperestraier.spec
@@ -0,0 +1,364 @@ +# norootforbuild + +%define _prefix /usr + +%if %suse_version >= 930 && %suse_version <= 1010 +%define has_java 1 +%endif +%if %suse_version >= 1000 +%define has_ruby_devel 1 +%endif + +Name: hyperestraier +Version: 1.4.10 +%define wrappers_version 0.0.15 +%define qdbm_version 1.8.65 +Release: 0 +Summary: Full-Text Search System for Communities +Source: http://hyperestraier.sourceforge.net/hyperestraier-%{version}.tar.gz +Source1: http://hyperestraier.sourceforge.net/binding/hyper_estraier_wrappers-%{wrappers_version}.tar.gz +Patch1: %{name}-javahome.diff +Patch2: %{name}-wrappers-python.diff +Patch3: %{name}-wrappers-perl.diff +Patch4: %{name}-wrappers-ruby.diff +Patch5: hyperestraier-fix-paths.patch +URL: http://hyperestraier.sourceforge.net/ +Group: Productivity/Networking/Web/Utilities +License: LGPL +BuildRoot: %{_tmppath}/build-%{name}-%{version} +BuildRequires: qdbm qdbm-devel >= %{qdbm_version} +BuildRequires: make gcc gcc-c++ libstdc++ libstdc++-devel zlib zlib-devel +BuildRequires: swig +%if %{?has_java:1}0 +BuildRequires: jpackage-utils update-alternatives +%if %suse_version >= 930 +BuildRequires: java-1_5_0-sun java-1_5_0-sun-devel +%else +BuildRequires: java-1_4_2-sun java-1_4_2-sun-devel +%endif +%define java_home %{_libdir}/jvm/java +%endif +BuildRequires: perl python python-devel ruby +%if %{?has_ruby_devel:1}0 +BuildRequires: ruby-devel +%endif +BuildRequires: autoconf automake libtool + +%description +Hyper Estraier is a full-text search system. You can search lots of documents +for some documents including specified words. If you run a web site, it is +useful as your own search engine for pages in your site. Also, it is useful as +search utilities of mail boxes and file servers. + +The characteristic of Hyper Estraier is the following. +- High performance of search +- High scalability of target documents +- Perfect recall ratio by N-gram method +- Phrase search, attribute search, and similarity search +- Multilingualism with Unicode +- Independent of file format and repository +- Simple and powerful API +- Supporting P2P architecture + +Hyper Estraier is an open-source software released under the terms of the GNU +Lesser General Public License. + +%package devel +Summary: Development environment for hyperestraier +Requires: hyperestraier = %{version} +Group: Development/Libraries/C and C++ + +%description devel +Development environment for hyperestraier + +%package -n ruby-%{name} +Summary: Ruby bindings for hyperestraier +Requires: hyperestraier = %{version} +Requires: ruby ruby-qdbm +Provides: %{name}-ruby = %{version} +Group: Development/Libraries/Ruby + +%description -n ruby-%{name} +Ruby bindings for hyperestraier + +%if %{?has_java:1}0 + +%package java-native +Summary: Java JNI bindings for hyperestraier +Requires: hyperestraier = %{version} +Requires: java qdbm-java +Group: Development/Libraries/Java + +%description java-native +Java JNI bindings for hyperestraier + +%package java +Summary: Pure Java bindings for hyperestraier +Requires: hyperestraier = %{version} +Requires: java qdbm-java +Group: Development/Libraries/Java + +%description java +Pure Java bindings for hyperestraier + +%endif # has_java + +%package -n python-%{name} +Summary: Python Bindings for hyperestraier +Requires: python >= %{py_ver} +Requires: hyperestraier = %{version} +Provides: %{name}-python = %{version} +Group: Development/Libraries/Python + +%description -n python-%{name} +Python wrapper/bindings for hyperestraier + +%package -n perl-%{name} +Summary: Perl Bindings for hyperestraier +Requires: perl +Requires: hyperestraier = %{version} +Requires: perl-qdbm +Provides: %{name}-perl = %{version} +Group: Development/Librairies/Perl + +%description -n perl-%{name} +Perl wrapper/bindings for hyperestraier + +%if %suse_version >= 930 +%debug_package +%endif +%prep +%setup -q -b 1 +%patch1 +pushd "../hyper_estraier_wrappers-%{wrappers_version}" +%patch2 +%patch3 +%patch4 +popd +%patch5 + +%build +autoreconf -fiv + +%configure \ + --enable-zlib \ + --disable-mecab + +pushd rubynative +%configure +popd + +%if %{?has_java:1}0 +pushd javanative +export JAVA_HOME="%{java_home}" +export MYJAVAHOME=$JAVA_HOME +%configure +popd +pushd javapure +export JAVA_HOME="%{java_home}" +export MYJAVAHOME=$JAVA_HOME +%configure +popd +%endif # has_java + +%__grep -l -r /usr/local . | sort | uniq \ +| while read docfile; do + %__sed -i.orig -e 's|/usr/local|/usr|g' "$docfile" +done + +%__make %{?jobs:-j%{jobs}} +%__make %{?jobs:-j%{jobs}} -C rubynative + +%if %{?has_java:1}0 +export JAVA_HOME="%{java_home}" +%{__make} -C javanative \ + MYJAVAHOME="%{java_home}" \ + JAVAC="%{java_home}/bin/javac" \ + JAR="%{java_home}/bin/jar" \ + JAVAH="%{java_home}/bin/javah" \ + JAVADOC="%{java_home}/bin/javadoc" \ + JAVARUN="%{java_home}/bin/java" +%__make -C javapure \ + MYJAVAHOME="%{java_home}" \ + JAVAC="%{java_home}/bin/javac" \ + JAR="%{java_home}/bin/jar" \ + JAVAH="%{java_home}/bin/javah" \ + JAVADOC="%{java_home}/bin/javadoc" \ + JAVARUN="%{java_home}/bin/java" +%endif # has_java + +# wrappers are built after hyperestraier makeinstall + +%install +%makeinstall +%__make -C rubynative DESTDIR="%{buildroot}" install + +%if %{?has_java:1}0 +export JAVA_HOME="%{java_home}" +%__make -C javanative DESTDIR="%{buildroot}" install +%__install -d -m 0755 "%{buildroot}%{_javadir}"