update to 2.12.1 [release 2.12.1-1mamba;Tue Aug 16 2022]

This commit is contained in:
Silvan Calarco 2024-01-05 19:36:57 +01:00
parent 38561734a8
commit 04dc8bd401
13 changed files with 22 additions and 1079 deletions

View File

@ -1,131 +0,0 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.xerces.util;
import java.util.Map;
import com.sun.javadoc.Tag;
import com.sun.tools.doclets.Taglet;
/**
* This class provides support for a 'xerces.experimental' tag
* in javadoc comments. The tag creates a warning in the generated
* html for users.
*
* @author Ankit Pasricha, IBM
*/
public class ExperimentalTaglet implements Taglet {
private static final String NAME = "xerces.experimental";
private static final String HEADER = "EXPERIMENTAL:";
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inConstructor()
*/
public boolean inConstructor() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inField()
*/
public boolean inField() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inMethod()
*/
public boolean inMethod() {
return true;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inOverview()
*/
public boolean inOverview() {
return true;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inPackage()
*/
public boolean inPackage() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inType()
*/
public boolean inType() {
return true;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#isInlineTag()
*/
public boolean isInlineTag() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#getName()
*/
public String getName() {
return NAME;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#toString(com.sun.javadoc.Tag)
*/
public String toString(Tag arg0) {
return "<DT><H1 style=\"font-size:150%\">" + HEADER + "</H1><DD>"
+ "This class should not be considered stable. It is likely to be altered or replaced in the future.<br/>"
+ "<I>" + arg0.text() + "</I></DD>\n";
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#toString(com.sun.javadoc.Tag[])
*/
public String toString(Tag[] tags) {
if (tags.length == 0) {
return null;
}
String result = "\n<DT><H1 style=\"font-size:150%\">" + HEADER + "</H1><DD>";
result += "This class should not be considered stable. It is likely to be altered or replaced in the future.";
result += "<I>";
for (int i = 0; i < tags.length; i++) {
result += "<br/>";
result += tags[i].text();
}
return result + "</I></DD>\n";
}
/**
* Register this Taglet.
* @param tagletMap the map to register this tag to.
*/
public static void register(Map tagletMap) {
ExperimentalTaglet tag = new ExperimentalTaglet();
Taglet t = (Taglet) tagletMap.get(tag.getName());
if (t != null) {
tagletMap.remove(tag.getName());
}
tagletMap.put(tag.getName(), tag);
}
}

View File

@ -1,131 +0,0 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.xerces.util;
import java.util.Map;
import com.sun.javadoc.Tag;
import com.sun.tools.doclets.Taglet;
/**
* This class provides support for a 'xerces.internal' tag
* in javadoc comments. The tag creates a warning in the generated
* html for users.
*
* @author Ankit Pasricha, IBM
*/
public class InternalTaglet implements Taglet {
private static final String NAME = "xerces.internal";
private static final String HEADER = "INTERNAL:";
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inConstructor()
*/
public boolean inConstructor() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inField()
*/
public boolean inField() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inMethod()
*/
public boolean inMethod() {
return true;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inOverview()
*/
public boolean inOverview() {
return true;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inPackage()
*/
public boolean inPackage() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#inType()
*/
public boolean inType() {
return true;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#isInlineTag()
*/
public boolean isInlineTag() {
return false;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#getName()
*/
public String getName() {
return NAME;
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#toString(com.sun.javadoc.Tag)
*/
public String toString(Tag arg0) {
return "<DT><H1 style=\"font-size:110%\">" + HEADER + "</H1><DD>"
+ "Usage of this class is not supported. It may be altered or removed at any time.<br/>"
+ "<I>" + arg0.text() + "</I></DD>\n";
}
/* (non-Javadoc)
* @see com.sun.tools.doclets.Taglet#toString(com.sun.javadoc.Tag[])
*/
public String toString(Tag[] tags) {
if (tags.length == 0) {
return null;
}
String result = "\n<DT><H1 style=\"font-size:110%\">" + HEADER + "</H1><DD>";
result += "Usage of this class is not supported. It may be altered or removed at any time.";
result += "<I>";
for (int i = 0; i < tags.length; i++) {
result += "<br/>";
result += tags[i].text();
}
return result + "</I></DD>\n";
}
/**
* Register this Taglet.
* @param tagletMap the map to register this tag to.
*/
public static void register(Map tagletMap) {
InternalTaglet tag = new InternalTaglet();
Taglet t = (Taglet) tagletMap.get(tag.getName());
if (t != null) {
tagletMap.remove(tag.getName());
}
tagletMap.put(tag.getName(), tag);
}
}

View File

@ -1,151 +0,0 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.xerces.util;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.types.Path;
import org.apache.tools.ant.util.JavaEnvUtils;
import org.apache.tools.ant.taskdefs.Javac;
import java.lang.StringBuffer;
import java.util.Properties;
import java.util.Locale;
/**
* The implementation of the javac compiler for JDK 1.4 and above
*
* The purpose of this task is to diagnose whether we're
* running on a 1.4 or above JVM; if we are, to
* set up the bootclasspath such that the build will
* succeed; if we aren't, then invoke the Javac12
* task.
*
* @author Neil Graham, IBM
*/
public class XJavac extends Javac {
/**
* Run the compilation.
*
* @exception BuildException if the compilation has problems.
*/
public void execute() throws BuildException {
if(isJDK14OrHigher()) {
// maybe the right one; check vendor:
// by checking system properties:
Properties props = null;
try {
props = System.getProperties();
} catch (Exception e) {
throw new BuildException("unable to determine java vendor because could not access system properties!");
}
// this is supposed to be provided by all JVM's from time immemorial
String vendor = ((String)props.get("java.vendor")).toUpperCase(Locale.ENGLISH);
if (vendor.indexOf("IBM") >= 0) {
// we're on an IBM 1.4 or higher; fiddle with the bootclasspath.
setBootclasspath(createIBMJDKBootclasspath());
}
// need to do special things for Sun too and also
// for Apple, HP, FreeBSD, SableVM, Kaffe and Blackdown: a Linux port of Sun Java
else if( (vendor.indexOf("SUN") >= 0) ||
(vendor.indexOf("BLACKDOWN") >= 0) ||
(vendor.indexOf("APPLE") >= 0) ||
(vendor.indexOf("HEWLETT-PACKARD") >= 0) ||
(vendor.indexOf("KAFFE") >= 0) ||
(vendor.indexOf("SABLE") >= 0) ||
(vendor.indexOf("FREEBSD") >= 0)) {
// we're on an SUN 1.4 or higher; fiddle with the bootclasspath.
// since we can't eviscerate XML-related info here,
// we must use the classpath
Path bcp = createBootclasspath();
Path clPath = getClasspath();
bcp.append(clPath);
String currBCP = (String)props.get("sun.boot.class.path");
Path currBCPath = new Path(null);
currBCPath.createPathElement().setPath(currBCP);
bcp.append(currBCPath);
setBootclasspath(bcp);
}
}
// now just do the normal thing:
super.execute();
}
/**
* Creates bootclasspath for IBM JDK 1.4 and above.
*/
private Path createIBMJDKBootclasspath() {
Path bcp = createBootclasspath();
String javaHome = System.getProperty("java.home");
StringBuffer bcpMember = new StringBuffer();
bcpMember.append(javaHome).append("/lib/charsets.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/core.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/vm.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/java.util.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/rt.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/graphics.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/javaws.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/jaws.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/security.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/server.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/JawBridge.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/gskikm.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/ibmjceprovider.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/indicim.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/jaccess.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/ldapsec.jar:");
bcp.createPathElement().setPath(bcpMember.toString());
bcpMember.replace(javaHome.length(), bcpMember.length(), "/lib/ext/oldcertpath.jar");
bcp.createPathElement().setPath(bcpMember.toString());
return bcp;
}
/**
* Checks whether the JDK version is 1.4 or higher. If it's not
* JDK 1.4 we check whether we're on a future JDK by checking
* that we're not on JDKs 1.0, 1.1, 1.2 or 1.3. This check by
* exclusion should future proof this task from new versions of
* Ant which are aware of higher JDK versions.
*
* @return true if the JDK version is 1.4 or higher.
*/
private boolean isJDK14OrHigher() {
final String version = JavaEnvUtils.getJavaVersion();
return version.equals(JavaEnvUtils.JAVA_1_4) ||
(!version.equals(JavaEnvUtils.JAVA_1_3) &&
!version.equals(JavaEnvUtils.JAVA_1_2) &&
!version.equals(JavaEnvUtils.JAVA_1_1) &&
!version.equals(JavaEnvUtils.JAVA_1_0));
}
}

View File

@ -1,20 +0,0 @@
#!/bin/sh
#
# Xerces-J2 constants script
# JPackage Project (http://www.jpackage.org/)
# $Id$
# Source functions library
. /usr/share/java-utils/java-functions
# Configuration
MAIN_CLASS=org.apache.xerces.impl.Constants
# Set parameters
set_jvm
export CLASSPATH=$(build-classpath xerces-j2)
set_flags $BASE_FLAGS
set_options $BASE_OPTIONS
# Let's start
run "$@"

View File

@ -1,20 +0,0 @@
#!/bin/sh
#
# Xerces-J2 version script
# JPackage Project (http://www.jpackage.org/)
# $Id$
# Source functions library
. /usr/share/java-utils/java-functions
# Configuration
MAIN_CLASS=org.apache.xerces.impl.Version
# Set parameters
set_jvm
export CLASSPATH=$(build-classpath xerces-j2)
set_flags $BASE_FLAGS
set_options $BASE_OPTIONS
# Let's start
run "$@"

View File

@ -1,68 +0,0 @@
#!/bin/sh
#
#=========================================================================
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#=========================================================================
#
echo
echo "Xerces-Java Build System"
echo "------------------------"
if [ "$JAVA_HOME" = "" ] ; then
echo "ERROR: JAVA_HOME not found in your environment."
echo
echo "Please, set the JAVA_HOME variable in your environment to match the"
echo "location of the Java Virtual Machine you want to use."
exit 1
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
case "`uname`" in
CYGWIN*) cygwin=true ;;
esac
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
fi
LIBDIR=./tools
ANT_HOME="$LIBDIR"
LOCALCLASSPATH="$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/classes.zip"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/ant.jar"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/ant-nodeps.jar"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/ant-launcher.jar"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/ant-junit.jar"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/xml-apis.jar"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/xercesImpl.jar"
LOCALCLASSPATH="$LOCALCLASSPATH:$LIBDIR/bin/xjavac.jar"
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
LOCALCLASSPATH=`cygpath --path --windows "$LOCALCLASSPATH"`
fi
echo
echo Building with classpath $LOCALCLASSPATH
echo Starting Ant...
echo
"$JAVA_HOME"/bin/java -Dant.home="$ANT_HOME" -classpath "$LOCALCLASSPATH" org.apache.tools.ant.Main $@

View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="@NAME@">
<component id="@ID@"
licenseType="@LICENSE@"
version="@VERSION@"
projectHome="@PROJECTHOME@"
description="@DESCRIPTION@"
tag="@TAG@"
>
<artifact id="@ARTIFACTID@"/>
<import componentref="@COMPONENTREF@">
<compatible version="@VERSION_COMPONENTREF1@"/>
<compatible version="@VERSION_COMPONENTREF2@"/>
</import>
<export>
<include input="@INCLUDEINPUT@"/>
</export>
</component>
</project>

View File

@ -1,17 +0,0 @@
--- src/manifest.xerces 2010-11-26 21:42:07.000000000 +0100
+++ src/manifest.xerces-gil 2010-12-22 18:42:28.000000000 +0100
@@ -1,5 +1,14 @@
Manifest-Version: 1.0
Created-By: @java.version@ (@java.vendor@)
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-SymbolicName: org.apache.xerces
+Bundle-ManifestVersion: 2
+Bundle-Name: @impl.name@
+Bundle-Localization: plugin
+Bundle-Version: @impl.version@
+Bundle-Vendor: Apache Software Foundation
+Require-Bundle: system.bundle,javax.xml;bundle-version="[1.3.4,2.0.0)";visibility:=reexport,org.apache.xml.resolver;bundle-version="[1.2.0,2.0.0)";visibility:=reexport,org.apache.xml.serializer;bundle-version="[2.7.1,3.0.0)"
+Export-Package: META-INF.services;version="@impl.version@",org.apache.html.dom;version="@impl.version@",org.apache.wml;version="@impl.version@",org.apache.wml.dom;version="@impl.version@",org.apache.xerces.dom;version="@impl.version@",org.apache.xerces.dom.events;version="@impl.version@",org.apache.xerces.dom3.as;version="@impl.version@",org.apache.xerces.impl;version="@impl.version@",org.apache.xerces.impl.dtd;version="@impl.version@",org.apache.xerces.impl.dtd.models;version="@impl.version@",org.apache.xerces.impl.dv;version="@impl.version@",org.apache.xerces.impl.dv.dtd;version="@impl.version@",org.apache.xerces.impl.dv.util;version="@impl.version@",org.apache.xerces.impl.dv.xs;version="@impl.version@",org.apache.xerces.impl.io;version="@impl.version@",org.apache.xerces.impl.msg;version="@impl.version@",org.apache.xerces.impl.validation;version="@impl.version@",org.apache.xerces.impl.xpath;version="@impl.version@",org.apache.xerces.impl.xpath.regex;version="@impl.version@",org.apache.xerces.impl.xs;version="@impl.version@",org.apache.xerces.impl.xs.identity;version="@impl.version@",org.apache.xerces.impl.xs.models;version="@impl.version@",org.apache.xerces.impl.xs.opti;version="@impl.version@",org.apache.xerces.impl.xs.traversers;version="@impl.version@",org.apache.xerces.impl.xs.util;version="@impl.version@",org.apache.xerces.jaxp;version="@impl.version@",org.apache.xerces.jaxp.datatype;version="@impl.version@",org.apache.xerces.jaxp.validation;version="@impl.version@",org.apache.xerces.parsers;version="@impl.version@",org.apache.xerces.stax;version="@impl.version@",org.apache.xerces.stax.events;version="@impl.version@",org.apache.xerces.util;version="@impl.version@",org.apache.xerces.xinclude;version="@impl.version@",org.apache.xerces.xni;version="@impl.version@",org.apache.xerces.xni.grammars;version="@impl.version@",org.apache.xerces.xni.parser;version="@impl.version@",org.apache.xerces.xpointer;version="@impl.version@",org.apache.xerces.xs;version="@impl.version@",org.apache.xerces.xs.datatypes;version="@impl.version@",org.apache.xml.serialize;version="@impl.version@",org.w3c.dom.html;version="@impl.version@"
Name: org/apache/xerces/impl/Version.class
Comment: @impl.name@

View File

@ -1,16 +0,0 @@
--- tools/org/apache/xerces/util/XJavac.java 2010-01-25 19:16:48.000000000 +0100
+++ tools/org/apache/xerces/util/XJavac.java-gil 2011-02-12 11:11:18.000000000 +0100
@@ -63,10 +63,12 @@
}
// need to do special things for Sun too and also
// for Apple, HP, FreeBSD, SableVM, Kaffe and Blackdown: a Linux port of Sun Java
- else if( (vendor.indexOf("SUN") >= 0) ||
+ else if( (vendor.indexOf("SUN") >= 0) ||
+ (vendor.indexOf("OPENJDK") >= 0) ||
(vendor.indexOf("BLACKDOWN") >= 0) ||
(vendor.indexOf("APPLE") >= 0) ||
(vendor.indexOf("HEWLETT-PACKARD") >= 0) ||
+ (vendor.indexOf("FREE SOFTWARE FOUNDATION") >= 0) ||
(vendor.indexOf("KAFFE") >= 0) ||
(vendor.indexOf("SABLE") >= 0) ||
(vendor.indexOf("FREEBSD") >= 0)) {

View File

@ -1,47 +0,0 @@
--- build.xml 2010-11-26 21:42:11.000000000 +0100
+++ build.xml-gil 2010-12-22 18:35:54.000000000 +0100
@@ -108,7 +108,7 @@
<property name="distsrc.dir" value="${build.dir}/${parser.shortname}-${parser_version}"/>
<property name="disttools.dir" value="${build.dir}/tools"/>
<property name="distbin.dir" value="${build.dir}/${parser.shortname}-${parser_version}"/>
- <property name='src.apis.zip' value="${tools.dir}/xml-commons-external-src.zip"/>
+ <!--property name='src.apis.zip' value="${tools.dir}/xml-commons-external-src.zip"/-->
<filter token="year" value="${year}"/>
<filter token="version" value="${parser.Version}"/>
@@ -247,7 +247,7 @@
<copy file="${src.dir}/org/apache/xerces/impl/xpath/regex/message.properties"
tofile="${build.src}/org/apache/xerces/impl/xpath/regex/message_en.properties"/>
- <!-- now deal with API's: -->
+ <!-- now deal with API's:
<unzip src="${src.apis.zip}" dest="${build.src}">
<patternset
includes="org/xml/sax/**
@@ -269,7 +269,7 @@
org/w3c/dom/views/**
org/w3c/dom/xpath/**"
/>
- </unzip>
+ </unzip-->
<!-- substitute tokens as needed -->
<replace file="${build.dir}/src/org/apache/xerces/impl/Version.java"
@@ -1232,7 +1232,7 @@
<replace file="${build.dir}/src/org/apache/xerces/parsers/AbstractSAXParser.java"
token="return (fConfiguration instanceof XML11Configurable);" value="return false;"/>
- <!-- now deal with API's: -->
+ <!-- now deal with API's:
<unzip src="${src.apis.zip}" dest="${build.src}">
<patternset
includes="org/xml/sax/**
@@ -1254,7 +1254,7 @@
org/w3c/dom/views/**
org/w3c/dom/xpath/**"
/>
- </unzip>
+ </unzip-->
<!-- substitute tokens as needed -->

View File

@ -1,19 +0,0 @@
diff -Nru xerces-2_11_0.orig/src/org/apache/html/dom/HTMLElementImpl.java xerces-2_11_0/src/org/apache/html/dom/HTMLElementImpl.java
--- xerces-2_11_0.orig/src/org/apache/html/dom/HTMLElementImpl.java 2010-11-26 21:42:05.000000000 +0100
+++ xerces-2_11_0/src/org/apache/html/dom/HTMLElementImpl.java 2014-03-18 15:37:06.282434134 +0100
@@ -20,6 +20,7 @@
import org.apache.xerces.dom.ElementImpl;
import org.w3c.dom.Attr;
+import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.html.HTMLElement;
@@ -254,4 +255,7 @@
return null;
}
+ public Document getContentDocument() {
+ throw new UnsupportedOperationException();
+ }
}

View File

@ -1,54 +1,20 @@
%define repodir %{_javadir}/repository.jboss.com/apache-xerces/%{version}-brew
%define repodirlib %{repodir}/lib
%define repodirsrc %{repodir}/src
%define pkgver %(echo %version | tr . _)
%define javahome %{_jvmdir}/jdk
#%define gcj_ver %(gcj --version | head -n1 | awk '{ print $3 }')
%define bootstrap 0
Name: xerces-j2
Version: 2.11.0
Release: 2mamba
Version: 2.12.1
Release: 1mamba
Summary: High performance, fully compliant XML parser
Group: Applications/Publishing
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://xerces.apache.org/
Source0: http://84.233.242.93/mirror/apache/xerces/j/Xerces-J-src.%{version}.tar.gz
# http://archive.apache.org/dist/xml/xerces-j/Xerces-J-src.%{version}.tar.gz
#Source0: Xerces-J_2_11_0-src-svn.tar.gz
Source1: Xerces-J2-version.sh
Source2: Xerces-J2-constants.sh
Source3: https://svn.apache.org/repos/asf/xerces/java/tags/Xerces-J_%{pkgver}/tools/src/XJavac.java
Source4: https://svn.apache.org/repos/asf/xerces/java/tags/Xerces-J_%{pkgver}/tools/src/ExperimentalTaglet.java
Source5: https://svn.apache.org/repos/asf/xerces/java/tags/Xerces-J_%{pkgver}/tools/src/InternalTaglet.java
Source6: xercesImpl-%{version}.pom
Source7: java-component-info8.xml
Source8: https://svn.apache.org/repos/asf/xerces/java/tags/Xerces-J_%{pkgver}/tools/xml-commons-external-src.zip
Source9: https://svn.apache.org/repos/asf/xerces/java/tags/Xerces-J_%{pkgver}/build.sh
#Source8: xerces-j2-2.9.0-MANIFEST.MF
Patch0: xerces-J2-2.11.0-build_xml.patch
Patch1: xerces-J2-2.11.0-OSGi-Manifest.patch
Patch2: xerces-J2-2.11.0-XJavac-javavendors.patch
Patch3: xerces-J2-2.11.0-java-1.7.patch
URL: https://xerces.apache.org/
Source0: https://downloads.apache.org/xerces/j/binaries/Xerces-J-bin.%{version}.tar.gz
License: Apache Software License 2.0
BuildRequires: apache-ant
BuildRequires: apache-ant-junit
%if "%{stage1}" != "1"
BuildRequires: apache-ant-nodeps
BuildRequires: apache-batik
BuildRequires: apache-xml-stylebook
BuildRequires: java-icu4j4
%endif
BuildRequires: xalan-j2
BuildRequires: coreutils
BuildRequires: java-junit3
BuildRequires: jpackage-utils
BuildRequires: xml-commons-apis
BuildRequires: xml-commons-resolver
Requires: xml-commons-apis
BuildRoot: %{_tmppath}/%{name}-%{version}-root
## AUTOBUILDREQ-BEGIN
## AUTOBUILDREQ-END
BuildRequires: javapackages
Requires: javapackages
#Requires: xml-commons-apis
%description
Welcome to the future! Xerces2 is the next generation of high performance, fully compliant XML parsers in the Apache Xerces family.
@ -57,208 +23,21 @@ The Apache Xerces2 parser is the reference implementation of XNI but other parse
Xerces 2 is a fully conforming XML Schema processor. For more information, refer to the XML Schema page.
Xerces 2 also provides a partial implementation of Document Object Model Level 3 Core, Load and Save and Abstract Schemas [deprecated] Working Drafts. For more information, refer to the DOM Level 3 Implementation page.
%package javadoc-impl
Summary: Javadoc for %{name} implementation
Group: Documentation
%description javadoc-impl
High performance, fully compliant XML parser.
This package contains javadoc for %{name} implementation.
%package javadoc-apis
Summary: Javadoc for %{name} apis
Group: Documentation
%description javadoc-apis
High performance, fully compliant XML parser.
This package contains javadoc for %{name} apis.
%package javadoc-xni
Summary: Javadoc for %{name} xni
Group: Documentation
%description javadoc-xni
High performance, fully compliant XML parser.
This package contains javadoc for %{name} xni.
%package javadoc-other
Summary: Javadoc for other %{name} components
Group: Documentation
%description javadoc-other
High performance, fully compliant XML parser.
This package contains javadoc for other %{name} components.
%package javadoc-xs
Summary: Javadoc for XML Schema %{name} components
Group: Documentation
%description javadoc-xs
High performance, fully compliant XML parser.
This package contains javadoc for XML Schema %{name} components.
%package manual
Group: Documentation
Summary: Documents for %{name}
Requires: %{name}-javadoc-impl = %{version}-%{release}
Requires: %{name}-javadoc-apis = %{version}-%{release}
Requires: %{name}-javadoc-xni = %{version}-%{release}
Requires: %{name}-javadoc-other = %{version}-%{release}
Requires: %{name}-javadoc-xs = %{version}-%{release}
%description manual
High performance, fully compliant XML parser.
This package contains Java XML parser documentation
%package demo
Summary: Demo for %{name}
Group: Applications/Publishing
Requires: %{name} = %{version}-%{release}
%description demo
High performance, fully compliant XML parser.
This package contains demonstrations and samples for %{name}.
%package scripts
Summary: Additional utility scripts for %{name}
Group: Applications/Publishing
Requires: %{name} = %{version}-%{release}
%description scripts
High performance, fully compliant XML parser.
This package contains additional utility scripts for %{name}.
%package repolib
Group: Development/Libraries/Java
Summary: Artifacts to be uploaded to a repository library
%description repolib
High performance, fully compliant XML parser.
This package contains artifacts to be uploaded to a repository library.
This package is not meant to be installed but so its contents can be extracted through rpm2cpio
%prep
%setup -q -n xerces-%{pkgver}
#%setup -q -n Xerces-J_%{pkgver}
%if %bootstrap
%patch0
%endif
%patch1
for j in $(find . -name "*.jar"); do
mv $j $j.no
done
mkdir -p tools/org/apache/xerces/util
mkdir -p tools/bin
cp -a %{S:3} %{S:4} %{S:5} tools/org/apache/xerces/util
# add gcj and OpenJDK support
%if !%bootstrap
%patch2 -p0
cp -a %{S:8} tools/
cp -a %{S:9} build.sh
%endif
%patch3 -p1
sed -i 's/\r//' LICENSE README NOTICE
%build
unset JAVA_HOME
export JAVA_HOME=%{_jvmdir}/jdk
pushd tools
javac -classpath $(build-classpath ant-1.7.1) org/apache/xerces/util/XJavac.java
mkdir -p bin && jar cf bin/xjavac.jar org/apache/xerces/util/XJavac.class
javac -classpath $JAVA_HOME/lib/tools.jar org/apache/xerces/util/*Taglet.java
jar cf bin/xerces2taglets.jar org/apache/xerces/util/*Taglet.class
%if ! %bootstrap
ln -sf $(build-classpath ant/ant-junit) ant-junit.jar
ln -sf $(build-classpath ant-launcher) ant-launcher.jar
ln -sf $(build-classpath ant/ant-nodeps) ant-nodeps.jar
ln -sf $(build-classpath ant-1.7.1) ant.jar
ln -sf $(build-classpath xercesImpl) xercesImpl.jar
%endif
ln -sf $(build-classpath xml-commons-apis) xml-apis.jar
ln -sf $(build-classpath xml-commons-resolver) resolver.jar
ln -sf $(build-classpath xalan-j2) xalan.jar
ln -sf $(build-classpath xalan-j2-serializer) serializer.jar
%if "%{stage1}" != "1"
ln -sf $(build-classpath xml-stylebook) stylebook-1.0-b2.jar
%endif
ln -sf $(build-classpath icu4j/icu4j) icu4j.jar
ln -sf $(build-classpath junit) junit.jar
popd
%if "%{stage1}" != "1"
export CLASSPATH=tools/bin/xjavac.jar:$(build-classpath xercesImpl xml-stylebook batik-all):build/classes
%else
export CLASSPATH=tools/bin/xjavac.jar:$(build-classpath xercesImpl):build/classes
%endif
export ANT_OPTS="-Xmx256m -Djava.endorsed.dirs=$(pwd)/tools -Djava.awt.headless=true -Dbuild.sysclasspath=first -Ddisconnected=true"
# deprecatedjar is needed for OpenJDK bootstrap
%if "%{stage1}" != "1"
XERCES_TARGET="clean jars dtdjar dvjar jar-schema11 javadocs sampjar deprecatedjar docs"
%else
XERCES_TARGET="clean jars dtdjar dvjar jar-schema11 javadocs sampjar deprecatedjar"
%endif
%if ! %bootstrap
sh ./build.sh $XERCES_TARGET
%else
ant \
-Dbuild.compiler=modern \
-Dtools.dir=%{_javadir} \
-Djar.apis=xml-commons-apis.jar \
-Djar.resolver=xml-commons-resolver.jar \
-Djar.serializer=xalan-j2-serializer.jar \
-Ddoc.generator.package=tools/xml-stylebook.jar \
$XERCES_TARGET
%endif
%if "%{stage1}" != "1"
sed -i 's/\r//' build/docs/download.cgi build/docs/resources/script.js
%endif
# pack-tools
# bootstrap
# -Dbuild.compiler=modern \
# -Djar.apis=xml-commons-apis.jar \
# -Djar.resolver=xml-commons-resolver.jar \
# clean jars javadocs sampjar
#mkdir -p META-INF
#cp -p %{SOURCE6} META-INF/MANIFEST.MF
#touch META-INF/MANIFEST.MF
#zip -u build/xercesImpl.jar META-INF/MANIFEST.MF
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
mkdir -p %{buildroot}%{_javadir}
mkdir -p %{buildroot}%{_datadir}/maven2/poms
install -pm 644 build/xercesImpl.jar %{buildroot}%{_javadir}/%{name}-%{version}.jar
install -pm 644 xercesImpl.jar %{buildroot}%{_javadir}/%{name}-%{version}.jar
ln -sf %{name}-%{version}.jar %{buildroot}%{_javadir}/xercesImpl-%{version}.jar
#install -pm 644 build/xercesImpl.jar %{buildroot}%{_javadir}/xercesImpl-%{version}.jar
%add_to_maven_depmap xerces xercesImpl %{version} JPP %{name}
install -m 644 %{SOURCE6} %{buildroot}%{_datadir}/maven2/poms/JPP-%{name}.pom
(
pushd %{buildroot}%{_javadir}
for jar in *.jar; do
ln -sf ${jar} dom3-${jar}
done
popd
)
install -pm 644 build/schema11-xercesImpl.jar %{buildroot}%{_javadir}/schema11-xercesImpl-%{version}.jar
install -pm 644 build/xercesDV.jar %{buildroot}%{_javadir}/xercesDV-%{version}.jar
install -pm 644 build/xerces.jar %{buildroot}%{_javadir}/xerces-%{version}.jar
install -pm 644 build/dtd-xercesImpl.jar %{buildroot}%{_javadir}/dtd-xercesImpl-%{version}.jar
install -pm 644 build/xercesSamples.jar %{buildroot}%{_javadir}/xercesSamples-%{version}.jar
ln -sf %{name}-%{version}.jar %{buildroot}%{_javadir}/xerces-%{version}.jar
ln -sf %{name}-%{version}.jar %{buildroot}%{_javadir}/xerces.jar
install -pm 644 serializer.jar %{buildroot}%{_javadir}/serializer-%{version}.jar
install -pm 644 xml-apis.jar %{buildroot}%{_javadir}/xml-apis-%{version}.jar
(
pushd %{buildroot}%{_javadir}
@ -268,177 +47,27 @@ install -pm 644 build/xercesSamples.jar %{buildroot}%{_javadir}/xercesSamples-%
popd
)
mkdir -p %{buildroot}%{_javadocdir}/%{name}-impl-%{version}
cp -pr build/docs/javadocs/xerces2/* %{buildroot}%{_javadocdir}/%{name}-impl-%{version}
ln -s %{name}-impl-%{version} %{buildroot}%{_javadocdir}/%{name}-impl
mkdir -p %{buildroot}%{_javadocdir}/%{name}-apis-%{version}
cp -pr build/docs/javadocs/api/* %{buildroot}%{_javadocdir}/%{name}-apis-%{version}
ln -s %{name}-apis-%{version} %{buildroot}%{_javadocdir}/%{name}-apis
mkdir -p %{buildroot}%{_javadocdir}/%{name}-xs-%{version}
cp -pr build/docs/javadocs/xs/* %{buildroot}%{_javadocdir}/%{name}-xs-%{version}
ln -s %{name}-xs-%{version} %{buildroot}%{_javadocdir}/%{name}-xs
mkdir -p %{buildroot}%{_javadocdir}/%{name}-xni-%{version}
cp -pr build/docs/javadocs/xni/* %{buildroot}%{_javadocdir}/%{name}-xni-%{version}
ln -s %{name}-xni-%{version} %{buildroot}%{_javadocdir}/%{name}-xni
mkdir -p %{buildroot}%{_javadocdir}/%{name}-other-%{version}
cp -pr build/docs/javadocs/other/* %{buildroot}%{_javadocdir}/%{name}-other-%{version}
ln -s %{name}-other-%{version} %{buildroot}%{_javadocdir}/%{name}-other
rm -rf build/docs/javadocs
%if "%{stage1}" != "1"
sed -i "s|javadocs/api/index.html|%{_javadocdir}/%{name}-apis|" build/docs/api.html
sed -i "s|javadocs/xni/index.html|%{_javadocdir}/%{name}-xni|" build/docs/api.html
sed -i "s|javadocs/xs/index.html|%{_javadocdir}/%{name}-xs|" build/docs/api.html
sed -i "s|javadocs/xerces2/index.html|%{_javadocdir}/%{name}-impl|" build/docs/api.html
sed -i "s|javadocs/other/index.html|%{_javadocdir}/%{name}-other|" build/docs/api.html
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}
cp -pr build/docs/* %{buildroot}%{_defaultdocdir}/%{name}-%{version}/
cp -pr LICENSE LICENSE*.txt NOTICE README Readme* %{buildroot}%{_defaultdocdir}/%{name}-%{version}/
%endif
rm -rf %{buildroot}%{_defaultdocdir}/%{name}-%{version}//download.cgi
mkdir -p %{buildroot}%{_bindir}
install -m 755 %{S:1} %{buildroot}%{_bindir}/%{name}-version
install -m 755 %{S:2} %{buildroot}%{_bindir}/%{name}-constants
mkdir -p %{buildroot}%{_datadir}/%{name}
cp -p build/xercesSamples.jar %{buildroot}%{_datadir}/%{name}/%{name}-samples.jar
cp -pr data %{buildroot}%{_datadir}/%{name}
# jaxp_parser_impl ghost symlink
ln -s %{_sysconfdir}/alternatives \
%{buildroot}%{_javadir}/jaxp_parser_impl.jar
mkdir -p %{buildroot}%{repodir}
mkdir -p %{buildroot}%{repodirlib}
install -pm 644 %{SOURCE7} %{buildroot}%{repodir}/component-info.xml
sed -i "s/@NAME@/apache-xerces-component-info/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@ID@/apache-xerces/g" %{buildroot}%{repodir}/component-info.xml
tag=`echo %{name}-%{version}-%{release} | sed 's|\.|_|g'`
sed -i "s/@TAG@/$tag/g" %{buildroot}%{repodir}/component-info.xml
sed -i 's/@VERSION@/%{version}-brew/g' %{buildroot}%{repodir}/component-info.xml
sed -i "s/@LICENSE@/Apache Software License 2.0/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s|@PROJECTHOME@|%{url}|g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@DESCRIPTION@/High performance, fully compliant XML parser/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@COMPONENTREF@/apache-xml-commons/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@VERSION_COMPONENTREF1@/1.4.01-brew/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@VERSION_COMPONENTREF2@/1.4.01-brew/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@ARTIFACTID@/xercesImpl.jar/g" %{buildroot}%{repodir}/component-info.xml
sed -i "s/@INCLUDEINPUT@/xercesImpl.jar/g" %{buildroot}%{repodir}/component-info.xml
mkdir -p %{buildroot}%{repodirsrc}
install -pm 644 %{PATCH0} %{buildroot}%{repodirsrc}
install -pm 644 %{PATCH1} %{buildroot}%{repodirsrc}
install -pm 644 %{SOURCE0} %{buildroot}%{repodirsrc}
install -pm 644 %{SOURCE3} %{buildroot}%{repodirsrc}
install -pm 644 %{SOURCE4} %{buildroot}%{repodirsrc}
install -pm 644 %{SOURCE5} %{buildroot}%{repodirsrc}
cp -p %{buildroot}%{_javadir}/xerces-j2-%{version}.jar %{buildroot}%{repodirlib}/xercesImpl.jar
#%{_bindir}/aot-compile-rpm
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post
%update_maven_depmap
#[ -L %{_javadir}/jaxp_parser_impl.jar ] || rm -rf %{_javadir}/jaxp_parser_impl.jar
/usr/sbin/update-alternatives --install %{_javadir}/jaxp_parser_impl.jar jaxp_parser_impl %{_javadir}/%{name}.jar 40
%postun
%update_maven_depmap
%preun
{
[ $1 = 0 ] || exit 0
/usr/sbin/update-alternatives --remove jaxp_parser_impl %{_javadir}/%{name}.jar
} >/dev/null 2>&1 || :
%files
%defattr(-,root,root)
%{_javadir}/xercesImpl.jar
%{_javadir}/xercesImpl-%{version}.jar
%{_javadir}/xerces-j2-%{version}.jar
%{_javadir}/xerces-j2.jar
%{_javadir}/dom3-xercesImpl-%{version}.jar
%{_javadir}/dom3-xercesImpl.jar
%{_javadir}/dom3-xerces-j2-%{version}.jar
%{_javadir}/dom3-xerces-j2.jar
%{_javadir}/dtd-xercesImpl-%{version}.jar
%{_javadir}/xercesSamples-%{version}.jar
%{_javadir}/dtd-xercesImpl.jar
%{_javadir}/xercesSamples.jar
%{_javadir}/schema11-xercesImpl-%{version}.jar
%{_javadir}/xercesDV-%{version}.jar
%{_javadir}/xerces-%{version}.jar
%{_javadir}/schema11-xercesImpl.jar
%{_javadir}/xercesDV.jar
%{_javadir}/xerces.jar
%ghost %{_javadir}/jaxp_parser_impl.jar
%{_datadir}/maven2/poms
%{_mavendepmapfragdir}
%if "%{stage1}" != "1"
%dir %{_defaultdocdir}/%{name}-%{version}
%doc %{_defaultdocdir}/%{name}-%{version}/LICENSE
%doc %{_defaultdocdir}/%{name}-%{version}/LICENSE*.txt
%doc %{_defaultdocdir}/%{name}-%{version}/NOTICE
%doc %{_defaultdocdir}/%{name}-%{version}/README
%endif
%files javadoc-impl
%defattr(-,root,root)
%{_javadocdir}/%{name}-impl-%{version}
%{_javadocdir}/%{name}-impl
%files javadoc-apis
%defattr(-,root,root)
%{_javadocdir}/%{name}-apis-%{version}
%{_javadocdir}/%{name}-apis
%files javadoc-other
%defattr(-,root,root)
%{_javadocdir}/%{name}-other-%{version}
%{_javadocdir}/%{name}-other
%files javadoc-xni
%defattr(-,root,root)
%{_javadocdir}/%{name}-xni-%{version}
%{_javadocdir}/%{name}-xni
%files javadoc-xs
%defattr(-,root,root)
%{_javadocdir}/%{name}-xs-%{version}
%{_javadocdir}/%{name}-xs
%if "%{stage1}" != "1"
%files manual
%defattr(-,root,root)
%doc %{_defaultdocdir}/%{name}-%{version}/*.html
%doc %{_defaultdocdir}/%{name}-%{version}/graphics
%doc %{_defaultdocdir}/%{name}-%{version}/images
%doc %{_defaultdocdir}/%{name}-%{version}/resources
%endif
%files demo
%defattr(-,root,root)
%{_datadir}/%{name}
%files scripts
%defattr(-,root,root)
%{_bindir}/%{name}-constants
%{_bindir}/%{name}-version
%files repolib
%defattr(-,root,root)
%{repodir}
%{_datadir}/java/serializer-%{version}.jar
%{_datadir}/java/serializer.jar
%{_datadir}/java/xml-apis-%{version}.jar
%{_datadir}/java/xml-apis.jar
%doc LICENSE LICENSE.*.txt
%changelog
* Tue Aug 16 2022 Silvan Calarco <silvan.calarco@mambasoft.it> 2.12.1-1mamba
- update to 2.12.1
* Thu Feb 10 2011 gil <puntogil@libero.it> 2.11.0-2mamba
- add java-icu4j4 support

View File

@ -1,44 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>4</version>
</parent>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.11.0</version>
<name>Xerces2 Java Parser</name>
<description>
Xerces2 is the next generation of high performance, fully compliant XML parsers in the
Apache Xerces family. This new version of Xerces introduces the Xerces Native Interface (XNI),
a complete framework for building parser components and configurations that is extremely
modular and easy to program.
</description>
<url>http://xerces.apache.org/xerces2-j</url>
<dependencies>
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<version>1.4.01</version>
</dependency>
<dependency>
<groupId>xml-resolver</groupId>
<artifactId>xml-resolver</artifactId>
<version>1.2</version>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
</build>
</project>