java-saxon6/java-saxon6.spec

231 lines
6.6 KiB
RPMSpec

%define pkgver %(echo %version | tr . -)
%define javahome %{_jvmdir}/jdk
Name: java-saxon6
Version: 6.5.5
Release: 3mamba
Summary: Java XSLT processor
Group: Development/Libraries/Java
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://saxon.sourceforge.net
Source0: http://downloads.sourceforge.net/sourceforge/saxon/saxon%{pkgver}.zip
Source1: java-saxon.saxon.script
Source2: java-saxon.build.script
Source3: java-saxon.1
License: MPL
BuildRequires: apache-ant
BuildRequires: apache-fop-javadoc
BuildRequires: java-dom
BuildRequires: java-dom-javadoc
BuildRequires: jpackage-utils
#BuildRequires: java-gcj-compat
#BuildRequires: java-gcj-compat-javadoc
BuildRequires: java-openjdk
BuildRequires: xml-commons-apis
Requires: java-dom
Requires: jpackage-utils
Requires: xml-commons-apis
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
The SAXON package is a collection of tools for processing XML documents.
The main components are:
- An XSLT processor, which implements the Version 1.0 XSLT and XPath
Recommendations from the World Wide Web Consortium, found at
http://www.w3.org/TR/1999/REC-xslt-19991116 and
http://www.w3.org/TR/1999/REC-xpath-19991116 with a number of powerful
extensions. This version of Saxon also includes many of the new features
defined in the XSLT 1.1 working draft, but for conformance and portability
reasons these are not available if the stylesheet header specifies
version="1.0".
- A Java library, which supports a similar processing model to XSL, but allows
full programming capability, which you need if you want to perform complex
processing of the data or to access external services such as a relational
database.
So you can use SAXON with any SAX-compliant XML parser by writing XSLT
stylesheets, by writing Java applications, or by any combination of the two.
%package aelfred
Group: Development/Tools
Summary: Java XML parser
Requires: xml-commons-apis
%description aelfred
The SAXON package is a collection of tools for processing XML documents.
This package contains the AElfred Java XML parser from Microstar.
Technical Details
Ælfred supports the following character encodings:
ISO-8859-1, 8859_1, ISO8859_1
US-ASCII, ASCII
UTF-8, UTF8
ISO-10646-UCS-2, UTF-16, UTF-16BE, UTF-16LE
%package demo
Group: Documentation
Summary: Demos for %{name}
Requires: %{name} = %{version}-%{release}
%description demo
The SAXON package is a collection of tools for processing XML documents.
This package contains demonstrations and samples for %{name}.
%package manual
Group: Documentation
Summary: Manual for %{name}
%description manual
The SAXON package is a collection of tools for processing XML documents.
This package contains manual for %{name}.
%package javadoc
Group: Documentation
Summary: Javadoc for %{name}
Requires: java-dom-javadoc
%description javadoc
The SAXON package is a collection of tools for processing XML documents.
This package contains javadoc for %{name}.
%package jdom
Group: Development/Libraries/Java
Summary: JDOM support for %{name}
Requires: java-dom
Requires: %{name} = %{version}-%{release}
%description jdom
The SAXON package is a collection of tools for processing XML documents.
This package contains JDOM support for %{name}.
%package scripts
Group: Applications/Publishing
Summary: Utility scripts for %{name}
Requires: jpackage-utils
Requires: %{name} = %{version}-%{release}
%description scripts
The SAXON package is a collection of tools for processing XML documents.
This package contains utility scripts for %{name}.
%prep
%setup -q -c %{name}-%{version}
unzip -q source.zip
cp -p %{S:2} ./build.xml
rm -rf *.jar docs/api
%build
export JAVA_HOME=%javahome
export CLASSPATH=$(build-classpath xml-commons-apis jdom)
ant \
-Dj2se.javadoc=%{_javadocdir}/java-gcj-compat \
-Dfop.javadoc=%{_javadocdir}/fop \
-Djdom.javadoc=%{_javadocdir}/jdom
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
mkdir -p %{buildroot}%{_javadir}
install -pm 644 build/lib/saxon.jar %{buildroot}%{_javadir}/saxon-%{version}.jar
install -pm 644 build/lib/saxon-aelfred.jar \
%{buildroot}%{_javadir}/saxon-aelfred-%{version}.jar
install -pm 644 build/lib/saxon-jdom.jar \
%{buildroot}%{_javadir}/saxon-jdom-%{version}.jar
# MANIFEST-only jar
#install -pm 644 build/lib/saxon-fop.jar \
# %{buildroot}%{_javadir}/saxon-fop-%{version}.jar
(
cd %{buildroot}%{_javadir}
for jar in *-%{version}*; do
ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
done
)
mkdir -p %{buildroot}%{_javadocdir}/saxon-%{version}
cp -pr build/api/* %{buildroot}%{_javadocdir}/saxon-%{version}
ln -s saxon-%{version} %{buildroot}%{_javadocdir}/saxon
mkdir -p %{buildroot}%{_datadir}/saxon
cp -pr samples/* %{buildroot}%{_datadir}/saxon
mkdir -p %{buildroot}%{_bindir}
sed 's,__RESOLVERDIR__,%{_sysconfdir}/java/resolver,' < %{S:1} > %{buildroot}%{_bindir}/saxon
mkdir -p %{buildroot}%{_mandir}/man1
sed 's,__RESOLVERDIR__,%{_sysconfdir}/java/resolver,' < %{S:3} > %{buildroot}%{_mandir}/man1/saxon.1
ln -s %{_sysconfdir}/alternatives \
%{buildroot}%{_javadir}/jaxp_transform_impl.jar
for i in doc/*.html; do
tr -d \\r < $i > temp_file.html; mv temp_file.html $i
done
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post
update-alternatives --install %{_javadir}/jaxp_transform_impl.jar jaxp_transform_impl %{_javadir}/saxon.jar 20
%preun
{
[ $1 = 0 ] || exit 0
update-alternatives --remove jaxp_transform_impl %{_javadir}/saxon.jar
} >/dev/null 2>&1 || :
%files
%defattr(-,root,root)
%{_javadir}/saxon-%{version}.jar
%{_javadir}/saxon.jar
%ghost %{_javadir}/jaxp_transform_impl.jar
%files aelfred
%defattr(-,root,root)
%{_javadir}/saxon-aelfred-%{version}.jar
%{_javadir}/saxon-aelfred.jar
%files demo
%defattr(-,root,root)
%{_datadir}/saxon
%files manual
%defattr(-,root,root)
%doc doc/*.html
%files javadoc
%defattr(-,root,root)
%{_javadocdir}/saxon-%{version}
%{_javadocdir}/saxon
%files jdom
%defattr(-,root,root)
%{_javadir}/saxon-jdom-%{version}.jar
%{_javadir}/saxon-jdom.jar
%files scripts
%defattr(-,root,root)
%{_bindir}/saxon
%attr(0644,root,root) %{_mandir}/man1/saxon.1.gz
%changelog
* Thu Mar 24 2011 gil <puntogil@libero.it> 6.5.5-3mamba
- rebuilt with java-gcj-compat support
* Fri Nov 26 2010 gil <puntogil@libero.it> 6.5.5-2mamba
- rebuilt devel
* Wed Feb 25 2009 gil <puntogil@libero.it> 6.5.5-1mamba
- package created by autospec