%define section devel
%define gcj_support 1
Summary: High-performance, full-featured text search engine
Name: lucene
Version: 1.4.3
Release: 1jpp.18
Epoch: 0
License: Apache Software License
URL: http://jakarta.apache.org/lucene/
Group: Internet/WWW/Indexing/Search
Source0: http://cvs.apache.org/dist/jakarta/lucene/lucene-1.4.3-src.tar.gz
Patch1: %{name}-nojavadoclink.patch
%if %{gcj_support}
%else
BuildArch: noarch
%endif
BuildRequires: jpackage-utils >= 0:1.5
BuildRequires: ant >= 0:1.6.2
BuildRequires: ant-junit >= 0:1.6.2
BuildRequires: junit >= 0:3.7
BuildRequires: javacc
%if %{gcj_support}
BuildRequires: java-gcj-compat-devel >= 1.0.43
Requires(post): java-1.5.0-gcj
Requires(postun): java-1.5.0-gcj
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
%description
Jakarta Lucene is a high-performance, full-featured text search engine
written entirely in Java. It is a technology suitable for nearly any
application that requires full-text search, especially cross-platform.
%package javadoc
Summary: Javadoc for Lucene
Group: Development/Documentation
Requires(post): /bin/rm,/bin/ln
Requires(postun): /bin/rm
%description javadoc
Javadoc for Lucene.
%package demo
Summary: Lucene demonstrations and samples
Group: Internet/WWW/Indexing/Search
Requires: %{name} = %{epoch}:%{version}-%{release}
%description demo
Lucene demonstrations and samples.
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=170343
%package devel
Summary: Lucene source code
Group: Internet/WWW/Indexing/Search
Requires: %{name} = %{epoch}:%{version}-%{release}
%description devel
Source code for use by Java debuggers, such as Eclipse.
# TODO: webapp
# -----------------------------------------------------------------------------
%prep
%setup -q -n %{name}-%{version}
# remove all binary libs
find . -name "*.jar" -exec rm -f {} \;
%patch1 -p0
# -----------------------------------------------------------------------------
%build
mkdir -p docs
export OPT_JAR_LIST="ant/ant-junit junit"
export CLASSPATH=
ant \
-Djavacc.home=%{_bindir}/javacc \
-Djavacc.jar=%{_javadir}/javacc.jar \
-Djavacc.jar.dir=%{_javadir} \
-Djavadoc.link=http://java.sun.com/j2se/1.4.2/docs/api/ \
package
# -----------------------------------------------------------------------------
%install
rm -rf $RPM_BUILD_ROOT
# jars
mkdir -p $RPM_BUILD_ROOT%{_javadir}
cp -p build/%{name}-1.5-rc1-dev.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
# javadoc
mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
cp -pr build/docs/api/* \
$RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
# demo
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}
cp -p build/%{name}-demos-1.5-rc1-dev.jar \
$RPM_BUILD_ROOT%{_datadir}/%{name}/%{name}-demos-%{version}.jar
%if %{gcj_support}
aot-compile-rpm
%endif
%define sourcedir %{_usrsrc}/%{name}
%define sourcefile %{name}-%{version}
currdir=${PWD##*/}
pushd ..
find $currdir -type f -name \*.java -o -name \*.jj | xargs tar uf $currdir/temp-sources.tar
popd
mkdir temp-sources
pushd temp-sources
tar xf ../temp-sources.tar
jar cf %{sourcefile}.jar $currdir
mkdir -p $RPM_BUILD_ROOT%{sourcedir}
mv %{sourcefile}.jar $RPM_BUILD_ROOT%{sourcedir}/
popd
rm -r temp-sources temp-sources.tar
# TODO: webapp: luceneweb.war / where do we install 'em?
# -----------------------------------------------------------------------------
%post javadoc
rm -f %{_javadocdir}/%{name}
ln -s %{name}-%{version} %{_javadocdir}/%{name}
%postun javadoc
if [ "$1" = "0" ]; then
rm -f %{_javadocdir}/%{name}
fi
%clean
rm -rf $RPM_BUILD_ROOT
%if %{gcj_support}
%post
/usr/bin/rebuild-gcj-db
%postun
/usr/bin/rebuild-gcj-db
%endif
# -----------------------------------------------------------------------------
%files
%defattr(0644,root,root,0755)
%doc CHANGES.txt LICENSE.txt README.txt
%{_javadir}/*
%if %{gcj_support}
%dir %{_libdir}/gcj/%{name}
%{_libdir}/gcj/%{name}/%{name}-%{version}.jar.so
%{_libdir}/gcj/%{name}/%{name}-%{version}.jar.db
%endif
%files javadoc
%defattr(0644,root,root,0755)
%{_javadocdir}/%{name}-%{version}
%files demo
%defattr(0644,root,root,0755)
%{_datadir}/%{name}
%if %{gcj_support}
%dir %{_libdir}/gcj/%{name}
%{_libdir}/gcj/%{name}/%{name}-demos-%{version}.jar.so
%{_libdir}/gcj/%{name}/%{name}-demos-%{version}.jar.db
%endif
%files devel
%defattr(0644,root,root,0755)
%{sourcedir}
# TODO: webapp
# -----------------------------------------------------------------------------
%changelog
* Sat Mar 31 2007 Thomas Fitzsimmons <fitzsim@redhat.com> - 0:1.4.3-1jpp.18
- Require java-1.5.0-gcj for post and postun.
* Tue Mar 27 2007 Deepak Bhole <dbhole@redhat.com> 1.4.3-1jpp.17
- Added unowned directory to files list. bz# 233878.
* Fri Aug 04 2006 Deepak Bhole <dbhole@redhat.com> 0:1.4.3-1jpp.14
- Added missing requirements
- Added proper post/postun's for javadoc
* Sat Jul 22 2006 Jakub Jelinek <jakub@redhat.com> - 0:1.4.3-1jpp_13fc
- Rebuilt
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 0:1.4.3-1jpp_12fc
- rebuild
* Wed Dec 21 2005 Gary Benson <gbenson@redhat.com> - 0:1.4.3-1jpp_10fc
- Rebuilt again
* Wed Dec 14 2005 Gary Benson <gbenson@redhat.com> - 0:1.4.3-1jpp_9fc
- Rebuilt for new gcj.
* Tue Dec 13 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt for new gcj
* Fri Nov 11 2005 Vadim Nasardinov <vadimn@redhat.com> - 0:1.4.3-1jpp_8fc
- BZ 170343 -- add the lucene-devel subpackage
* Wed Nov 9 2005 Andrew Overholt <overholt@redhat.com> 1.4.3-1jpp_7fc
- Bump release.
- Re-add patch to not link to external javadocs.
* Tue Nov 8 2005 Vadim Nasardinov <vadimn@redhat.com> - 0:1.4.3-1jpp_6fc
- Converted the spec file from ISO-8859-1 to UTF-8
* Mon Oct 31 2005 Andrew Overholt <overholt@redhat.com> 1.4.3-1jpp_6fc
- Bump release.
* Thu Oct 27 2005 Andrew Overholt <overholt@redhat.com> 1.4.3-1jpp_5fc
- Remove ExclusiveArch.
- Use aot-compile-rpm.
- Remove now-unnecessary patches.
* Sun Oct 09 2005 Florian La Roche <laroche@redhat.com>
- always "exit 0" the scripts
- fix the requires for post/postun for java
* Tue Jul 05 2005 Andrew Overholt <overholt@redhat.com> 1.4.3-1jpp_2fc
- Bump release for FC4 update.
* Thu Jun 09 2005 Andrew Overholt <overholt@redhat.com> 1.4.3-1jpp_1fc
- Build for Fedora.
- Add patch for rmic (rh#133180 -- gbenson). Should be fixed by forthcoming
grmic patch.
- Don't run tests until we get a patched grmic (all pass except those needing
stubs).
- Natively-compile.
- Add architectures to gcj_support block and build noarch otherwise.
- Remove Vendor and Distribution tags.
- Add patch to not link to external javadocs.
* Mon Jan 10 2005 Kaj J. Niemi <kajtzu@fi.basen.net> 0:1.4.3
- 1.4.3
* Mon Aug 23 2004 Fernando Nasser <fnasser at redhat.com> - 0:1.3-3jpp
- Rebuild with Ant 1.6.2
* Tue Jun 01 2004 Randy Watler <rwatler at finali.com> - 0:1.3-2jpp
- Upgrade to Ant 1.6.X
* Wed Jan 21 2004 David Walluck <david@anti-microsoft.org> 0:1.3-1jpp
- 1.3
* Wed Mar 26 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:1.2-2jpp
- Rebuilt for JPackage 1.5.
* Thu Mar 6 2003 Ville Skyttä <ville.skytta at iki.fi> - 1.2-1jpp
- First JPackage release.