From ad0a1a8d4452dbc8c53e68974dc5b957fe9c28be Mon Sep 17 00:00:00 2001 From: gil Date: Sat, 6 Jan 2024 00:11:12 +0100 Subject: [PATCH] rebuilt with java-gcj-compat support [release 6.5.5-3mamba;Thu Mar 24 2011] --- README.md | 17 +++ java-saxon.1 | 135 +++++++++++++++++++++++ java-saxon.build.script | 91 ++++++++++++++++ java-saxon.saxon.script | 41 +++++++ java-saxon6.spec | 231 ++++++++++++++++++++++++++++++++++++++++ 5 files changed, 515 insertions(+) create mode 100644 java-saxon.1 create mode 100644 java-saxon.build.script create mode 100644 java-saxon.saxon.script create mode 100644 java-saxon6.spec diff --git a/README.md b/README.md index 7264016..dba5648 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,19 @@ # java-saxon6 +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. + diff --git a/java-saxon.1 b/java-saxon.1 new file mode 100644 index 0000000..cc05078 --- /dev/null +++ b/java-saxon.1 @@ -0,0 +1,135 @@ +.\" Kudos to: xsltproc(1), help2man, +.\" http://saxon.sourceforge.net/saxon6.5.5/instant.html +.TH SAXON "1" "July 2004" "6.5.5" "User Commands" +.SH NAME +saxon \- Process XML documents with XSLT stylesheets +.SH SYNOPSIS +.B saxon +\fR[\fIoptions\fR] \fIsource-doc \fR[\fIstyle-doc\fR] [{param=value}\fR...] +.SH DESCRIPTION +saxon is a command line tool for applying XSLT stylesheets to XML +documents. +.PP +It is invoked from the command line with some options, followed by the +name of the source document to be transformed, followed by the the +name of the stylesheet to use for the transformation, and finally +followed by optional XSL parameters. +.PP +A parameter takes the form name=value, name being the name of the +parameter, and value the value of the parameter. These parameters are +accessible within the stylesheet as normal variables, using the $name +syntax, provided they are declared using a top-level xsl:param +element. If there is no such declaration, the supplied parameter value +is silently ignored. You can specify a parameter value containing +spaces by enclosing it in double quotes, for example name="John Brown". +.SH OPTIONS +.TP +\fB\-a\fR +Use the xml-stylesheet processing instruction in the source document +to identify the stylesheet to be used. When using this option, the +style-doc argument should be omitted. +.SP +The processing instruction must have a +pseudo-attribute href that identifies the relative or absolute URL of +the stylesheet document, and a pseudo-attribute type whose value is +"text/xml", "application/xml", or "text/xsl". For example: + + + +Stylesheets embedded within the source document are not +supported in this release. +.TP +\fB\-d\fR\fImodel\fR +Selects the implementation of the internal tree model. -dt selects the +"tinytree" model. -ds selects the traditional tree model. The default +is -dt. +.TP +\fB\-l\fR +Switches line numbering on for the source document. Line numbers are +accessible through the extension function saxon:line-number(), or from +a trace listener. +.TP +\fB\-m\fR \fIclassname\fR +Use the specified Emitter to process the output from xsl:message. The +class must implement the com.icl.saxon.output.Emitter class. This +interface is similar to a SAX ContentHandler, it takes a stream of +events to generate output. In general the content of a message is an +XML fragment. By default the standard XML emitter is used, configured +to write to the standard error stream, and to include no XML +declaration. Each message is output as a new document. +.TP +\fB\-noext\fR +Suppress calls on extension functions, other than system-supplied +Saxon and EXSLT extension functions. This option is useful when +loading an untrusted stylesheet, perhaps from a remote site using an +HTTP URL; it ensures that the stylesheet cannot call Java +methods and thereby gain privileged access to resources on your +machine. +.TP +\fB\-o\fR \fIfilename\fR +Send output to named file. In the absence of this option, output goes +to standard output. The file extension of the output file is used to +decide the default output method if none is specified. +.TP +\fB\-r\fR \fIclassname\fR +Use the specified URIResolver to process all URIs. The URIResolver is +a user-defined class, that extends the com.icl.saxon.URIResolver +class, whose function is to take a URI supplied as a string, and +return a SAX InputSource. It is invoked to process URIs used in the +document() function, in the xsl:include and xsl:import elements, and +(if -u is also specified) to process the URIs of the source file and +stylesheet file provided on the command line. If xml-commons-resolver +is available, defaults to org.apache.xml.resolver.tools.CatalogResolver. +.TP +\fB\-t\fR +Display version and timing information to the standard error output. +.TP +\fB\-T\fR +Display stylesheet tracing information to the standard error +output. Also switches line numbering on for the source document. +.TP +\fB\-TL\fR \fIclassname\fR +Run the stylesheet using the specified TraceListener. The classname +names a user-defined class, which must implement +com.icl.saxon.trace.TraceListener. +.TP +\fB\-u\fR +Indicates that the names of the source document and the style document +are URLs; otherwise they are taken as filenames, unless they start +with "http:" or "file:", in which case they are taken as URLs. +.TP +\fB\-w\fR\fIlevel\fR +Indicates the policy for handling recoverable errors in the +stylesheet: -w0 means recover silently, -w1 means recover after +writing a warning message to the system error output, -w2 means signal +the error and do not attempt recovery. (Note, this does not currently +apply to all errors that the XSLT recommendation describes as +recoverable). The default is -w1. +.TP +\fB\-x\fR \fIclassname\fR +Use the specified SAX parser for source file and for any files loaded +using the document() function. The parser must be the fully-qualified +class name of a Java class that implements the org.xml.sax.Parser or +org.xml.sax.XMLReader interface. If xml-commons-resolver is available, +defaults to org.apache.xml.resolver.tools.ResolvingXMLReader. +.TP +\fB\-y\fR \fIclassname\fR +Use the specified SAX parser for all stylesheet files, including any +loaded using xsl:include or xsl:import. The parser must be the +fully-qualified class name of a Java class that implements the +org.xml.sax.Parser or org.xml.sax.XMLReader interface. If +xml-commons-resolver is available, defaults to +org.apache.xml.resolver.tools.ResolvingXMLReader. +.TP +\fB\-?\fR +Display command syntax. +.SH FILES +.B __RESOLVERDIR__/CatalogManager.properties +.RS +The central catalog manager configuration file used by \fBsaxon\fR +for resolving XML entities and URIs if xml-commons-resolver is +available. +.SH "SEE ALSO" +.BR xsltproc (1) +.SH AUTHOR +Michael H. Kay diff --git a/java-saxon.build.script b/java-saxon.build.script new file mode 100644 index 0000000..151613d --- /dev/null +++ b/java-saxon.build.script @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/java-saxon.saxon.script b/java-saxon.saxon.script new file mode 100644 index 0000000..c52a0d8 --- /dev/null +++ b/java-saxon.saxon.script @@ -0,0 +1,41 @@ +#!/bin/sh +# +# saxon script +# JPackage Project + +. /usr/share/java-utils/java-functions + +MAIN_CLASS=com.icl.saxon.StyleSheet + +BASE_JARS="saxon.jar xml-commons-apis.jar xerces-j2.jar" + +# Optional jars +CLASSPATH="$CLASSPATH:"$(build-classpath docbook-xsl-saxon saxon-fop \ + excalibur/avalon-logkit xml-commons-resolver 2>/dev/null) || : + +# If we have resolver, add the CatalogManager.properties dir to CLASSPATH, +# and tweak command line options so that it's used. +args= +if echo "$CLASSPATH" | grep xml-commons-resolver >/dev/null 2>&1 ; then + CLASSPATH="$CLASSPATH:__RESOLVERDIR__" + # Tune options to use resolver. + r=org.apache.xml.resolver.tools.ResolvingXMLReader + for opt in -x -y ; do + if ! echo $@ | grep "\\$opt " >/dev/null 2>&1 ; then + args="$args $opt $r" + fi + done + r=org.apache.xml.resolver.tools.CatalogResolver + if ! echo $@ | grep "\\-r " >/dev/null 2>&1 ; then + args="$args -r $r" + fi +fi + +# Set parameters +set_jvm +set_classpath $BASE_JARS +set_flags $BASE_FLAGS +set_options $BASE_OPTIONS + +# Let's start +run $args "$@" diff --git a/java-saxon6.spec b/java-saxon6.spec new file mode 100644 index 0000000..9faa113 --- /dev/null +++ b/java-saxon6.spec @@ -0,0 +1,231 @@ +%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 +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 6.5.5-3mamba +- rebuilt with java-gcj-compat support + +* Fri Nov 26 2010 gil 6.5.5-2mamba +- rebuilt devel + +* Wed Feb 25 2009 gil 6.5.5-1mamba +- package created by autospec \ No newline at end of file