Blob Blame History Raw
%define name		bsf
%define version		2.3.0
%define release		6jpp_1fc
%define section		free

Name:		%{name}
Version:	%{version}
Release:	%{release}
Epoch:		0
Summary:        Bean Scripting Framework
License:        Apache License
Url:            http://jakarta.apache.org/bsf/
Group:          Development/Libraries/Java
Source0:        %{name}-src-%{version}-RHCLEAN.tar.bz2
Patch1:		bsf-javac.patch
BuildRequires:  ant
BuildRequires:	servletapi5
BuildRequires:  xalan-j2
BuildArch:      noarch
BuildRoot:      %{_tmppath}/%{name}-%{version}-buildroot

%description
Bean Scripting Framework (BSF) is a set of Java classes which provides
scripting language support within Java applications, and access to Java
objects and methods from scripting languages. BSF allows one to write
JSPs in languages other than Java while providing access to the Java
class library. In addition, BSF permits any Java application to be
implemented in part (or dynamically extended) by a language that is
embedded within it. This is achieved by providing an API that permits
calling scripting language engines from within Java, as well as an
object registry that exposes Java objects to these scripting language
engines.

BSF supports several scripting languages currently:
* Javascript (using Rhino ECMAScript, from the Mozilla project)
* Python (using either Jython or JPython)
* Tcl (using Jacl)
* NetRexx (an extension of the IBM REXX scripting language in Java)
* XSLT Stylesheets (as a component of Apache XML project's Xalan and
Xerces)

In addition, the following languages are supported with their own BSF
engines:
* Java (using BeanShell, from the BeanShell project)
* JRuby
* JudoScript

%package javadoc
Summary:	Javadoc for %{name}
Group:		Development/Documentation

%description javadoc
Javadoc for %{name}.

%prep
rm -rf $RPM_BUILD_ROOT
%setup -q
%patch1 -p1
# remove all binary libs
find . -name "*.jar" -exec rm -f {} \;
find . -name "*.zip" -exec rm -f {} \;
rmdir $RPM_BUILD_DIR/bsf

%build
export CLASSPATH=\
%{_javadir}/xalan-j2.jar:\
%{_javadir}/servletapi5.jar:\
%{_javadir}/jspapi.jar
cd src
ant realclean
ant compile
rm -rf bsf/src/org/apache/bsf/engines/java
ant javadocs

%install
# jar
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
install -m 644 src/build/lib/%{name}.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do \
ln -sf ${jar} ${jar/-%{version}/}; done)
# javadoc
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
cp -pr src/build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
(cd $RPM_BUILD_ROOT%{_javadocdir} && ln -sf %{name}-%{version} %{name})

# docs
cp -f src/{AUTHORS,BUILDING,CHANGES,CHANGES.old,INSTALL,README,TODO} .

%clean
rm -rf $RPM_BUILD_ROOT

%post javadoc
rm -f %{_javadocdir}/%{name}
ln -s %{name}-%{version} %{_javadocdir}/%{name}

%postun javadoc
if [ $1 -eq 0 ]; then
  rm -f %{_javadocdir}/%{name}
fi

%files
%defattr(-,root,root)
%doc license.txt AUTHORS BUILDING CHANGES CHANGES.old INSTALL README TODO
%{_javadir}/*

%files javadoc
%defattr(-,root,root)
%dir %{_javadocdir}/%{name}-%{version}
%{_javadocdir}/%{name}-%{version}/*
%ghost %{_javadocdir}/%{name}

%changelog
* Wed Jun 15 2005 Gary Benson <gbenson@redhat.com> 0:2.3.0-6jpp_1fc
- Build into Fedora.

* Wed Jun  8 2005 Gary Benson <gbenson@redhat.com>
- Remove jarfiles and zipfiles from the tarball.

* Thu Jun  2 2005 Gary Benson <gbenson@redhat.com>
- Build without Jython or Rhino for now.
- Build with servletapi5.
- Avoid Sun-specific classes.

* Thu Mar  4 2004 Frank Ch. Eigler <fche@redhat.com> 0:2.3.0-6jpp_1rh
- RH vacuuming

* Thu Oct 09 2003 David Walluck <david@anti-microsoft.org> 0:2.3.0-6jpp
- add javadoc symlinks
- change Apache Software License to Apache License

* Tue Aug 26 2003 David Walluck <david@anti-microsoft.org> 0:2.3.0-5jpp
- remove all Requires

* Fri Apr 12 2003 David Walluck <david@anti-microsoft.org> 0:2.3.0-4jpp
- fix strange permissions

* Fri Apr 11 2003 David Walluck <david@anti-microsoft.org> 0:2.3.0-3jpp
- rebuild for jpackage 1.5

* Wed Jan 22 2003 David Walluck <david@anti-microsoft.org> 2.3.0-2jpp
- Requires/BuildRequires: xalan-j2
- update %%description

* Mon Jan 13 2003 David Walluck <david@anti-microsoft.org> 2.3.0-1jpp
- version 2.3.0 (first jakarta release)

* Tue May 07 2002 Guillaume Rousse <guillomovitch@users.sourceforge.net> 2.2-5jpp 
- vendor, distribution, group tags
- versioned dir for javadoc
- section macro

* Sat Dec 1 2001 Guillaume Rousse <guillomovitch@users.sourceforge.net> 2.2-4jpp
- javadoc in javadoc package

* Wed Nov 21 2001 Christian Zoffoli <czoffoli@littlepenguin.org> 2.2-3jpp
- removed packager tag
- new jpp extension
- fixed url

* Sat Oct 6 2001 Guillaume Rousse <guillomovitch@users.sourceforge.net> 2.2-2jpp
- first unified release
- used original tarball
- s/jPackage/JPackage

* Thu Aug 30 2001 Guillaume Rousse <guillomovitch@users.sourceforge.net> 2.2-1jpp
- first Mandrake release