diff --git a/.cvsignore b/.cvsignore
index e69de29..ad509d7 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -0,0 +1 @@
+xalan-j_2_5_2-src.tar.gz
diff --git a/sources b/sources
index e69de29..b8fabf1 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+97dcc0514df7f791e28b5c744a55068c xalan-j_2_5_2-src.tar.gz
diff --git a/xalan-j2-crosslink.patch b/xalan-j2-crosslink.patch
new file mode 100644
index 0000000..09db4aa
--- /dev/null
+++ b/xalan-j2-crosslink.patch
@@ -0,0 +1,26 @@
+--- build.xml~ 2003-10-26 18:39:18.000000000 +0200
++++ build.xml 2003-11-15 15:47:02.000000000 +0200
+@@ -154,6 +154,7 @@
+
+
+
++
+
+
+
+@@ -893,6 +894,7 @@
+
+
++
+
+
+
+@@ -944,6 +946,7 @@
+
+
++
+
+
+
diff --git a/xalan-j2-manifest.patch b/xalan-j2-manifest.patch
new file mode 100644
index 0000000..a0d6317
--- /dev/null
+++ b/xalan-j2-manifest.patch
@@ -0,0 +1,121 @@
+--- src/MANIFEST.MF~ 2003-10-26 18:38:35.000000000 +0200
++++ src/MANIFEST.MF 2003-11-15 15:45:09.000000000 +0200
+@@ -1,8 +1,5 @@
+ Manifest-Version: 1.0
+-Created-By: 1.2.2 (Sun Microsystems Inc.)
+ Main-Class: org.apache.xalan.xslt.Process
+-Class-Path: xercesImpl.jar xml-apis.jar
+-
+
+ Name: org/apache/xalan
+ Comment: Main Xalan engine implementing TrAX/JAXP
+@@ -27,45 +24,3 @@
+ Implementation-Version: @impl.version@
+ Implementation-Vendor: Apache Software Foundation
+ Implementation-URL: http://xml.apache.org/xalan-j/dist/
+-
+-Name: org/apache/xalan/xsltc
+-Comment: Main XSLTC engine implementing TrAX/JAXP
+-Specification-Title: Java API for XML Processing
+-Specification-Vendor: Sun Microsystems Inc.
+-Specification-Version: 1.2
+-Implementation-Title: org.apache.xalan.xsltc
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Apache Software Foundation
+-Implementation-URL: http://xml.apache.org/xalan-j/dist/
+-
+-Name: runtime
+-Comment: Runtime component of JCup
+-Specification-Title: Runtime component of JCup
+-Specification-Vendor: Princeton University
+-Specification-Version: 0.10k
+-Implementation-Title: runtime
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Princeton University
+-Implementation-URL: http://www.cs.princeton.edu/~appel/modern/java/CUP/
+-
+-Name: org/apache/bcel
+-Comment: Byte Code Engineering Library
+-Specification-Title: Byte Code Engineering Library
+-Specification-Vendor: Markus Dahm
+-Specification-Version: 5.0 rc1
+-Implementation-Title: org.apache.bcel
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Apache Software Foundation
+-Implementation-URL: http://jakarta.apache.org/bcel
+-
+-Name: org/apache/regexp
+-Comment: Java Regular Expression package
+-Specification-Title: Java Regular Expression package
+-Specification-Vendor: Apache Software Foundation
+-Specification-Version: 1.2
+-Implementation-Title: org.apache.regexp
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Apache Software Foundation
+-Implementation-URL: http://jakarta.apache.org/regexp
+-
+-
+--- src/manifest.xsltc~ 2003-10-26 18:38:40.000000000 +0200
++++ src/manifest.xsltc 2003-11-15 15:45:46.000000000 +0200
+@@ -1,5 +1,4 @@
+ Manifest-Version: 1.0
+-Created-By: 1.2.2 (Sun Microsystems Inc.)
+
+ Name: org/apache/xalan/xsltc
+ Comment: Main XSLTC engine implementing TrAX/JAXP
+@@ -10,55 +9,3 @@
+ Implementation-Version: @impl.version@
+ Implementation-Vendor: Apache Software Foundation
+ Implementation-URL: http://xml.apache.org/xalan-j/dist/
+-
+-Name: JLex
+-Comment: A Lexical Analyzer for Java
+-Specification-Title: A Lexical Analyzer for Java
+-Specification-Vendor: Princeton University
+-Specification-Version: 1.2.5
+-Implementation-Title: JLex
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Princeton University
+-Implementation-URL: http://www.cs.princeton.edu/~appel/modern/java/JLex/
+-
+-Name: java_cup
+-Comment: Parser Generator for Java
+-Specification-Title: Parser Generator for Java
+-Specification-Vendor: Princeton University
+-Specification-Version: 0.10k
+-Implementation-Title: java_cup
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Princeton University
+-Implementation-URL: http://www.cs.princeton.edu/~appel/modern/java/CUP/
+-
+-Name: runtime
+-Comment: Runtime component of JCup
+-Specification-Title: Runtime component of JCup
+-Specification-Vendor: Princeton University
+-Specification-Version: 0.10k
+-Implementation-Title: runtime
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Princeton University
+-Implementation-URL: http://www.cs.princeton.edu/~appel/modern/java/CUP/
+-
+-
+-Name: org/apache/bcel
+-Comment: Byte Code Engineering Library
+-Specification-Title: Byte Code Engineering Library
+-Specification-Vendor: Markus Dahm
+-Specification-Version: 5.0 rc1
+-Implementation-Title: org.apache.bcel
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Apache Software Foundation
+-Implementation-URL: http://jakarta.apache.org/bcel
+-
+-Name: org/apache/regexp
+-Comment: Java Regular Expression package
+-Specification-Title: Java Regular Expression package
+-Specification-Vendor: Apache Software Foundation
+-Specification-Version: 1.2
+-Implementation-Title: org.apache.regexp
+-Implementation-Version: @impl.version@
+-Implementation-Vendor: Apache Software Foundation
+-Implementation-URL: http://jakarta.apache.org/regexp
+-
diff --git a/xalan-j2-noxsltcdeps.patch b/xalan-j2-noxsltcdeps.patch
new file mode 100644
index 0000000..8003faf
--- /dev/null
+++ b/xalan-j2-noxsltcdeps.patch
@@ -0,0 +1,11 @@
+--- build.xml.orig 2003-05-30 18:08:41.000000000 +0300
++++ build.xml 2003-06-07 14:51:44.000000000 +0300
+@@ -533,7 +533,7 @@
+
+
+
+-
+
+
diff --git a/xalan-j2.spec b/xalan-j2.spec
new file mode 100644
index 0000000..971056b
--- /dev/null
+++ b/xalan-j2.spec
@@ -0,0 +1,315 @@
+%define section free
+
+Name: xalan-j2
+Version: 2.5.2
+Release: 1jpp
+Epoch: 0
+Summary: Java XSLT processor
+License: Apache Software License
+Source0: http://www.apache.org/dist/xml/xalan-j/source/xalan-j_2_5_2-src.tar.gz
+# Taglet jar missing from upstream 2.5.2 source tarball.
+Source1: http://cvs.apache.org/viewcvs.cgi/*checkout*/xml-xalan/java/bin/xalan2jtaglet.jar
+Patch0: %{name}-noxsltcdeps.patch
+Patch1: %{name}-manifest.patch
+Patch2: %{name}-crosslink.patch
+URL: http://xml.apache.org/xalan-j/
+Group: Text Processing/Markup/XML
+Vendor: JPackage Project
+Distribution: JPackage
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
+
+BuildArch: noarch
+Provides: jaxp_transform_impl
+Requires: jaxp_parser_impl, /usr/sbin/update-alternatives
+BuildRequires: ant, xml-commons-apis, bcel, servlet, jlex, java_cup, sed
+BuildRequires: jpackage-utils >= 0:1.5, java-devel, xerces-j2
+
+%description
+Xalan is an XSLT processor for transforming XML documents into HTML,
+text, or other XML document types. It implements the W3C Recommendations
+for XSL Transformations (XSLT) and the XML Path Language (XPath). It can
+be used from the command line, in an applet or a servlet, or as a module
+in other program.
+
+%package xsltc
+Summary: XSLT compiler
+Group: Text Processing/Markup/XML
+Requires: java_cup, bcel, jlex, regexp, jaxp_parser_impl
+#Requires: /usr/sbin/update-alternatives
+#Provides: jaxp_transform_impl
+
+%description xsltc
+The XSLT Compiler is a Java-based tool for compiling XSLT stylesheets into
+lightweight and portable Java byte codes called translets.
+
+%package manual
+Summary: Manual for %{name}
+Group: Text Processing/Markup/XML
+
+%description manual
+Documentation for %{name}.
+
+%package javadoc
+Summary: Javadoc for %{name}
+Group: Development/Documentation
+BuildRequires: java-javadoc
+
+%description javadoc
+Javadoc for %{name}.
+
+%package demo
+Summary: Demo for %{name}
+Group: Text Processing/Markup/XML
+Requires: %{name} = %{epoch}:%{version}-%{release}, servlet
+BuildRequires: servlet
+
+%description demo
+Demonstrations and samples for %{name}.
+
+
+%prep
+%setup -q -n xalan-j_2_5_2
+%patch0 -p0
+%patch1 -p0
+%patch2 -p0
+# Remove all binary libs, except ones needed to build docs and N/A elsewhere.
+find . -name "*.jar" \
+ ! -name xalan2jdoc.jar \
+ ! -name stylebook-1.0-b3_xalan-2.jar \
+ -exec rm -f {} \;
+cp -p %{SOURCE1} bin
+
+
+%build
+if [ ! -e "$JAVA_HOME" ] ; then export JAVA_HOME="%{java_home}" ; fi
+export CLASSPATH=$(build-classpath servlet java_cup java_cup-runtime jlex \
+bcel xerces-j2)
+
+ant \
+ -Dapi.j2se=%{_javadocdir}/java \
+ -Dbuild.xalan-interpretive.jar=build/xalan-interpretive.jar \
+ xalan-interpretive.jar\
+ xsltc.unbundledjar \
+ docs \
+ xsltc.docs \
+ javadocs \
+ samples \
+ servlet
+
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+# jars
+install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
+install -p -m 644 build/xalan-interpretive.jar \
+ $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
+install -p -m 644 build/xsltc.jar \
+ $RPM_BUILD_ROOT%{_javadir}/xsltc-%{version}.jar
+(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
+
+# javadoc
+install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
+cp -pr build/docs/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
+ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}
+rm -rf build/docs/apidocs
+
+# demo
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}
+install -p -m 644 build/xalansamples.jar \
+ $RPM_BUILD_ROOT%{_datadir}/%{name}/%{name}-samples.jar
+install -p -m 644 build/xalanservlet.war \
+ $RPM_BUILD_ROOT%{_datadir}/%{name}/%{name}-servlet.war
+cp -pr samples $RPM_BUILD_ROOT%{_datadir}/%{name}
+
+# fix link between manual and javadoc
+(cd build/docs; ln -sf %{_javadocdir}/%{name}-%{version} apidocs)
+
+# jaxp_transform_impl ghost symlink
+ln -s %{_sysconfdir}/alternatives \
+ $RPM_BUILD_ROOT%{_javadir}/jaxp_transform_impl.jar
+
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+
+%post
+update-alternatives --install %{_javadir}/jaxp_transform_impl.jar \
+ jaxp_transform_impl %{_javadir}/%{name}.jar 30
+
+%preun
+{
+ [ $1 = 0 ] || exit 0
+ update-alternatives --remove jaxp_transform_impl %{_javadir}/%{name}.jar
+} >/dev/null 2>&1 || :
+
+#%post xsltc
+#update-alternatives --install %{_javadir}/jaxp_transform_impl.jar \
+# jaxp_transform_impl %{_javadir}/xsltc.jar 10
+
+#%preun xsltc
+#{
+# [ $1 = 0 ] || exit 0
+# update-alternatives --remove jaxp_transform_impl %{_javadir}/xsltc.jar
+#} >/dev/null 2>&1 || :
+
+%post javadoc
+rm -f %{_javadocdir}/%{name}
+ln -s %{name}-%{version} %{_javadocdir}/%{name}
+
+
+%files
+%defattr(0644,root,root,0755)
+%doc KEYS License
+%{_javadir}/%{name}-%{version}.jar
+%{_javadir}/%{name}.jar
+%ghost %{_javadir}/jaxp_transform_impl.jar
+
+%files xsltc
+%defattr(0644,root,root,0755)
+%{_javadir}/xsltc-%{version}.jar
+%{_javadir}/xsltc.jar
+#%ghost %{_javadir}/jaxp_transform_impl.jar
+
+%files manual
+%defattr(0644,root,root,0755)
+%doc build/docs/*
+
+%files javadoc
+%defattr(0644,root,root,0755)
+%doc %{_javadocdir}/%{name}-%{version}
+%ghost %doc %{_javadocdir}/%{name}
+
+%files demo
+%defattr(0644,root,root,0755)
+%{_datadir}/%{name}
+
+
+%changelog
+* Sat Nov 15 2003 Ville Skyttä - 0:2.5.2-1jpp
+- Update to 2.5.2.
+- Re-enable javadocs, new style versionless symlink handling, crosslink
+ with local J2SE javadocs.
+- Spec cleanups.
+
+* Sat Jun 7 2003 Ville Skyttä - 0:2.5.1-1jpp
+- Update to 2.5.1.
+- Fix jpackage-utils version in BuildRequires, add xerces-j2.
+- Non-versioned javadoc symlinking.
+- Add one missing epoch.
+- Clean up manifests from Class-Path's and other stuff we don't include.
+- xsltc no longer provides a jaxp_transform_impl because of huge classpath
+ and general unsuitablity for production-use, system-installed transformer.
+- Own (ghost) %%{_javadir}/jaxp_transform_impl.jar.
+- Remove alternatives in preun instead of postun.
+- Disable javadoc subpackage for now:
+
+
+* Thu Mar 27 2003 Nicolas Mailhot 0:2.5.0.d1-1jpp
+- For jpackage-utils 1.5
+
+* Wed Jan 22 2003 Ville Skyttä - 2.4.1-2jpp
+- bsf -> oldbsf.
+- Use non-versioned jar in alternative, don't remove it on upgrade.
+- Remove hardcoded packager tag.
+
+* Mon Nov 04 2002 Henri Gomez 2.4.1-1jpp
+- 2.4.1
+
+* Tue Sep 10 2002 Ville Skyttä 2.4.0-1jpp
+- 2.4.0.
+
+* Thu Aug 22 2002 Guillaume Rousse 2.4-0.D1.3jpp
+- corrected case for Group tag
+- fixed servlet classpath
+
+* Tue Aug 20 2002 Ville Skyttä 2.4-0.D1.2jpp
+- Remove xerces-j1 runtime dependency.
+- Add bcel, jlex, regexp to xsltc runtime requirements:
+
+- Build with -Dbuild.compiler=modern (IBM 1.3.1) to avoid stylebook errors.
+- XSLTC now provides jaxp_transform_impl too.
+- Earlier changes by Henri, from unreleased 2.4-D1.1jpp:
+ Mon Jul 15 2002 Henri Gomez 2.4-D1.1jpp
+ - 2.4D1
+ - use the jlex 1.2.5-5jpp (patched by Xalan/XSLTC team) rpm
+ - use the stylebook-1.0-b3_xalan-2.jar included in source file till it will
+ be packaged in jpackage
+ - use jaxp_parser_impl (possibly xerces-j2) instead of xerces-j1 for docs
+ generation, since it's tuned for stylebook-1.0-b3_xalan-2.jar
+ - build and provide xsltc in a separate rpm
+
+%changelog
+* Mon Jul 01 2002 Guillaume Rousse 2.3.1-2jpp
+- provides jaxp_transform_impl
+- requires jaxp_parser_impl
+- stylebook already requires xml-commons-apis
+- jaxp_parser_impl already requires xml-commons-apis
+- use sed instead of bash 2.x extension in link area to make spec compatible with distro using bash 1.1x
+
+* Wed Jun 26 2002 Henri Gomez 2.3.1-2jpp
+- fix built classpath (bsf, bcel are existing jpackage rpms),
+- add buildrequires for javacup and JLex
+
+* Wed May 08 2002 Guillaume Rousse 2.3.1-1jpp
+- 2.3.1
+- vendor, distribution, group tags
+
+* Mon Mar 18 2002 Guillaume Rousse 2.3.0-2jpp
+- generic servlet support
+
+* Wed Feb 20 2002 Guillaume Rousse 2.3.0-1jpp
+- 2.3.0
+- no more compat jar
+
+* Sun Jan 27 2002 Guillaume Rousse 2.2.0-2jpp
+- adaptation to new stylebook1.0b3 package
+- used source tarball
+- section macro
+
+* Fri Jan 18 2002 Guillaume Rousse 2.2.0-1jpp
+- 2.2.0 final
+- versioned dir for javadoc
+- no dependencies for manual and javadoc packages
+- stricter dependency for compat and demo packages
+- fixed package confusion
+- adaptation for new servlet3 package
+- requires xerces-j1 instead of jaxp_parser
+- xml-apis jar now in required xml-commons-apis external package
+
+* Wed Dec 5 2001 Guillaume Rousse 2.2.D14-1jpp
+- 2.2.D14
+- javadoc into javadoc package
+- compat.jar into compat package
+- compat javadoc into compat-javadoc package
+
+* Wed Nov 21 2001 Christian Zoffoli 2.2.D13-2jpp
+- changed extension to jpp
+- prefixed xml-apis
+
+* Tue Nov 20 2001 Christian Zoffoli 2.2.D13-1jpp
+- 2.2.D13
+- removed packager tag
+
+* Sat Oct 6 2001 Guillaume Rousse 2.2.D11-1jpp
+- 2.2.D11
+
+* Sun Sep 30 2001 Guillaume Rousse 2.2.D10-2jpp
+- first unified release
+- s/jPackage/JPackage
+
+* Fri Sep 14 2001 Guillaume Rousse 2.2.D10-1mdk
+- cvs references
+- splitted demo package
+- moved demo files to %{_datadir}/%{name}
+- only manual package requires stylebook-1.0b3
+- only demo package requires servletapi3
+
+* Wed Aug 22 2001 Guillaume Rousse 2.2.D9-1mdk
+- 2.2.9
+- used new source packaging policy
+- added samples data
+
+* Wed Aug 08 2001 Guillaume Rousse 2.2.D6-1mdk
+- first Mandrake release