File jasper5.spec of Package jasper5
#
# spec file for package jasper5 (Version 5.0.19)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: jasper5
BuildRequires: ant jakarta-commons-collections jakarta-commons-daemon jakarta-commons-el jakarta-commons-logging java2-devel-packages junit servletapi5 servletapi5-javadoc xalan-j2 xml-commons-apis
%define full_name jakarta-%{name}
%define majversion 5.0
%define release 1jpp
%define section free
%define jname jasper5
%define tcuid 91
%define packname jakarta-tomcat-%{version}
%define packdname jakarta-tomcat-%{version}-src
%define jpackdname jakarta-tomcat-connectors-%{version}-src
# FHS 2.2 compliant tree structure
# see http://www.pathname.com/fhs/2.2/
%define confdir %{_sysconfdir}/%{name}
%define logdir %{_localstatedir}/log/%{name}
%define homedir %{_datadir}/%{name}
%define bindir %{_datadir}/%{name}/bin
%define tempdir %{_localstatedir}/cache/%{name}/temp
%define workdir %{_localstatedir}/cache/%{name}/work
%define appdir %{_localstatedir}/lib/%{name}/webapps
%define serverdir %{_localstatedir}/lib/%{name}/server
%define commondir %{_localstatedir}/lib/%{name}/common
%define shareddir %{_localstatedir}/lib/%{name}/shared
Summary: Apache JSP Engine, RI for Servlet JSP 2.0 API
Version: 5.0.19
Release: 338
License: Apache-2.0
Group: Development/Libraries/Java
Url: http://jakarta.apache.org/tomcat/
BuildArch: noarch
Source: http://jakarta.apache.org/builds/jakarta-tomcat-5.0/release/v%{version}/src/%{packdname}.tar.gz
Patch0: jasper5_command.patch
Patch1: jasper5_build150.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: ant >= 1.5.4, jpackage-utils >= 1.5.32
Requires: servletapi5 >= 5.0.18
Requires: xerces-j2 >= 2.6.0
Requires: xml-commons-apis >= 1.0
Requires: jakarta-commons-el >= 1.0
Requires: jakarta-commons-collections >= 2.1
Requires: jakarta-commons-logging >= 1.0.3
Requires: jakarta-commons-daemon >= 1.0
BuildRequires: jpackage-utils >= 1.5.32
%description
JSP engine that conforms to the JSP 2.0 specifications from Java
Software.
%package javadoc
License: Apache-2.0
Summary: Javadoc for jasper5
Group: Development/Libraries/Java
PreReq: coreutils
%description javadoc
JSP engine that conforms to the JSP 2.0 specifications from Java
Software.
This package contains the javadoc documentation for Jasper.
%prep
rm -rf $RPM_BUILD_DIR/%{name}-%{version}
%setup -q -c -T -a 0
cd %{packdname}
%patch0
%patch1
%build
export CLASSPATH=%(build-classpath xml-commons-apis xalan-j2 servletapi5)
# Remove pre-build jars
for dir in %{packdname} ; do
find $dir -name "*.jar" -exec rm -f {} \;
done
# build jasper 5
cd %{packdname}
pushd jakarta-tomcat-jasper/jasper2
cat > build.properties <<EOBP
ant.jar=$(build-classpath ant)
servlet-api.jar=$(build-classpath servletapi5)
jsp-api.jar=$(build-classpath jspapi)
tools.jar=%{java.home}/lib/tools.jar
xerces.jar=$(build-classpath xerces-j2)
xercesImpl.jar=$(build-classpath jaxp_parser_impl)
xmlParserAPIs.jar=$(build-classpath xml-commons-apis)
commons-el.jar=$(build-classpath commons-el)
commons-collections.jar=$(build-classpath commons-collections)
commons-logging.jar=$(build-classpath commons-logging)
commons-daemon.jar=$(build-classpath commons-daemon)
junit.jar=$(build-classpath junit)
EOBP
if ! grep -q "javac.*source=" build.xml ; then
perl -p -i -e 's|<javac |<javac source=\"1.4\" |' build.xml
perl -p -i -e 's|<javadoc |<javadoc source=\"1.4\" |' build.xml
fi
# can't use jikes to build tomcat4 (strange)
ant -Djava.home=%{java_home} -Dbuild.compiler=modern javadoc
#sed -e 's|tomcat|jasper|g' -e 's|TOMCAT|JASPER|g' build/bin/jasper.sh > build/bin/jasper.sh.mod
#cp build/bin/jasper.sh.mod build/bin/jasper.sh
popd
%install
rm -rf $RPM_BUILD_ROOT
cd %{packdname}
# bins
install -d -m 755 $RPM_BUILD_ROOT%{_bindir}
install jakarta-tomcat-jasper/jasper2/build/bin/jspc.sh \
$RPM_BUILD_ROOT%{_bindir}/jspc5.sh
install jakarta-tomcat-jasper/jasper2/build/bin/jasper.sh \
$RPM_BUILD_ROOT%{_bindir}/jasper5.sh
install jakarta-tomcat-catalina/catalina/src/bin/setclasspath.sh \
$RPM_BUILD_ROOT%{_bindir}/jasper5_classpath.sh
# jars
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
install jakarta-tomcat-jasper/jasper2/build/shared/lib/jasper-compiler.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}-compiler-%{version}.jar
ln -s %{name}-compiler-%{version}.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}-compiler.jar
install jakarta-tomcat-jasper/jasper2/build/shared/lib/jasper-runtime.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}-runtime-%{version}.jar
ln -s %{name}-runtime-%{version}.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}-runtime.jar
# javadoc
install -dm 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
cp -pr jakarta-tomcat-jasper/jasper2/build/javadoc/* \
$RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
ln -s %{name}-%{version} \
$RPM_BUILD_ROOT%{_javadocdir}/%{name}
# FHS compliance patches, not easy to track them all boys :)
#
#i=$RPM_BUILD_ROOT%{_bindir}/jasper5.sh
#perl -pi -e "s|\@\@\@TCCONF\@\@\@|%{confdir}|g;" $i
#perl -pi -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g;" $i
#perl -pi -e "s|\@\@\@TCBIN\@\@\@|%{bindir}|g;" $i
#perl -pi -e "s|\@\@\@TCCOMMON\@\@\@|%{commondir}|g;" $i
#perl -pi -e "s|\@\@\@TCSERVER\@\@\@|%{serverdir}|g;" $i
#perl -pi -e "s|\@\@\@TCSHARED\@\@\@|%{shareddir}|g;" $i
#perl -pi -e "s|\@\@\@TCAPP\@\@\@|%{appdir}|g;" $i
#perl -pi -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g;" $i
%clean
rm -rf $RPM_BUILD_ROOT
%post javadoc
rm -f %{_javadocdir}/%{name}
ln -s %{name}-%{version} %{_javadocdir}/%{name}
%postun javadoc
if [ "$1" = "0" ]; then
rm -f %{_javadocdir}/%{name}
fi
%files
%defattr(644,root,root,755)
%doc %{packdname}/jakarta-tomcat-5/{LICENSE,RELE*,RUNNING.txt,BENCHMARKS.txt}
%doc %{packdname}/jakarta-tomcat-jasper/jasper2/doc/jspc.html
%{_javadir}/*.jar
%attr(755,root,root) %{_bindir}/*.sh
%files javadoc
%defattr(0644,root,root,0755)
%{_javadocdir}/%{name}-%{version}
%ghost %doc %{_javadocdir}/%{name}
%changelog
* Wed Sep 20 2006 ro@suse.de
- set source=1.4 for java and fix code ambiguity (cf. bsc#4983021)
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Thu Sep 29 2005 dmueller@suse.de
- add norootforbuild
* Fri Mar 04 2005 skh@suse.de
- remove superfluous %%defines that might confuse autobuild
* Thu Sep 16 2004 skh@suse.de
- Fix prerequires of javadoc subpackage
* Mon Sep 06 2004 skh@suse.de
- Initial package created with version 5.0.19 (JPackage 1.5)