diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..64eeaf5 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/jing-trang-20091111.tar.xz diff --git a/.jing-trang.metadata b/.jing-trang.metadata new file mode 100644 index 0000000..2abbdc8 --- /dev/null +++ b/.jing-trang.metadata @@ -0,0 +1 @@ +aae98dcc33ac20a04d5400c57e0cccecfa26beb4 SOURCES/jing-trang-20091111.tar.xz diff --git a/SOURCES/jing-trang-20091111-build.patch b/SOURCES/jing-trang-20091111-build.patch new file mode 100644 index 0000000..bb77f92 --- /dev/null +++ b/SOURCES/jing-trang-20091111-build.patch @@ -0,0 +1,278 @@ +diff -up jing-trang-20091111/build.xml~ jing-trang-20091111/build.xml +--- jing-trang-20091111/build.xml~ 2009-02-01 06:49:17.000000000 +0200 ++++ jing-trang-20091111/build.xml 2010-11-30 22:04:06.391536980 +0200 +@@ -145,22 +145,19 @@ + + <target name="javadoc" depends="init"> + <mkdir dir="${build.dir}/api"/> +- <mkdir dir="${build.dir}/api/datatype"/> + <mkdir dir="${build.dir}/api/jing"/> + <mkdir dir="${build.dir}/api/regex"/> +- <javadoc sourcepath="mod/datatype/src/main" destdir="${build.dir}/api/datatype" +- doctitle="RELAX NG Datatype API" windowtitle="RELAX NG Datatype API" +- packagenames="org.relaxng.datatype,org.relaxng.datatype.helpers"/> + <javadoc sourcepath="mod/util/src/main:mod/regex/src/main" destdir="${build.dir}/api/regex" + packagenames="com.thaiopensource.datatype.xsd.regex, + com.thaiopensource.datatype.xsd.regex.java, +- com.thaiopensource.datatype.xsd.regex.xerces2"/> ++ com.thaiopensource.datatype.xsd.regex.xerces2"> ++ <link href="/usr/share/javadoc/java"/> ++ </javadoc> + <javadoc sourcepathref="javadoc.sourcepath" destdir="${build.dir}/api/jing" + doctitle="Jing API" windowtitle="Jing API" + packagenames="${javadoc.packagenames}"> +- <link offline="true" href="../datatype" packagelistLoc="${build.dir}/api/datatype"/> +- <link offline="true" href="http://java.sun.com/j2se/1.5.0/docs/api/" +- packagelistLoc="extapidoc/jdk/1.5"/> ++ <link href="/usr/share/javadoc/java"/> ++ <link href="/usr/share/javadoc/relaxngDatatype"/> + </javadoc> + </target> + +@@ -170,7 +167,7 @@ + destdir="${build.dir}/doccheck" + packagenames="${javadoc.packagenames}" + doclet="com.sun.tools.doclets.doccheck.DocCheck" +- docletpath="lib/doccheck.jar"/> ++ docletpath="${lib.dir}/doccheck.jar"/> + </target> + + <target name="datatype-sample" depends="jar"> +@@ -290,7 +287,7 @@ + <java classname="com.thaiopensource.relaxng.translate.Driver" + fork="true" + failonerror="yes" +- classpath="${build.dir}/trang.jar"> ++ classpath="${build.dir}/trang.jar:/usr/share/java/relaxngDatatype.jar"> + <arg value="dtdinst/dtdinst.rnc"/> + <arg value="${build.dir}/dtdinst/dtdinst.rng"/> + </java> +@@ -360,7 +357,7 @@ + depends="version,googlecode.properties" + description="Upload files to Google Code. Run dist before this."> + <taskdef classname="net.bluecow.googlecode.ant.GoogleCodeUploadTask" +- classpath="lib/ant-googlecode.jar" name="gcupload"/> ++ classpath="${lib.dir}/ant-googlecode.jar" name="gcupload"/> + <gcupload username="${googlecode.username}" + password="${googlecode.password}" + projectname="jing-trang" +diff -up jing-trang-20091111/build.xsl~ jing-trang-20091111/build.xsl +--- jing-trang-20091111/build.xsl~ 2009-02-01 06:49:17.000000000 +0200 ++++ jing-trang-20091111/build.xsl 2010-11-30 22:37:55.635536968 +0200 +@@ -10,12 +10,12 @@ + <project> + <xmlproperty file="version.xml"/> + <property name="build.dir" value="${{basedir}}/build"/> +- <property name="javacc.dir" value="lib"/> ++ <property name="javacc.dir" value="${{lib.dir}}"/> + <property name="ant.build.javac.source" value="1.5"/> + <property name="ant.build.javac.target" value="1.5"/> + <taskdef name="testng" classname="org.testng.TestNGAntTask"> + <classpath> +- <pathelement location="lib/testng.jar"/> ++ <pathelement location="${{lib.dir}}/testng.jar"/> + </classpath> + </taskdef> + <target name="dummy"/> +@@ -111,7 +111,7 @@ + <pathelement location="{$build}/mod/{@module}/classes/main"/> + </xsl:for-each> + <xsl:for-each select="depends[@lib]"> +- <pathelement location="lib/{@lib}.jar"/> ++ <pathelement location="${{lib.dir}}/{@lib}.jar"/> + </xsl:for-each> + </classpath> + </javac> +@@ -151,10 +151,10 @@ + <pathelement location="{$build}/mod/{@module}/classes/main"/> + </xsl:for-each> + <xsl:for-each select="depends[@lib]"> +- <pathelement location="lib/{@lib}.jar"/> ++ <pathelement location="${{lib.dir}}/{@lib}.jar"/> + </xsl:for-each> + <xsl:if test="test[@type='testng']"> +- <pathelement location="lib/testng.jar"/> ++ <pathelement location="${{lib.dir}}/testng.jar"/> + </xsl:if> + </classpath> + </javac> +@@ -298,13 +298,18 @@ + <classpath> + <pathelement location="{$build}/{$app}.jar"/> + <xsl:if test="@lib"> +- <pathelement location="lib/{@lib}.jar"/> ++ <pathelement location="${{lib.dir}}/{@lib}.jar"/> + <xsl:if test="@lib='xalan'"> +- <pathelement location="lib/serializer.jar"/> ++ <pathelement location="${{lib.dir}}/xalan-j2-serializer.jar"/> + </xsl:if> + </xsl:if> ++ <!-- Upstream build assumes Class-Path in jing, trang manifests --> + <xsl:if test="$app = 'jing'"> +- <pathelement location="lib/xercesImpl.jar"/> ++ <pathelement location="${{lib.dir}}/xerces-j2.jar"/> ++ <pathelement location="${{lib.dir}}/relaxngDatatype.jar"/> ++ </xsl:if> ++ <xsl:if test="$app = 'trang'"> ++ <pathelement location="${{lib.dir}}/relaxngDatatype.jar"/> + </xsl:if> + </classpath> + </java> +@@ -373,7 +378,7 @@ + <pathelement location="mod/{@module}/src/main"/> + </xsl:for-each> + <xsl:for-each select="../depends[@lib]"> +- <pathelement location="lib/{@lib}.jar"/> ++ <pathelement location="${{lib.dir}}/{@lib}.jar"/> + </xsl:for-each> + </classpath> + </java> +@@ -402,8 +407,11 @@ + <pathelement location="mod/{@module}/src/main"/> + </xsl:for-each> + <xsl:for-each select="../depends[@lib]"> +- <pathelement location="lib/{@lib}.jar"/> ++ <pathelement location="${{lib.dir}}/{@lib}.jar"/> + </xsl:for-each> ++ <!-- Upstream testng.jar includes bsh and qdox --> ++ <pathelement location="${{lib.dir}}/bsh.jar"/> ++ <pathelement location="${{lib.dir}}/qdox.jar"/> + </classpath> + </testng> + </target> +diff -up jing-trang-20091111/mod/catalog/mod.xml~ jing-trang-20091111/mod/catalog/mod.xml +--- jing-trang-20091111/mod/catalog/mod.xml~ 2008-12-16 05:34:48.000000000 +0200 ++++ jing-trang-20091111/mod/catalog/mod.xml 2010-11-30 22:04:06.397536844 +0200 +@@ -3,5 +3,5 @@ + <test name="unit" type="testng"/> + <depends module="util"/> + <depends module="resolver"/> +- <depends lib="resolver"/> ++ <depends lib="xml-commons-resolver"/> + </module> +diff -up jing-trang-20091111/mod/datatype/mod.xml~ jing-trang-20091111/mod/datatype/mod.xml +--- jing-trang-20091111/mod/datatype/mod.xml~ 2008-10-31 11:51:32.000000000 +0200 ++++ jing-trang-20091111/mod/datatype/mod.xml 2010-11-30 22:04:06.398536914 +0200 +@@ -1,4 +1,5 @@ + <module> + <depends module="util"/> ++ <depends lib="relaxngDatatype"/> + <compile/> + </module> +diff -up jing-trang-20091111/mod/jing/mod.xml~ jing-trang-20091111/mod/jing/mod.xml +--- jing-trang-20091111/mod/jing/mod.xml~ 2009-11-11 14:24:06.000000000 +0200 ++++ jing-trang-20091111/mod/jing/mod.xml 2010-11-30 22:04:06.398536914 +0200 +@@ -21,8 +21,6 @@ + <jar> + <manifest> + <attribute name="Main-Class" value="com/thaiopensource/relaxng/util/Driver"/> +- <attribute name="Class-Path" +- value="xercesImpl.jar xml-apis.jar saxon.jar saxon9.jar xalan.jar isorelax.jar resolver.jar"/> + </manifest> + <service type="com.thaiopensource.datatype.xsd.regex.RegexEngine"/> + <service type="org.relaxng.datatype.DatatypeLibraryFactory"/> +diff -up jing-trang-20091111/mod/pattern/mod.xml~ jing-trang-20091111/mod/pattern/mod.xml +--- jing-trang-20091111/mod/pattern/mod.xml~ 2008-12-07 05:37:23.000000000 +0200 ++++ jing-trang-20091111/mod/pattern/mod.xml 2010-11-30 22:04:06.399536705 +0200 +@@ -3,6 +3,7 @@ + <depends module="resolver"/> + <depends module="datatype"/> + <depends module="rng-parse"/> ++ <depends lib="relaxngDatatype"/> + <compile test="yes"/> + <test name="unit" type="testng"/> + </module> +diff -up jing-trang-20091111/mod/regex/mod.xml~ jing-trang-20091111/mod/regex/mod.xml +--- jing-trang-20091111/mod/regex/mod.xml~ 2008-11-16 08:53:45.000000000 +0200 ++++ jing-trang-20091111/mod/regex/mod.xml 2010-11-30 22:04:06.399536705 +0200 +@@ -1,6 +1,6 @@ + <module> + <depends module="util"/> +- <depends lib="xercesImpl"/> ++ <depends lib="xerces-j2"/> + <compile test="yes"/> + <test name="xerces" type="java" + class="com.thaiopensource.datatype.xsd.regex.test.TestDriver"> +diff -up jing-trang-20091111/mod/rng-jaxp/mod.xml~ jing-trang-20091111/mod/rng-jaxp/mod.xml +--- jing-trang-20091111/mod/rng-jaxp/mod.xml~ 2008-12-07 05:37:23.000000000 +0200 ++++ jing-trang-20091111/mod/rng-jaxp/mod.xml 2010-11-30 22:04:06.400536775 +0200 +@@ -7,6 +7,7 @@ + <depends module="rng-parse"/> + <depends module="pattern"/> + <depends module="jaxp"/> ++ <depends lib="relaxngDatatype"/> + <compile test="yes"/> + <test name="unit" type="testng"/> + </module> +diff -up jing-trang-20091111/mod/rng-validate/mod.xml~ jing-trang-20091111/mod/rng-validate/mod.xml +--- jing-trang-20091111/mod/rng-validate/mod.xml~ 2008-12-16 05:38:57.000000000 +0200 ++++ jing-trang-20091111/mod/rng-validate/mod.xml 2010-11-30 22:04:06.401538521 +0200 +@@ -7,6 +7,7 @@ + <depends module="pattern"/> + <depends module="validate"/> + <depends lib="ant"/> ++ <depends lib="xml-commons-resolver"/> + <test name="spec" type="validate" schema="eg/testSuite.rng"/> + <compile/> + <version package="com/thaiopensource/relaxng/util"/> +diff -up jing-trang-20091111/mod/schematron/mod.xml~ jing-trang-20091111/mod/schematron/mod.xml +--- jing-trang-20091111/mod/schematron/mod.xml~ 2009-02-01 06:49:17.000000000 +0200 ++++ jing-trang-20091111/mod/schematron/mod.xml 2010-11-30 22:04:06.407540061 +0200 +@@ -3,15 +3,11 @@ + <depends module="resolver"/> + <depends module="validate"/> + <depends module="rng-validate"/> +- <depends lib="xalan"/> ++ <depends lib="xalan-j2"/> + <depends lib="saxon"/> +- <depends lib="saxon9"/> +- <test name="old-saxon" in="mod/schematron/test/schematrontest.xml" +- type="validate" schema="test/schematrontest.nrl" +- lib="saxon"/> + <test name="new-saxon" in="mod/schematron/test/schematrontest.xml" + type="validate" schema="test/schematrontest.nrl" +- lib="saxon9"/> ++ lib="saxon"/> + <test name="xalan" in="mod/schematron/test/schematrontest.xml" + type="validate" schema="test/schematrontest.nrl" + lib="xalan"/> +diff -up jing-trang-20091111/mod/trang/mod.xml~ jing-trang-20091111/mod/trang/mod.xml +--- jing-trang-20091111/mod/trang/mod.xml~ 2008-12-16 11:48:23.000000000 +0200 ++++ jing-trang-20091111/mod/trang/mod.xml 2010-11-30 22:04:06.408537058 +0200 +@@ -13,12 +13,12 @@ + <depends module="convert-to-xsd"/> + <depends module="convert-from-dtd"/> + <depends module="convert-to-dtd"/> ++ <depends lib="xml-commons-resolver"/> + <compile/> + <version package="com/thaiopensource/relaxng/translate"/> + <jar> + <manifest> + <attribute name="Main-Class" value="com/thaiopensource/relaxng/translate/Driver"/> +- <attribute name="Class-Path" value="resolver.jar"/> + </manifest> + <service type="com.thaiopensource.datatype.xsd.regex.RegexEngine"> + <provider classname="com.thaiopensource.datatype.xsd.regex.xerces2.RegexEngineImpl"/> +diff -up jing-trang-20091111/mod/xerces/mod.xml~ jing-trang-20091111/mod/xerces/mod.xml +--- jing-trang-20091111/mod/xerces/mod.xml~ 2008-11-16 08:53:45.000000000 +0200 ++++ jing-trang-20091111/mod/xerces/mod.xml 2010-11-30 22:04:06.414536082 +0200 +@@ -1,7 +1,7 @@ + <module> + <depends module="util"/> + <depends module="validate"/> +- <depends lib="xercesImpl"/> ++ <depends lib="xerces-j2"/> + <compile/> + <service type="com.thaiopensource.validate.SchemaReaderFactory"> + <provider classname="com.thaiopensource.validate.xerces.XsdSchemaReaderFactory"/> +diff -up jing-trang-20091111/mod/xsd-datatype/mod.xml~ jing-trang-20091111/mod/xsd-datatype/mod.xml +--- jing-trang-20091111/mod/xsd-datatype/mod.xml~ 2008-12-11 03:34:05.000000000 +0200 ++++ jing-trang-20091111/mod/xsd-datatype/mod.xml 2010-11-30 22:04:06.415537270 +0200 +@@ -2,6 +2,7 @@ + <depends module="util"/> + <depends module="datatype"/> + <depends module="regex"/> ++ <depends lib="relaxngDatatype"/> + <test name="xsd" type="validate" transform="xsdtest.xsl" schema="test/xsdtest.rnc"/> + <test name="unit" type="testng"/> + <compile test="yes"/> diff --git a/SOURCES/jing-trang-20091111-datatype-sample.patch b/SOURCES/jing-trang-20091111-datatype-sample.patch new file mode 100644 index 0000000..bb8ed05 --- /dev/null +++ b/SOURCES/jing-trang-20091111-datatype-sample.patch @@ -0,0 +1,20 @@ +--- jing-trang-20091111/datatype-sample/build.xml~ 2001-09-22 07:10:47.000000000 +0300 ++++ jing-trang-20091111/datatype-sample/build.xml 2010-11-30 22:49:33.352540838 +0200 +@@ -1,7 +1,7 @@ + <project name="RELAX NG Datatype Sample" default="jar" basedir="."> + + <property name="build.dir" value="build"/> +-<property name="jing.jar" value="jing.jar"/> ++<property name="datatype.jar" value="/usr/share/java/relaxngDatatype.jar"/> + + <target name="init"> + <mkdir dir="${build.dir}"/> +@@ -9,7 +9,7 @@ + + <target name="compile" depends="init"> + <mkdir dir="${build.dir}/classes"/> +- <javac srcdir="src" destdir="${build.dir}/classes" classpath="${jing.jar}"/> ++ <javac srcdir="src" destdir="${build.dir}/classes" classpath="${datatype.jar}"/> + </target> + + <target name="jar" depends="compile"> diff --git a/SOURCES/jing-trang-20091111-saxon93-716177.patch b/SOURCES/jing-trang-20091111-saxon93-716177.patch new file mode 100644 index 0000000..c1c2dc2 --- /dev/null +++ b/SOURCES/jing-trang-20091111-saxon93-716177.patch @@ -0,0 +1,19 @@ +diff -up jing-trang-20091111/mod/schematron/src/main/com/thaiopensource/validate/schematron/NewSaxonSchemaReaderFactory.java~ jing-trang-20091111/mod/schematron/src/main/com/thaiopensource/validate/schematron/NewSaxonSchemaReaderFactory.java +--- jing-trang-20091111/mod/schematron/src/main/com/thaiopensource/validate/schematron/NewSaxonSchemaReaderFactory.java~ 2008-11-07 04:49:44.000000000 +0200 ++++ jing-trang-20091111/mod/schematron/src/main/com/thaiopensource/validate/schematron/NewSaxonSchemaReaderFactory.java 2011-06-24 11:58:33.065604560 +0300 +@@ -1,6 +1,6 @@ + package com.thaiopensource.validate.schematron; + +-import net.sf.saxon.FeatureKeys; ++import net.sf.saxon.lib.FeatureKeys; + import net.sf.saxon.TransformerFactoryImpl; + + import javax.xml.transform.TransformerFactory; +@@ -12,6 +12,7 @@ public class NewSaxonSchemaReaderFactory + } + + public void initTransformerFactory(TransformerFactory factory) { ++ factory.setAttribute(FeatureKeys.XSLT_VERSION, "2.0"); + factory.setAttribute(FeatureKeys.LINE_NUMBERING, Boolean.TRUE); + factory.setAttribute(FeatureKeys.VERSION_WARNING, Boolean.FALSE); + } diff --git a/SOURCES/jing-trang-20091111-xalan.patch b/SOURCES/jing-trang-20091111-xalan.patch new file mode 100644 index 0000000..ee0cd1f --- /dev/null +++ b/SOURCES/jing-trang-20091111-xalan.patch @@ -0,0 +1,132 @@ +Index: test/saxon.xsl +=================================================================== +--- test/saxon.xsl (revision 2353) ++++ test/saxon.xsl (working copy) +@@ -1,8 +1,8 @@ + <?xml version="1.0"?> +-<xsl:stylesheet version="1.0" ++<xsl:stylesheet version="1.1" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" +- xmlns:saxon="http://icl.com/saxon" +- extension-element-prefixes="saxon"> ++ xmlns:xalan="http://xml.apache.org/xalan" ++ extension-element-prefixes="xalan"> + + <xsl:output method="text"/> + +@@ -10,21 +10,21 @@ + <xsl:variable name="prepped"> + <xsl:apply-templates select="*"/> + </xsl:variable> +- <xsl:apply-templates select="saxon:node-set($prepped)/documents/*" mode="output"/> ++ <xsl:apply-templates select="xalan:nodeset($prepped)/documents/*" mode="output"/> + </xsl:template> + + <xsl:template match="document" mode="output"> +- <saxon:output href="{@href}" method="{@method}"> ++ <xsl:document href="{@href}" method="{@method}"> + <xsl:if test="@dtd"> + <xsl:value-of select="@dtd" disable-output-escaping="yes"/> + </xsl:if> + <xsl:copy-of select="node()"/> +- </saxon:output> ++ </xsl:document> + </xsl:template> + + <xsl:template match="dir" mode="output"> + <xsl:value-of select="substring(File:mkdir(File:new(@name)),0,0)" +- xmlns:File="java:java.io.File"/> ++ xmlns:File="xalan://java.io.File"/> + </xsl:template> + + </xsl:stylesheet> +Index: mod/schematron/mod.xml +=================================================================== +--- mod/schematron/mod.xml (revision 2353) ++++ mod/schematron/mod.xml (working copy) +@@ -27,7 +27,7 @@ + <xslt style="mod/schematron/lib/xsltc-fixup.xsl" + in="mod/schematron/src/main/${mod.schematron.respackage}/schematron.xsl" + out="${mod.schematron.resdir}/schematron-xsltc.xsl"> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + </xslt> + </target> + </ant> +Index: mod/xsd-datatype/test/xsdtest.xml +=================================================================== +--- mod/xsd-datatype/test/xsdtest.xml (revision 2353) ++++ mod/xsd-datatype/test/xsdtest.xml (working copy) +@@ -739,7 +739,9 @@ + <length value="0"></length> + <length value="1">x</length> + <length value="1"> x </length> ++<!-- xalan creates invalid XML out of this: �� + <length value="1">𐠀</length> ++--> + </datatype> + <datatype name="language"> + <valid>en</valid> +Index: build.xml +=================================================================== +--- build.xml (revision 2353) ++++ build.xml (working copy) +@@ -40,7 +40,7 @@ + + <target name="modbuild" depends="modules,check-modbuild" unless="modbuild-ok"> + <xslt style="build.xsl" in="modules.xml" out="modbuild.xml" force="true"> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + </xslt> + </target> + +@@ -74,7 +74,7 @@ + includes="${moddir}/*/${modfile}" + filedirparameter="name" + destdir="."> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + <regexpmapper from="mod/([-a-zA-Z0-9_]*)/mod.xml" + to="mod/\1/\1.iml" + handledirsep="true"/> +@@ -183,15 +183,15 @@ + <target name="jing-doc" depends="version"> + <xslt basedir="doc" destdir="${build.dir}" includes="derivative.xml" + style="doc/derivative.xsl"> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + </xslt> + <xslt basedir="doc" destdir="${build.dir}" includes="design.xml" + style="doc/design.xsl"> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + </xslt> + <xslt basedir="doc" destdir="${build.dir}" includes="nrl.xml" + style="doc/nrl.xsl"> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + </xslt> + <copy todir="${build.dir}"> + <fileset dir="doc" includes="*.html"/> +Index: build.xsl +=================================================================== +--- build.xsl (revision 2353) ++++ build.xsl (working copy) +@@ -325,7 +325,7 @@ + <xslt style="{$srctestdir}/{@transform}" + in="{$srctest}" + out="{$runtestdir}/{@name}test.xml"> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + </xslt> + <!-- XXX Could validate intermediate result against a schema --> + </xsl:if> +@@ -341,7 +341,7 @@ + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> +- <factory name="com.icl.saxon.TransformerFactoryImpl"/> ++ <factory name="org.apache.xalan.processor.TransformerFactoryImpl"/> + <param name="dir" expression="{$runtestdir}"/> + </xslt> + </target> diff --git a/SOURCES/jing-trang-prepare-tarball.sh b/SOURCES/jing-trang-prepare-tarball.sh new file mode 100755 index 0000000..388a10e --- /dev/null +++ b/SOURCES/jing-trang-prepare-tarball.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +set -e + +release=${1:-\ + $(rpm -q --specfile --qf='%{VERSION}\n' jing-trang.spec | head -n 1)} + +rm -rf jing-trang-$release +svn export http://jing-trang.googlecode.com/svn/tags/V$release \ + jing-trang-$release +tar cv jing-trang-$release --exclude "*.jar" --exclude gcj \ + --exclude mod/datatype/src/main/org | \ + xz --best > jing-trang-$release.tar.xz diff --git a/SPECS/jing-trang.spec b/SPECS/jing-trang.spec new file mode 100644 index 0000000..56ba576 --- /dev/null +++ b/SPECS/jing-trang.spec @@ -0,0 +1,215 @@ +# TODO: +# - Install dtdinst's schemas, XSL etc as non-doc and to system catalogs? +# - Drop isorelax and xerces license texts and references to them because +# our package does not actually contain them? + +%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7 +%global headless -headless +%endif + +Name: jing-trang +Version: 20091111 +Release: 14%{?dist} +Summary: Schema validation and conversion based on RELAX NG + +Group: Applications/Text +License: BSD +URL: http://code.google.com/p/jing-trang/ +# Source0 generated with Source99, upstream does not distribute archives +# containing the complete build system +Source0: %{name}-%{version}.tar.xz +Source99: %{name}-prepare-tarball.sh +# Applicable parts submitted upstream: +# http://code.google.com/p/jing-trang/issues/detail?id=129 +# http://code.google.com/p/jing-trang/issues/detail?id=130 +Patch0: %{name}-20091111-build.patch +# Saxon "HE" doesn't work for this, no old Saxon available, details in #655601 +Patch1: %{name}-20091111-xalan.patch +Patch2: %{name}-20091111-datatype-sample.patch +# http://code.google.com/p/jing-trang/source/detail?r=2356, #716177 +Patch3: %{name}-20091111-saxon93-716177.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch + +%if 0%{?rhel} && 0%{?rhel} < 7 +BuildRequires: ant-trax +%else +BuildRequires: ant >= 1.8.2 +%endif +BuildRequires: bsh +BuildRequires: isorelax +BuildRequires: java-devel-openjdk >= 1:1.6.0 +BuildRequires: java-javadoc +BuildRequires: javacc +BuildRequires: jpackage-utils +BuildRequires: qdox +BuildRequires: relaxngDatatype +BuildRequires: relaxngDatatype-javadoc +BuildRequires: saxon >= 9.3 +BuildRequires: testng +BuildRequires: xalan-j2 +BuildRequires: xerces-j2 +BuildRequires: xml-commons-resolver + +%description +%{summary}. + +%package -n jing +Summary: RELAX NG validator in Java +Group: Applications/Text +Requires: jpackage-utils +Requires: java%{?headless} >= 1.5.0 +Requires: relaxngDatatype +Requires: xerces-j2 +Requires: xml-commons-resolver + +%description -n jing +Jing is a RELAX NG validator written in Java. It implements the RELAX +NG 1.0 Specification, RELAX NG Compact Syntax, and parts of RELAX NG +DTD Compatibility, specifically checking of ID/IDREF/IDREFS. It also +has experimental support for schema languages other than RELAX NG; +specifically W3C XML Schema, Schematron 1.5, and Namespace Routing +Language. + +%package -n jing-javadoc +Summary: Javadoc API documentation for Jing +Group: Documentation +Requires: java-javadoc +Requires: relaxngDatatype-javadoc + +%description -n jing-javadoc +Javadoc API documentation for Jing. + +%package -n trang +Summary: Multi-format schema converter based on RELAX NG +Group: Applications/Text +Requires: jpackage-utils +Requires: java%{?headless} >= 1.5.0 +Requires: relaxngDatatype +Requires: xerces-j2 +Requires: xml-commons-resolver + +%description -n trang +Trang converts between different schema languages for XML. It +supports the following languages: RELAX NG (both XML and compact +syntax), XML 1.0 DTDs, W3C XML Schema. A schema written in any of the +supported schema languages can be converted into any of the other +supported schema languages, except that W3C XML Schema is supported +for output only, not for input. + +%package -n dtdinst +Summary: XML DTD to XML instance format converter +Group: Applications/Text +Requires: jpackage-utils +Requires: java%{?headless} >= 1.5.0 + +%description -n dtdinst +DTDinst is a program for converting XML DTDs into an XML instance +format. + + +%prep +%setup -q +%patch0 -p1 +%patch1 -p0 +%patch2 -p1 +%patch3 -p1 +sed -i -e 's/\r//g' lib/isorelax.copying.txt +find . -name "OldSaxon*.java" -delete # No "old" saxon available in Fedora + + +%build +CLASSPATH=$(build-classpath beust-jcommander xalan-j2 xalan-j2-serializer) \ +%ant -Dlib.dir=%{_javadir} -Dbuild.sysclasspath=last dist + + +%install +rm -rf $RPM_BUILD_ROOT *-%{version} + +install -dm 755 $RPM_BUILD_ROOT{%{_javadir},%{_javadocdir}} + +%{__unzip} build/dist/jing-%{version}.zip +install -Dpm 644 jing-%{version}/bin/jing.jar $RPM_BUILD_ROOT%{_javadir} +mv jing-%{version}/doc/api $RPM_BUILD_ROOT%{_javadocdir}/jing +ln -s %{_javadocdir}/jing jing-%{version}/doc/api +rm -f jing-%{version}/sample/datatype/datatype-sample.jar +%jpackage_script com.thaiopensource.relaxng.util.Driver "" "" jing:relaxngDatatype:xml-commons-resolver:xerces-j2 jing true + +%{__unzip} build/dist/trang-%{version}.zip +install -pm 644 trang-%{version}/trang.jar $RPM_BUILD_ROOT%{_javadir} +%jpackage_script com.thaiopensource.relaxng.translate.Driver "" "" trang:relaxngDatatype:xml-commons-resolver:xerces-j2 trang true + +%{__unzip} build/dist/dtdinst-%{version}.zip +install -pm 644 dtdinst-%{version}/dtdinst.jar $RPM_BUILD_ROOT%{_javadir} +%jpackage_script com.thaiopensource.xml.dtd.app.Driver "" "" dtdinst dtdinst true + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files -n jing +%defattr(-,root,root,-) +%doc jing-%{version}/{readme.html,doc,sample} +%{_bindir}/jing +%{_javadir}/jing.jar + +%files -n jing-javadoc +%defattr(-,root,root,-) +%doc jing-%{version}/doc/{copying.html,isorelax.copying.txt,xerces.copying.txt} +%{_javadocdir}/jing/ + +%files -n trang +%defattr(-,root,root,-) +%doc trang-%{version}/*.{txt,html} +%{_bindir}/trang +%{_javadir}/trang.jar + +%files -n dtdinst +%defattr(-,root,root,-) +%doc dtdinst-%{version}/{*.{txt,html,rng,xsl},example} +%{_bindir}/dtdinst +%{_javadir}/dtdinst.jar + + +%changelog +* Tue Jan 07 2014 Jan Pokorný <jpokorny@redhat.com> - 20091111-14 +- Resync with recent spec file changes in Fedora by Ville Skyttä: +- BuildRequire ant instead of -trax (non-EL). +- Depend on headless JRE where available. +- Fix build (#1048867) and depend on headless JRE on EL7 + +* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 20091111-13 +- Mass rebuild 2013-12-27 + +* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 20091111-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 20091111-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Wed Jan 11 2012 Ville Skyttä <ville.skytta@iki.fi> - 20091111-10 +- Tweak java-devel build dep for buildability without Java 1.6. +- Fix build classpath with recent TestNG. + +* Fri Jun 24 2011 Ville Skyttä <ville.skytta@iki.fi> - 20091111-9 +- Apply upstream Saxon >= 9.3 patch (#716177). + +* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 20091111-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Dec 2 2010 Ville Skyttä <ville.skytta@iki.fi> - 20091111-7 +- Put Xalan instead of Saxon in build path (regression in -6). +- Build with OpenJDK. + +* Tue Nov 30 2010 Ville Skyttä <ville.skytta@iki.fi> - 20091111-6 +- Address more comments/TODO's from #655601: +- Patch test suite generation to use Xalan. +- Include license texts in jing-javadoc. +- Make datatype-sample buildable out of the box, drop prebuilt jar. + +* Mon Nov 29 2010 Ville Skyttä <ville.skytta@iki.fi> - 20091111-5 +- Simplify doc installation (#655601). + +* Sun Nov 28 2010 Ville Skyttä <ville.skytta@iki.fi> - 20091111-4 +- First Fedora build, combining my earlier separate jing and trang packages.