xref: /aoo41x/main/saxon/saxon-9.0.0.7-bj.patch (revision 6f36c9f0)
1cdf0e10cSrcweir--- misc/src/build.xml	2008-07-11 12:11:50.079281000 +0200
2cdf0e10cSrcweir+++ misc/build/src/build.xml	2008-07-11 12:17:29.848740000 +0200
3cdf0e10cSrcweir@@ -1 +1,1027 @@
4cdf0e10cSrcweir-dummy
5cdf0e10cSrcweir+<?xml version="1.0" encoding="UTF-8"?>
6cdf0e10cSrcweir+
7cdf0e10cSrcweir+<project basedir="." default="all" name="Saxon-B The XSLT and XQuery Processor"
8cdf0e10cSrcweir+         xmlns:dn="antlib:org.apache.ant.dotnet">
9cdf0e10cSrcweir+
10cdf0e10cSrcweir+
11cdf0e10cSrcweir+    <!-- TODO *really* Must publish NOTICES directory with patch releases. Should also
12cdf0e10cSrcweir+          publish doc directory, and add a notice concerning Saxon/MPL itself, as per section 3.6 of MPL 1.0 -->
13cdf0e10cSrcweir+
14cdf0e10cSrcweir+    <!--TODO: 1: ensure saxon9api.netmodule is included in the build
15cdf0e10cSrcweir+           2: remove the archive target before shipping this file-->
16cdf0e10cSrcweir+
17cdf0e10cSrcweir+    <!-- note : Ant 1.7 is needed for this script -->
18cdf0e10cSrcweir+
19cdf0e10cSrcweir+    <!-- Ant 1.7 introduces a <service> element to allow META-INF/services
20cdf0e10cSrcweir+         directories to be created in JAR files. Unfortunately it is broken,
21cdf0e10cSrcweir+         see http://issues.apache.org/bugzilla/show_bug.cgi?id=41201. The relevant
22cdf0e10cSrcweir+         code here is retained in the form of comments, and can be reinstated
23cdf0e10cSrcweir+         when the bug is fixed. Meanwhile the directories are created manually -->
24cdf0e10cSrcweir+
25cdf0e10cSrcweir+    <!-- Build file for Saxon. This builds all four for the released products:
26cdf0e10cSrcweir+         Saxon-B and Saxon-SA, on both the Java and .NET platforms. It also builds
27cdf0e10cSrcweir+         the released resources file. A full build requires access to Saxonica
28cdf0e10cSrcweir+         proprietary source code. The open source Saxon-B product can be built for
29cdf0e10cSrcweir+         Java using target "bj"; but building Saxon-B for .NET may require some
30cdf0e10cSrcweir+         disentangling of tasks that depend on Saxon-SA being present. -->
31cdf0e10cSrcweir+
32cdf0e10cSrcweir+    <!-- Useful targets:
33cdf0e10cSrcweir+
34cdf0e10cSrcweir+         clean        clears temporary directories
35cdf0e10cSrcweir+         bj           builds executables for Saxon-B
36cdf0e10cSrcweir+         saj          builds executables for Saxon-B and Saxon-SA
37cdf0e10cSrcweir+         n            builds executables for Saxon on .NET
38cdf0e10cSrcweir+         build        builds all executables
39cdf0e10cSrcweir+         resources    builds samples and documentation
40cdf0e10cSrcweir+         release      builds ZIP files for published downloads
41cdf0e10cSrcweir+         archive      produces a back-up archive  -->
42cdf0e10cSrcweir+
43cdf0e10cSrcweir+
44cdf0e10cSrcweir+    <!-- Naming conventions:
45cdf0e10cSrcweir+         -n   : .NET
46cdf0e10cSrcweir+         -j   : Java
47cdf0e10cSrcweir+         -b   : Saxon-B
48cdf0e10cSrcweir+         -sa  : Saxon-SA
49cdf0e10cSrcweir+         combined as appropriate, so -bj denotes Saxon-B on the Java platform
50cdf0e10cSrcweir+    -->
51cdf0e10cSrcweir+
52cdf0e10cSrcweir+    <property name="version" value="9.0.0.7"/>
53cdf0e10cSrcweir+    <property name="versionh" value="9-0-0-7"/>
54cdf0e10cSrcweir+    <property name="release.date" value="2008-07-03"/>
55cdf0e10cSrcweir+
56cdf0e10cSrcweir+    <!-- following locations are specific to the machine -->
57cdf0e10cSrcweir+
58cdf0e10cSrcweir+		    <!-- root drive for input files-->
59cdf0e10cSrcweir+		    <property name="root" value="."/>
60cdf0e10cSrcweir+
61cdf0e10cSrcweir+		    <!-- root drive for generated files-->
62cdf0e10cSrcweir+		    <property name="troot" value="."/>
63cdf0e10cSrcweir+
64cdf0e10cSrcweir+		    <!-- directory holding Java source code -->
65cdf0e10cSrcweir+		    <property name="development-j.dir" value="${root}/MyJava/saxon8.x"/>
66cdf0e10cSrcweir+
67cdf0e10cSrcweir+		    <!-- directory holding Java source code as in Subversion -->
68cdf0e10cSrcweir+		    <property name="subversion-j.dir" value="${root}"/>
69cdf0e10cSrcweir+
70cdf0e10cSrcweir+		    <!-- directory holding latest patch state of Saxon-SA Java code -->
71cdf0e10cSrcweir+		    <property name="saj-patch.dir" value="${root}/saxon-90-patch"/>
72cdf0e10cSrcweir+
73cdf0e10cSrcweir+		    <!-- directory holding Java test drivers -->
74cdf0e10cSrcweir+		    <property name="drivers-j.dir" value="${root}/MyJava/test"/>
75cdf0e10cSrcweir+
76cdf0e10cSrcweir+		    <!-- directories holding C# source code -->
77cdf0e10cSrcweir+		    <property name="vss-n.dir" value="${root}/Documents and Settings/Mike/My Documents/Visual Studio 2005/Projects/Saxon.Api"/>
78cdf0e10cSrcweir+
79cdf0e10cSrcweir+		    <!-- directory holding C# source code as in Subversion -->
80cdf0e10cSrcweir+		    <property name="subversion-n.dir" value="${root}/saxon-svn/latest9.0/bn/csource"/>
81cdf0e10cSrcweir+
82cdf0e10cSrcweir+		    <!-- directory holding XML user documentation -->
83cdf0e10cSrcweir+		    <property name="userdoc.dir" value="${root}/MyJava/doc/saxon8"/>
84cdf0e10cSrcweir+
85cdf0e10cSrcweir+		    <!-- directory holding .NET API documentation (which is built manually using NDOC -->
86cdf0e10cSrcweir+		    <property name="dotnetdoc.dir" value="${root}/MyDotNet/dotnetdoc"/>
87cdf0e10cSrcweir+
88cdf0e10cSrcweir+		    <!-- directories holding use cases and sample applications -->
89cdf0e10cSrcweir+		    <property name="usercases.dir" value="${root}/MyJava/use-cases"/>
90cdf0e10cSrcweir+		    <property name="samples.dir" value="${root}/MyJava/samples"/>
91cdf0e10cSrcweir+
92cdf0e10cSrcweir+		    <!-- directory in which to build the product for release -->
93cdf0e10cSrcweir+		    <property name="product.dir" value="${troot}/saxon-build/${version}"/>
94cdf0e10cSrcweir+
95cdf0e10cSrcweir+		    <!-- directory in which to build the issued .ZIP files -->
96cdf0e10cSrcweir+		    <property name="issue.dir" value="${troot}/saxon-issues/saxon-issue-${release.date} (${version})"/>
97cdf0e10cSrcweir+
98cdf0e10cSrcweir+		    <!-- location of the C# compiler -->
99cdf0e10cSrcweir+		    <property name="csharp.compiler" value="c:/Windows/Microsoft.NET/Framework/v1.1.4322/csc.exe"/>
100cdf0e10cSrcweir+
101cdf0e10cSrcweir+
102cdf0e10cSrcweir+    <!-- following locations are for IKVMC code used to build the .NET product -->
103cdf0e10cSrcweir+
104cdf0e10cSrcweir+    <property name="development-ikvm.dir" value="${root}/MyDotNet"/>
105cdf0e10cSrcweir+    <property name="ikvm.dir" value="${development-ikvm.dir}/ikvm-0.32.0.0"/>
106cdf0e10cSrcweir+    <property name="generated.stubs.dir" value="${development-ikvm.dir}/stubs"/>
107cdf0e10cSrcweir+    <property name="saxondotnet.snk" value="${development-ikvm.dir}/make/saxondotnet.snk"/>
108cdf0e10cSrcweir+
109cdf0e10cSrcweir+    <!-- Precondition for .NET compilation: IKVM is installed.
110cdf0e10cSrcweir+         * Download from www.ikvm.net
111cdf0e10cSrcweir+         * Unzip into ${development-ikvm.dir}
112cdf0e10cSrcweir+         * Register in the GAC (access the Microsoft .NET Framework Configuration item in the
113cdf0e10cSrcweir+                                Windows Control Panel, and add the assemblies to the Assembly Cache.
114cdf0e10cSrcweir+                                At a minimum, install the IKVM.GNU.Classpath.dll and IKVM.Runtime.dll)
115cdf0e10cSrcweir+         * Generate stubs in ${generated.stubs.dir}
116cdf0e10cSrcweir+           for System.Xml.dll, System.Security.dll, and IKVM.GNU.Classpath.dll
117cdf0e10cSrcweir+    -->
118cdf0e10cSrcweir+
119cdf0e10cSrcweir+    <!-- following locations are relative to the build file -->
120cdf0e10cSrcweir+
121cdf0e10cSrcweir+    <property name="lib.dir" value="libs"/>
122cdf0e10cSrcweir+    <property name="temp.dir" value="temp"/>
123cdf0e10cSrcweir+    <property name="archive.dir" value="archive"/>
124cdf0e10cSrcweir+    <property name="services.dir" value="services"/>
125cdf0e10cSrcweir+    <property name="temp-src-j.dir" value="${temp.dir}/j/source"/>
126cdf0e10cSrcweir+    <property name="temp-src-nj.dir" value="${temp.dir}/n/jsource"/>
127cdf0e10cSrcweir+    <property name="temp-src-nc.dir" value="${temp.dir}/n/csource"/>
128cdf0e10cSrcweir+    <property name="classes-j.dir" value="${temp.dir}/j/classes"/>
129cdf0e10cSrcweir+    <property name="classes-n.dir" value="${temp.dir}/n/classes"/>
130cdf0e10cSrcweir+    <property name="jar-n.dir" value="${temp.dir}/n/jar"/>
131cdf0e10cSrcweir+    <property name="dll-n.dir" value="${temp.dir}/n/dll"/>
132cdf0e10cSrcweir+
133cdf0e10cSrcweir+		<!-- following locations are relative to the destination directory -->
134cdf0e10cSrcweir+
135cdf0e10cSrcweir+		<property name="build-bj.dir" value="${product.dir}/bj"/>
136cdf0e10cSrcweir+		<property name="build-saj.dir" value="${product.dir}/saj"/>
137cdf0e10cSrcweir+		<property name="build-bn.dir" value="${product.dir}/bn"/>
138cdf0e10cSrcweir+		<property name="build-san.dir" value="${product.dir}/san"/>
139cdf0e10cSrcweir+		<property name="build-resources.dir" value="${product.dir}/resources"/>
140cdf0e10cSrcweir+	  <property name="javadoc.dir" value="${build-resources.dir}/doc/javadoc"/>
141cdf0e10cSrcweir+
142cdf0e10cSrcweir+
143cdf0e10cSrcweir+    <property name="build.debug" value="true"/>
144cdf0e10cSrcweir+    <property name="build.debuglevel" value="source,lines,vars"/>
145cdf0e10cSrcweir+    <property name="build.deprecation" value="true"/>
146cdf0e10cSrcweir+    <property name="build.optimize" value="true"/>
147cdf0e10cSrcweir+    <property name="build.compiler.source" value="1.4"/>
148cdf0e10cSrcweir+    <property name="build.compiler.target" value="1.4"/>
149cdf0e10cSrcweir+    <property name="build.s9api.compiler.source" value="1.5"/>
150cdf0e10cSrcweir+    <property name="build.s9api.compiler.target" value="1.5"/>
151cdf0e10cSrcweir+    <property name="build.compress" value="false"/>
152cdf0e10cSrcweir+
153cdf0e10cSrcweir+    <!-- following properties can be switched to determine whether to build from patch source
154cdf0e10cSrcweir+         or from development source -->
155cdf0e10cSrcweir+
156cdf0e10cSrcweir+    <!-- patch source -->
157cdf0e10cSrcweir+
158cdf0e10cSrcweir+    <property name="source-bj.dir" value="${subversion-j.dir}"/>
159cdf0e10cSrcweir+    <property name="source-saj.dir" value="${saj-patch.dir}"/>
160cdf0e10cSrcweir+    <property name="source-api-n.dir" value="${subversion-n.dir}/api/Saxon.Api"/>
161cdf0e10cSrcweir+    <property name="source-cmd-n.dir" value="${subversion-n.dir}/cmd"/>
162cdf0e10cSrcweir+    <property name="source-samples-n.dir" value="${subversion-n.dir}/samples"/>
163cdf0e10cSrcweir+
164cdf0e10cSrcweir+    <!-- development source -->
165cdf0e10cSrcweir+		<!--
166cdf0e10cSrcweir+    <property name="source-bj.dir" value="${development-j.dir}"/>
167cdf0e10cSrcweir+    <property name="source-saj.dir" value="${development-j.dir}"/>
168cdf0e10cSrcweir+    <property name="source-api-n.dir" value="${vss-n.dir}"/>
169cdf0e10cSrcweir+    <property name="source-cmd-n.dir" value="${vss-n.dir}"/>
170cdf0e10cSrcweir+    <property name="source-samples-n.dir" value="${vss-n.dir}"/>
171cdf0e10cSrcweir+    -->
172cdf0e10cSrcweir+
173cdf0e10cSrcweir+    <property name="solar.bin" value="${solarbindir}"/>
174cdf0e10cSrcweir+    <path id="classpath-j">
175cdf0e10cSrcweir+        <fileset dir="${solar.bin}">
176*6f36c9f0SPedro Giffuni+            <include name="stax-1.2.0.jar"/>
177cdf0e10cSrcweir+        </fileset>
178cdf0e10cSrcweir+    </path>
179cdf0e10cSrcweir+
180cdf0e10cSrcweir+    <path id="classpath-n">
181cdf0e10cSrcweir+        <fileset dir="${lib.dir}">
182cdf0e10cSrcweir+            <include name="*.jar"/>
183cdf0e10cSrcweir+        </fileset>
184cdf0e10cSrcweir+        <fileset dir="${ikvm.dir}">
185cdf0e10cSrcweir+        	 <include name="classpath/mscorlib.jar"/>
186cdf0e10cSrcweir+        	 <include name="classpath/System.jar"/>
187cdf0e10cSrcweir+        	 <include name="bin/IKVM.GNU.Classpath.jar"/>
188cdf0e10cSrcweir+        	 <include name="bin/IKVM.Runtime.jar"/>
189cdf0e10cSrcweir+        </fileset>
190cdf0e10cSrcweir+        <fileset dir="${generated.stubs.dir}">
191cdf0e10cSrcweir+        	 <include name="System.Xml.jar"/>
192cdf0e10cSrcweir+        	 <include name="System.Security.jar"/>
193cdf0e10cSrcweir+        </fileset>
194cdf0e10cSrcweir+    </path>
195cdf0e10cSrcweir+
196cdf0e10cSrcweir+    <path id="classpath-samples">
197cdf0e10cSrcweir+        <fileset dir="${lib.dir}">
198cdf0e10cSrcweir+            <include name="*.jar"/>
199cdf0e10cSrcweir+        </fileset>
200cdf0e10cSrcweir+        <fileset dir="${build-saj.dir}">
201cdf0e10cSrcweir+            <include name="*.jar"/>
202cdf0e10cSrcweir+        </fileset>
203cdf0e10cSrcweir+        <!-- Substitute build-bj.dir if there is no requirement to compile the sample applications
204cdf0e10cSrcweir+             that depend on Saxon-SA -->
205cdf0e10cSrcweir+    </path>
206cdf0e10cSrcweir+
207cdf0e10cSrcweir+    <target name="clean" description="Clean all files other than source code and downloaded jars.">
208cdf0e10cSrcweir+        <delete dir="${temp.dir}"/>
209cdf0e10cSrcweir+        <delete dir="${product.dir}"/>
210cdf0e10cSrcweir+        <mkdir dir="${product.dir}"/>
211cdf0e10cSrcweir+    </target>
212cdf0e10cSrcweir+
213cdf0e10cSrcweir+    <target name="download" description="Download third-party jar files.">
214cdf0e10cSrcweir+        <get src="http://mirrors.ibiblio.org/pub/mirrors/maven2/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar"
215cdf0e10cSrcweir+            dest="${lib.dir}/dom4j-1.6.1.jar" verbose="true"/>
216cdf0e10cSrcweir+
217cdf0e10cSrcweir+        <get src="http://www.ibiblio.org/maven/jdom/jars/jdom-1.0.jar"
218cdf0e10cSrcweir+            dest="${lib.dir}/jdom-1.0.jar" verbose="true"/>
219cdf0e10cSrcweir+
220cdf0e10cSrcweir+        <get src="http://www.cafeconleche.org/XOM/xom-1.1.jar" dest="${lib.dir}/xom-1.1.jar"
221cdf0e10cSrcweir+            verbose="true"/>
222cdf0e10cSrcweir+
223cdf0e10cSrcweir+        <get src="http://dist.codehaus.org/stax/jars/stax-api-1.0.1.jar" dest="${lib.dir}/stax-api-1.0.1.jar"
224cdf0e10cSrcweir+            verbose="true"/>
225cdf0e10cSrcweir+
226cdf0e10cSrcweir+            <!-- TODO: add servlet.jar, ant.jar -->
227cdf0e10cSrcweir+
228cdf0e10cSrcweir+    </target>
229cdf0e10cSrcweir+
230cdf0e10cSrcweir+
231cdf0e10cSrcweir+    <target name="copysource-development" description="Copy relevant source files from development directory">
232cdf0e10cSrcweir+        <copy todir="${temp-src-j.dir}">
233cdf0e10cSrcweir+          <fileset dir="${source-bj.dir}">
234cdf0e10cSrcweir+            <include name="net/sf/saxon/**/*.java"/>
235cdf0e10cSrcweir+            <exclude name="**/dotnet/**"/>
236cdf0e10cSrcweir+            <!--<exclude name="**/s9api/**"/>		 s9api needs Java 5 -->
237cdf0e10cSrcweir+            <include name="net/sf/saxon/**/package.html"/>
238cdf0e10cSrcweir+          </fileset>
239cdf0e10cSrcweir+ <!--
240cdf0e10cSrcweir+          <fileset dir="${source-saj.dir}">
241cdf0e10cSrcweir+            <include name="com/saxonica/**/*.java"/>
242cdf0e10cSrcweir+            <exclude name="com/saxonica/validate/DotNetVerifier.java"/>
243cdf0e10cSrcweir+            <include name="com/saxonica/**/package.html"/>
244cdf0e10cSrcweir+          </fileset>
245cdf0e10cSrcweir+ -->
246cdf0e10cSrcweir+        </copy>
247cdf0e10cSrcweir+        <!--
248cdf0e10cSrcweir+        <replace file="${temp-src-j.dir}/com/saxonica/validate/SchemaAwareConfiguration.java"
249cdf0e10cSrcweir+                 token="/*DOTNETONLY*/"
250cdf0e10cSrcweir+                 value="//"
251cdf0e10cSrcweir+                 summary="yes"/>
252cdf0e10cSrcweir+                 -->
253cdf0e10cSrcweir+        <replace file="${temp-src-j.dir}/net/sf/saxon/Configuration.java"
254cdf0e10cSrcweir+                 token="/*DOTNETONLY*/"
255cdf0e10cSrcweir+                 value="//"
256cdf0e10cSrcweir+                 summary="yes"/>
257cdf0e10cSrcweir+        <copy todir="${temp-src-nj.dir}">
258cdf0e10cSrcweir+          <fileset dir="${source-bj.dir}">
259cdf0e10cSrcweir+            <include name="net/sf/saxon/**/*.java"/>
260cdf0e10cSrcweir+            <exclude name="**/ant/**"/>
261cdf0e10cSrcweir+            <exclude name="**/dom/**"/>
262cdf0e10cSrcweir+            <exclude name="**/dom4j/**"/>
263cdf0e10cSrcweir+            <exclude name="**/java/**"/>
264cdf0e10cSrcweir+            <exclude name="**/javax/**"/>
265cdf0e10cSrcweir+            <exclude name="**/jdom/**"/>
266cdf0e10cSrcweir+            <exclude name="**/pull/PullToStax.java"/>
267cdf0e10cSrcweir+            <exclude name="**/pull/StaxBridge.java"/>
268cdf0e10cSrcweir+            <!-- <exclude name="**/s9api/**"/>		s9api needs Java 5 -->
269cdf0e10cSrcweir+            <exclude name="**/xom/**"/>
270cdf0e10cSrcweir+            <exclude name="**/xpath/**"/>
271cdf0e10cSrcweir+            <exclude name="**/xqj/**"/>
272cdf0e10cSrcweir+          </fileset>
273cdf0e10cSrcweir+          <!--
274cdf0e10cSrcweir+					<fileset dir="${source-saj.dir}">
275cdf0e10cSrcweir+            <include name="com/saxonica/extra/*.java"/>
276cdf0e10cSrcweir+            <include name="com/saxonica/fsa/*.java"/>
277cdf0e10cSrcweir+            <include name="com/saxonica/ptree/*.java"/>
278cdf0e10cSrcweir+            <include name="com/saxonica/schema/*.java"/>
279cdf0e10cSrcweir+            <include name="com/saxonica/sdoc/*.java"/>
280cdf0e10cSrcweir+            <include name="com/saxonica/validate/*.java"/>
281cdf0e10cSrcweir+            <include name="com/saxonica/Validate.java"/>
282cdf0e10cSrcweir+          </fileset>-->
283cdf0e10cSrcweir+        </copy>
284cdf0e10cSrcweir+        <!--
285cdf0e10cSrcweir+        <replace file="${temp-src-nj.dir}/com/saxonica/validate/SchemaAwareConfiguration.java"
286cdf0e10cSrcweir+                 token="/*JAVAONLY*/"
287cdf0e10cSrcweir+                 value="//"
288cdf0e10cSrcweir+                 summary="yes"/>
289cdf0e10cSrcweir+                 -->
290cdf0e10cSrcweir+        <replace file="${temp-src-nj.dir}/net/sf/saxon/Configuration.java"
291cdf0e10cSrcweir+                 token="/*JAVAONLY*/"
292cdf0e10cSrcweir+                 value="//"
293cdf0e10cSrcweir+                 summary="yes"/>
294cdf0e10cSrcweir+        <!-- when building from development source
295cdf0e10cSrcweir+        <copy todir="${temp-src-nc.dir}/api">
296cdf0e10cSrcweir+          <fileset dir="${source-api-n.dir}">
297cdf0e10cSrcweir+            <include name="Saxon.Api/*.cs"/>
298cdf0e10cSrcweir+          </fileset>
299cdf0e10cSrcweir+        </copy>
300cdf0e10cSrcweir+
301cdf0e10cSrcweir+        <copy todir="${temp-src-nc.dir}/cmd">
302cdf0e10cSrcweir+          <fileset dir="${source-cmd-n.dir}/Transform">
303cdf0e10cSrcweir+            <include name="*.cs"/>
304cdf0e10cSrcweir+          </fileset>
305cdf0e10cSrcweir+          <fileset dir="${source-cmd-n.dir}/Query">
306cdf0e10cSrcweir+            <include name="*.cs"/>
307cdf0e10cSrcweir+          </fileset>
308cdf0e10cSrcweir+          <fileset dir="${source-cmd-n.dir}/Validate">
309cdf0e10cSrcweir+            <include name="*.cs"/>
310cdf0e10cSrcweir+          </fileset>
311cdf0e10cSrcweir+        </copy>
312cdf0e10cSrcweir+        <copy todir="${temp-src-nc.dir}/samples">
313cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/XQueryExamples">
314cdf0e10cSrcweir+            <include name="*.cs"/>
315cdf0e10cSrcweir+          </fileset>
316cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/XPathExample">
317cdf0e10cSrcweir+            <include name="*.cs"/>
318cdf0e10cSrcweir+          </fileset>
319cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/XsltExamples">
320cdf0e10cSrcweir+            <include name="*.cs"/>
321cdf0e10cSrcweir+          </fileset>
322cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/SchemaExamples">
323cdf0e10cSrcweir+            <include name="*.cs"/>
324cdf0e10cSrcweir+          </fileset>
325cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/XsltTestSuiteDriver">
326cdf0e10cSrcweir+            <include name="*.cs"/>
327cdf0e10cSrcweir+          </fileset>
328cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/XQueryTestSuiteDriver">
329cdf0e10cSrcweir+            <include name="*.cs"/>
330cdf0e10cSrcweir+          </fileset>
331cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}/SampleExtensions">
332cdf0e10cSrcweir+            <include name="*.cs"/>
333cdf0e10cSrcweir+          </fileset>
334cdf0e10cSrcweir+        </copy>
335cdf0e10cSrcweir+        -->
336cdf0e10cSrcweir+        <!-- when building from patch source
337cdf0e10cSrcweir+        <copy todir="${temp-src-nc.dir}/api/Saxon.Api">
338cdf0e10cSrcweir+          <fileset dir="${source-api-n.dir}">
339cdf0e10cSrcweir+            <include name="*.cs"/>
340cdf0e10cSrcweir+          </fileset>
341cdf0e10cSrcweir+        </copy>
342cdf0e10cSrcweir+        <copy todir="${temp-src-nc.dir}/cmd" >
343cdf0e10cSrcweir+          <fileset dir="${source-cmd-n.dir}">
344cdf0e10cSrcweir+            <include name="*.cs"/>
345cdf0e10cSrcweir+          </fileset>
346cdf0e10cSrcweir+        </copy>
347cdf0e10cSrcweir+        <copy todir="${temp-src-nc.dir}/samples">
348cdf0e10cSrcweir+          <fileset dir="${source-samples-n.dir}">
349cdf0e10cSrcweir+            <include name="*.cs"/>
350cdf0e10cSrcweir+          </fileset>
351cdf0e10cSrcweir+        </copy>
352cdf0e10cSrcweir+        -->
353cdf0e10cSrcweir+        <!-- -->
354cdf0e10cSrcweir+
355cdf0e10cSrcweir+    </target>
356cdf0e10cSrcweir+
357cdf0e10cSrcweir+    <target name="create-meta-inf" description="Create contents of META-INF/services files">
358cdf0e10cSrcweir+
359cdf0e10cSrcweir+        <!-- given the Ant 1.7.0 bug, create the services files here for copying into the JARS -->
360cdf0e10cSrcweir+        <mkdir dir="${services.dir}/saxon9/META-INF/services"/>
361cdf0e10cSrcweir+        <echo file="${services.dir}/saxon9/META-INF/services/javax.xml.transform.TransformerFactory"
362cdf0e10cSrcweir+              message="net.sf.saxon.TransformerFactoryImpl"/>
363cdf0e10cSrcweir+        <mkdir dir="${services.dir}/saxon9-xpath/META-INF/services"/>
364cdf0e10cSrcweir+        <echo file="${services.dir}/saxon9-xpath/META-INF/services/javax.xml.xpath.XPathFactory"
365cdf0e10cSrcweir+>net.sf.saxon.xpath.XPathFactoryImpl
366cdf0e10cSrcweir+http\://java.sun.com/jaxp/xpath/dom:    net.sf.saxon.xpath.XPathFactoryImpl
367cdf0e10cSrcweir+http\://saxon.sf.net/jaxp/xpath/om:     net.sf.saxon.xpath.XPathFactoryImpl
368cdf0e10cSrcweir+http\://www.xom.nu/jaxp/xpath/xom:      net.sf.saxon.xpath.XPathFactoryImpl
369cdf0e10cSrcweir+http\://jdom.org/jaxp/xpath/jdom:       net.sf.saxon.xpath.XPathFactoryImpl
370cdf0e10cSrcweir+http\://www.dom4j.org/jaxp/xpath/dom4j: net.sf.saxon.xpath.XPathFactoryImpl
371cdf0e10cSrcweir+</echo>
372cdf0e10cSrcweir+        <mkdir dir="${services.dir}/saxon9sa/META-INF/services"/>
373cdf0e10cSrcweir+        <echo file="${services.dir}/saxon9sa/META-INF/services/javax.xml.transform.TransformerFactory"
374cdf0e10cSrcweir+              message="com.saxonica.SchemaAwareTransformerFactory"/>
375cdf0e10cSrcweir+        <mkdir dir="${services.dir}/saxon9sa-jaxp/META-INF/services"/>
376cdf0e10cSrcweir+        <echo file="${services.dir}/saxon9sa-jaxp/META-INF/services/javax.xml.validation.SchemaFactory"
377cdf0e10cSrcweir+>com.saxonica.jaxp.SchemaFactoryImpl
378cdf0e10cSrcweir+http\://www.w3.org/2001/XMLSchema: com.saxonica.jaxp.SchemaFactoryImpl
379cdf0e10cSrcweir+</echo>
380cdf0e10cSrcweir+
381cdf0e10cSrcweir+
382cdf0e10cSrcweir+    </target>
383cdf0e10cSrcweir+
384cdf0e10cSrcweir+    <target name="compile-bj" description="Compile Saxon-B classes for Java." depends="copysource-development">
385cdf0e10cSrcweir+        <mkdir dir="${classes-j.dir}"/>
386cdf0e10cSrcweir+        <javac encoding="ISO-8859-1" debug="${build.debug}" debuglevel="${build.debuglevel}"
387cdf0e10cSrcweir+            deprecation="${build.deprecation}" destdir="${classes-j.dir}"
388cdf0e10cSrcweir+            optimize="${build.optimize}" srcdir="${temp-src-j.dir}" source="${build.compiler.source}"
389cdf0e10cSrcweir+            target="${build.compiler.target}">
390cdf0e10cSrcweir+
391cdf0e10cSrcweir+            <include name="net/**"/>
392cdf0e10cSrcweir+            <exclude name="**/dom/**"/>
393cdf0e10cSrcweir+            <exclude name="**/dom4j/**"/>
394cdf0e10cSrcweir+            <exclude name="**/javax/**"/>
395cdf0e10cSrcweir+            <exclude name="**/jdom/**"/>
396cdf0e10cSrcweir+            <exclude name="**/sql/**"/>
397cdf0e10cSrcweir+            <exclude name="**/xom/**"/>
398cdf0e10cSrcweir+            <exclude name="**/xpath/**"/>
399cdf0e10cSrcweir+            <exclude name="**/xqj/**"/>
400cdf0e10cSrcweir+            <exclude name="**/dotnet/**"/>
401cdf0e10cSrcweir+            <exclude name="**/s9api/**"/>
402cdf0e10cSrcweir+
403cdf0e10cSrcweir+            <exclude name="**/ant/**"/>
404cdf0e10cSrcweir+            <exclude name="**/dotnet/**"/>
405cdf0e10cSrcweir+            <exclude name="**/s9api/**"/>
406cdf0e10cSrcweir+            <classpath>
407cdf0e10cSrcweir+                <path refid="classpath-j"/>
408cdf0e10cSrcweir+            </classpath>
409cdf0e10cSrcweir+        </javac>
410cdf0e10cSrcweir+    </target>
411cdf0e10cSrcweir+
412cdf0e10cSrcweir+    <target name="compile-saj" description="Compile Saxon-SA classes for Java." depends="copysource-development">
413cdf0e10cSrcweir+        <mkdir dir="${classes-j.dir}"/>
414cdf0e10cSrcweir+        <javac debug="${build.debug}"  debuglevel="${build.debuglevel}"
415cdf0e10cSrcweir+            deprecation="${build.deprecation}" destdir="${classes-j.dir}"
416cdf0e10cSrcweir+            optimize="${build.optimize}" srcdir="${temp-src-j.dir}" source="${build.compiler.source}"
417cdf0e10cSrcweir+            target="${build.compiler.target}">
418cdf0e10cSrcweir+
419cdf0e10cSrcweir+            <include name="com/saxonica/**"/>
420cdf0e10cSrcweir+            <include name="net/sf/saxon/ant/**"/>
421cdf0e10cSrcweir+            <exclude name="com/saxonica/validate/DotNetVerifier.java"/>
422cdf0e10cSrcweir+            <classpath>
423cdf0e10cSrcweir+                <path refid="classpath-j"/>
424cdf0e10cSrcweir+            </classpath>
425cdf0e10cSrcweir+        </javac>
426cdf0e10cSrcweir+    </target>
427cdf0e10cSrcweir+
428cdf0e10cSrcweir+    <target name="compile-s9api" description="Compile s9api classes for Java."
429cdf0e10cSrcweir+                                 depends="compile-bj, compile-saj, copysource-development">
430cdf0e10cSrcweir+        <!-- Compiling the s9api package requires JDK 1.5 -->
431cdf0e10cSrcweir+        <!-- The bj and saj source must be compiled first to ensure that it is done using 1.4, otherwise
432cdf0e10cSrcweir+             it will be compiled in 1.5 mode because the classes are referenced from the s9api package -->
433cdf0e10cSrcweir+        <javac debug="${build.debug}" debuglevel="${build.debuglevel}"
434cdf0e10cSrcweir+            deprecation="${build.deprecation}" destdir="${classes-j.dir}"
435cdf0e10cSrcweir+            optimize="${build.optimize}" srcdir="${temp-src-j.dir}" source="${build.s9api.compiler.source}"
436cdf0e10cSrcweir+            target="${build.s9api.compiler.target}">
437cdf0e10cSrcweir+
438cdf0e10cSrcweir+            <include name="**/s9api/**"/>
439cdf0e10cSrcweir+            <classpath>
440cdf0e10cSrcweir+                <path refid="classpath-j"/>
441cdf0e10cSrcweir+            </classpath>
442cdf0e10cSrcweir+        </javac>
443cdf0e10cSrcweir+    </target>
444cdf0e10cSrcweir+
445cdf0e10cSrcweir+    <target name="compile-bn" description="Compile Saxon-B classes for .NET" depends="copysource-development">
446cdf0e10cSrcweir+        <mkdir dir="${classes-n.dir}"/>
447cdf0e10cSrcweir+        <javac debug="${build.debug}" debuglevel="${build.debuglevel}"
448cdf0e10cSrcweir+            deprecation="${build.deprecation}" destdir="${classes-n.dir}"
449cdf0e10cSrcweir+            optimize="${build.optimize}" srcdir="${temp-src-nj.dir}" source="${build.compiler.source}"
450cdf0e10cSrcweir+            target="${build.compiler.target}">
451cdf0e10cSrcweir+
452cdf0e10cSrcweir+            <include name="net/**"/>
453cdf0e10cSrcweir+            <exclude name="**/s9api/**"/>
454cdf0e10cSrcweir+            <classpath>
455cdf0e10cSrcweir+                <path refid="classpath-n"/>
456cdf0e10cSrcweir+            </classpath>
457cdf0e10cSrcweir+        </javac>
458cdf0e10cSrcweir+    </target>
459cdf0e10cSrcweir+
460cdf0e10cSrcweir+    <target name="compile-san" description="Compile Saxon-SA classes for .NET" depends="copysource-development">
461cdf0e10cSrcweir+        <mkdir dir="${classes-n.dir}"/>
462cdf0e10cSrcweir+        <javac debug="${build.debug}"  debuglevel="${build.debuglevel}"
463cdf0e10cSrcweir+            deprecation="${build.deprecation}" destdir="${classes-n.dir}"
464cdf0e10cSrcweir+            optimize="${build.optimize}" srcdir="${temp-src-nj.dir}" source="${build.compiler.source}"
465cdf0e10cSrcweir+            target="${build.compiler.target}">
466cdf0e10cSrcweir+
467cdf0e10cSrcweir+            <include name="com/saxonica/**"/>
468cdf0e10cSrcweir+            <exclude name="com/saxonica/validate/JavaVerifier.java"/>
469cdf0e10cSrcweir+            <classpath>
470cdf0e10cSrcweir+                <path refid="classpath-n"/>
471cdf0e10cSrcweir+            </classpath>
472cdf0e10cSrcweir+        </javac>
473cdf0e10cSrcweir+    </target>
474cdf0e10cSrcweir+
475cdf0e10cSrcweir+    <target name="jar-bj" description="Create Saxon-B jar files for Java" depends="create-meta-inf, compile-bj">
476cdf0e10cSrcweir+        <mkdir dir="${product.dir}/bj"/>
477cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9.jar">
478cdf0e10cSrcweir+            <include name="net/**/*.class"/>
479cdf0e10cSrcweir+            <exclude name="**/ant/**/*.class"/>
480cdf0e10cSrcweir+            <exclude name="**/dom/**/*.class"/>
481cdf0e10cSrcweir+            <exclude name="**/dom4j/**/*.class"/>
482cdf0e10cSrcweir+            <exclude name="**/javax/**/*.class"/>
483cdf0e10cSrcweir+            <exclude name="**/jdom/**/*.class"/>
484cdf0e10cSrcweir+            <exclude name="**/sql/**/*.class"/>
485cdf0e10cSrcweir+            <exclude name="**/xom/**/*.class"/>
486cdf0e10cSrcweir+            <exclude name="**/xpath/**/*.class"/>
487cdf0e10cSrcweir+            <exclude name="**/xqj/**/*.class"/>
488cdf0e10cSrcweir+            <exclude name="**/s9api/**/*.class"/>
489cdf0e10cSrcweir+            <include name="META-INF/**"/>
490cdf0e10cSrcweir+            <manifest>
491cdf0e10cSrcweir+                <attribute name="Project-Name" value="Saxon-B"/>
492cdf0e10cSrcweir+                <attribute name="Main-Class" value="net.sf.saxon.Transform"/>
493cdf0e10cSrcweir+            </manifest>
494cdf0e10cSrcweir+            <metainf dir="${services.dir}/saxon9/META-INF"/>
495cdf0e10cSrcweir+            <!--
496cdf0e10cSrcweir+            <service type="javax.xml.transform.TransformerFactory"
497cdf0e10cSrcweir+                provider="net.sf.saxon.TransformerFactoryImpl"/>
498cdf0e10cSrcweir+            -->
499cdf0e10cSrcweir+        </jar>
500cdf0e10cSrcweir+        <!--
501cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-dom.jar">
502cdf0e10cSrcweir+            <include name="net/sf/saxon/dom/*.class"/>
503cdf0e10cSrcweir+        </jar>
504cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-dom4j.jar">
505cdf0e10cSrcweir+            <include name="net/sf/saxon/dom4j/*.class"/>
506cdf0e10cSrcweir+        </jar>
507cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-jdom.jar">
508cdf0e10cSrcweir+            <include name="net/sf/saxon/jdom/*.class"/>
509cdf0e10cSrcweir+        </jar>
510cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-s9api.jar">
511cdf0e10cSrcweir+            <include name="net/sf/saxon/s9api/*.class"/>
512cdf0e10cSrcweir+        </jar>
513cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-sql.jar">
514cdf0e10cSrcweir+            <include name="net/sf/saxon/sql/*.class"/>
515cdf0e10cSrcweir+        </jar>
516cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-xom.jar">
517cdf0e10cSrcweir+            <include name="net/sf/saxon/xom/*.class"/>
518cdf0e10cSrcweir+        </jar>
519cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-xpath.jar">
520cdf0e10cSrcweir+            <include name="net/sf/saxon/xpath/*.class"/>
521cdf0e10cSrcweir+            <metainf dir="${services.dir}/saxon9-xpath/META-INF"/>
522cdf0e10cSrcweir+            <!==
523cdf0e10cSrcweir+            <service type="javax.xml.xpath.XPathFactory">
524cdf0e10cSrcweir+                <provider classname="net.sf.saxon.xpath.XPathFactoryImpl"/>
525cdf0e10cSrcweir+                <provider classname="http\://java.sun.com/jaxp/xpath/dom:    net.sf.saxon.xpath.XPathFactoryImpl"/>
526cdf0e10cSrcweir+                <provider classname="http\://saxon.sf.net/jaxp/xpath/om:     net.sf.saxon.xpath.XPathFactoryImpl"/>
527cdf0e10cSrcweir+                <provider classname="http\://www.xom.nu/jaxp/xpath/xom:      net.sf.saxon.xpath.XPathFactoryImpl"/>
528cdf0e10cSrcweir+                <provider classname="http\://jdom.org/jaxp/xpath/jdom:       net.sf.saxon.xpath.XPathFactoryImpl"/>
529cdf0e10cSrcweir+                <provider classname="http\://www.dom4j.org/jaxp/xpath/dom4j: net.sf.saxon.xpath.XPathFactoryImpl"/>
530cdf0e10cSrcweir+            </service> ==>
531cdf0e10cSrcweir+        </jar>
532cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-xqj.jar">
533cdf0e10cSrcweir+            <include name="net/sf/saxon/xqj/*.class"/>
534cdf0e10cSrcweir+            <include name="net/sf/saxon/javax/xml/namespace/*.class"/>
535cdf0e10cSrcweir+            <include name="net/sf/saxon/javax/xml/xquery/*.class"/>
536cdf0e10cSrcweir+        </jar>
537cdf0e10cSrcweir+        -->
538cdf0e10cSrcweir+    </target>
539cdf0e10cSrcweir+
540cdf0e10cSrcweir+    <target name="jar-saj" description="Create Saxon-SA jar files for Java" depends="compile-s9api, jar-bj">
541cdf0e10cSrcweir+        <mkdir dir="${product.dir}/saj"/>
542cdf0e10cSrcweir+        <copy todir="${product.dir}/saj">
543cdf0e10cSrcweir+          <fileset dir="${product.dir}/bj">
544cdf0e10cSrcweir+            <include name="*.jar"/>
545cdf0e10cSrcweir+          </fileset>
546cdf0e10cSrcweir+        </copy>
547cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/saj/saxon9sa.jar">
548cdf0e10cSrcweir+            <include name="net/**/*.class"/>
549cdf0e10cSrcweir+            <exclude name="**/dom/**/*.class"/>
550cdf0e10cSrcweir+            <exclude name="**/dom4j/**/*.class"/>
551cdf0e10cSrcweir+            <exclude name="**/javax/**/*.class"/>
552cdf0e10cSrcweir+            <exclude name="**/jdom/**/*.class"/>
553cdf0e10cSrcweir+            <exclude name="**/s9api/**/*.class"/>
554cdf0e10cSrcweir+            <exclude name="**/sql/**/*.class"/>
555cdf0e10cSrcweir+            <exclude name="**/xom/**/*.class"/>
556cdf0e10cSrcweir+            <exclude name="**/xpath/**/*.class"/>
557cdf0e10cSrcweir+            <exclude name="**/xqj/**/*.class"/>
558cdf0e10cSrcweir+            <include name="com/saxonica/**/*.class"/>
559cdf0e10cSrcweir+            <exclude name="com/saxonica/jaxp/*.class"/>
560cdf0e10cSrcweir+            <exclude name="com.saxonica.CompileQuery.class"/>
561cdf0e10cSrcweir+            <manifest>
562cdf0e10cSrcweir+                <attribute name="Project-Name" value="Saxon-SA"/>
563cdf0e10cSrcweir+            </manifest>
564cdf0e10cSrcweir+            <metainf dir="${services.dir}/saxon9sa/META-INF"/>
565cdf0e10cSrcweir+            <!--
566cdf0e10cSrcweir+            <service type="javax.xml.transform.TransformerFactory"
567cdf0e10cSrcweir+                provider="com.saxonica.SchemaAwareTransformerFactory"/>
568cdf0e10cSrcweir+            -->
569cdf0e10cSrcweir+        </jar>
570cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/saj/saxon9sa-jaxp.jar">
571cdf0e10cSrcweir+            <include name="com/saxonica/jaxp/*.class"/>
572cdf0e10cSrcweir+            <include name="net/sf/saxon/dom/TypeInfoImpl.class"/>
573cdf0e10cSrcweir+            <metainf dir="${services.dir}/saxon9sa-jaxp/META-INF"/>
574cdf0e10cSrcweir+            <!--
575cdf0e10cSrcweir+            <service type="javax.xml.validation.SchemaFactory">
576cdf0e10cSrcweir+                <provider classname="com.saxonica.jaxp.SchemaFactoryImpl"/>
577cdf0e10cSrcweir+                <provider classname="http\://www.w3.org/2001/XMLSchema: com.saxonica.jaxp.SchemaFactoryImpl"/>
578cdf0e10cSrcweir+            </service>
579cdf0e10cSrcweir+            -->
580cdf0e10cSrcweir+        </jar>
581cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/saj/saxon9sa-qc.jar">
582cdf0e10cSrcweir+            <include name="com/saxonica/codegen/*.class"/>
583cdf0e10cSrcweir+            <include name="com.saxonica.CompileQuery.class"/>
584cdf0e10cSrcweir+        </jar>
585cdf0e10cSrcweir+        <!-- The Saxon-Ant task is delivered with Saxon-B but it won't compile without Saxon-SA present,
586cdf0e10cSrcweir+             unless modified -->
587cdf0e10cSrcweir+        <jar basedir="${classes-j.dir}" compress="${build.compress}" jarfile="${product.dir}/bj/saxon9-ant.jar">
588cdf0e10cSrcweir+            <include name="net/sf/saxon/ant/*.class"/>
589cdf0e10cSrcweir+        </jar>
590cdf0e10cSrcweir+    </target>
591cdf0e10cSrcweir+
592cdf0e10cSrcweir+    <target name="jar-bn" description="Create Saxon-B jar files for .NET" depends="compile-bn">
593cdf0e10cSrcweir+        <mkdir dir="${jar-n.dir}"/>
594cdf0e10cSrcweir+        <jar basedir="${classes-n.dir}" compress="${build.compress}" jarfile="${jar-n.dir}/saxon9.jar">
595cdf0e10cSrcweir+            <include name="net/**/*.class"/>
596cdf0e10cSrcweir+        </jar>
597cdf0e10cSrcweir+    </target>
598cdf0e10cSrcweir+
599cdf0e10cSrcweir+    <target name="jar-san" description="Create Saxon-SA jar files for .NET" depends="compile-san">
600cdf0e10cSrcweir+        <mkdir dir="${jar-n.dir}"/>
601cdf0e10cSrcweir+        <jar basedir="${classes-n.dir}" compress="${build.compress}" jarfile="${jar-n.dir}/saxon9sa.jar">
602cdf0e10cSrcweir+            <include name="com/saxonica/**/*.class"/>
603cdf0e10cSrcweir+        </jar>
604cdf0e10cSrcweir+    </target>
605cdf0e10cSrcweir+
606cdf0e10cSrcweir+    <target name="dll-n" description="Create DLLs for .NET" depends="jar-bn, jar-san">
607cdf0e10cSrcweir+        <mkdir dir="${dll-n.dir}"/>
608cdf0e10cSrcweir+        <copy todir="${dll-n.dir}">
609cdf0e10cSrcweir+          <fileset dir="${ikvm.dir}/bin">
610cdf0e10cSrcweir+            <include name="IKVM.GNU.Classpath.dll"/>
611cdf0e10cSrcweir+            <include name="IKVM.Runtime.dll"/>
612cdf0e10cSrcweir+          </fileset>
613cdf0e10cSrcweir+        </copy>
614cdf0e10cSrcweir+        <copy file="${saxondotnet.snk}" todir="${basedir}"/>
615cdf0e10cSrcweir+        <!--
616cdf0e10cSrcweir+            Invoke IKVMC to cross-compile the JAR files into DLLs
617cdf0e10cSrcweir+        -->
618cdf0e10cSrcweir+        <exec dir="." executable="ikvmc.cmd" >
619cdf0e10cSrcweir+          <arg line="live"/>  <!-- set to 'debug' for testing, 'live' for final build -->
620cdf0e10cSrcweir+          <arg line="${basedir}/${jar-n.dir}"/>
621cdf0e10cSrcweir+          <arg line="${basedir}/${dll-n.dir}"/>
622cdf0e10cSrcweir+          <arg line="${version}"/>
623cdf0e10cSrcweir+        </exec>
624cdf0e10cSrcweir+    </target>
625cdf0e10cSrcweir+
626cdf0e10cSrcweir+    <target name="csharp-n" description="Compile C# source for .NET commands and API library"
627cdf0e10cSrcweir+        depends="dll-n">
628cdf0e10cSrcweir+
629cdf0e10cSrcweir+				<mkdir dir="${dll-n.dir}/samples"/>
630cdf0e10cSrcweir+				<mkdir dir="${dll-n.dir}/tests"/>
631cdf0e10cSrcweir+
632cdf0e10cSrcweir+				<exec dir="." executable="csharp-compile.cmd" >
633cdf0e10cSrcweir+          <arg line="${basedir}/${temp-src-nc.dir}"/>
634cdf0e10cSrcweir+          <arg line="${basedir}/${dll-n.dir}"/>
635cdf0e10cSrcweir+          <arg line="${version}"/>
636cdf0e10cSrcweir+        </exec>
637cdf0e10cSrcweir+
638cdf0e10cSrcweir+
639cdf0e10cSrcweir+<!--        <taskdef
640cdf0e10cSrcweir+            uri="antlib:org.apache.ant.dotnet">
641cdf0e10cSrcweir+            <classpath>
642cdf0e10cSrcweir+              <pathelement location="c:/javalib/ant-dotnet-1.0/ant-dotnet-1.0.jar"/>
643cdf0e10cSrcweir+            </classpath>
644cdf0e10cSrcweir+          </taskdef>
645cdf0e10cSrcweir+    		<dn:csc xmlns:dn="antlib:org.apache.ant.dotnet"
646cdf0e10cSrcweir+    		          executable="${csharp.compiler}"
647cdf0e10cSrcweir+    	     				srcdir="${temp-src-nc.dir}/cmd"
648cdf0e10cSrcweir+    	     				targettype="exe"
649cdf0e10cSrcweir+    	     				win32icon="c:\MyDotNet\icons\gyfu.ico"
650cdf0e10cSrcweir+    	     				destdir="${dll-n.dir}">
651cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/IKVM.GNU.Classpath.dll"/>
652cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/IKVM.Runtime.dll"/>
653cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/saxon9.dll"/>
654cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/saxon9sa.dll"/>
655cdf0e10cSrcweir+    	  </dn:csc>
656cdf0e10cSrcweir+    		<dn:csc xmlns:dn="antlib:org.apache.ant.dotnet"
657cdf0e10cSrcweir+    		          executable="${csharp.compiler}"
658cdf0e10cSrcweir+    	     				srcdir="${temp-src-nc.dir}/api"
659cdf0e10cSrcweir+    	     				targettype="module"
660cdf0e10cSrcweir+    	     				win32icon="c:\MyDotNet\icons\gyfu.ico"
661cdf0e10cSrcweir+    	     				destdir="${dll-n.dir}">
662cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/IKVM.GNU.Classpath.dll"/>
663cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/IKVM.Runtime.dll"/>
664cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/saxon9.dll"/>
665cdf0e10cSrcweir+    	     	<reference file="${dll-n.dir}/saxon9sa.dll"/>
666cdf0e10cSrcweir+    	  </dn:csc>
667cdf0e10cSrcweir+-->
668cdf0e10cSrcweir+    </target>
669cdf0e10cSrcweir+
670cdf0e10cSrcweir+    <target name="basic-userdoc" description="Generate Basic Documentation for release with executable">
671cdf0e10cSrcweir+	  <mkdir dir="${product.dir}/bj"/>
672cdf0e10cSrcweir+	  <copy todir="${product.dir}/bj">
673cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
674cdf0e10cSrcweir+          <include name="doc/**"/>
675cdf0e10cSrcweir+          <include name="notices/**"/>
676cdf0e10cSrcweir+        </fileset>
677cdf0e10cSrcweir+      </copy>
678cdf0e10cSrcweir+      <mkdir dir="${product.dir}/saj"/>
679cdf0e10cSrcweir+      <copy todir="${product.dir}/saj">
680cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
681cdf0e10cSrcweir+          <include name="doc/**"/>
682cdf0e10cSrcweir+          <include name="notices/**"/>
683cdf0e10cSrcweir+        </fileset>
684cdf0e10cSrcweir+      </copy>
685cdf0e10cSrcweir+      <mkdir dir="${product.dir}/bn"/>
686cdf0e10cSrcweir+      <copy todir="${product.dir}/bn">
687cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
688cdf0e10cSrcweir+          <include name="doc/**"/>
689cdf0e10cSrcweir+          <include name="notices/**"/>
690cdf0e10cSrcweir+        </fileset>
691cdf0e10cSrcweir+      </copy>
692cdf0e10cSrcweir+      <mkdir dir="${product.dir}/san"/>
693cdf0e10cSrcweir+      <copy todir="${product.dir}/san">
694cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
695cdf0e10cSrcweir+          <include name="doc/**"/>
696cdf0e10cSrcweir+          <include name="notices/**"/>
697cdf0e10cSrcweir+        </fileset>
698cdf0e10cSrcweir+      </copy>
699cdf0e10cSrcweir+    </target>
700cdf0e10cSrcweir+
701cdf0e10cSrcweir+    <target name="product-bn" description="Assemble product.directory for Saxon-B on .NET"
702cdf0e10cSrcweir+       										    depends="csharp-n, dll-n, basic-userdoc">
703cdf0e10cSrcweir+      <mkdir dir="${build-bn.dir}/bin"/>
704cdf0e10cSrcweir+      <copy todir="${build-bn.dir}/bin">
705cdf0e10cSrcweir+        <fileset dir="${dll-n.dir}">
706cdf0e10cSrcweir+     	  	<include name="IKVM.GNU.Classpath.dll"/>
707cdf0e10cSrcweir+          <include name="IKVM.Runtime.dll"/>
708cdf0e10cSrcweir+          <include name="saxon9.dll"/>
709cdf0e10cSrcweir+          <include name="saxon9api.dll"/>
710cdf0e10cSrcweir+          <include name="saxon9api.netmodule"/>
711cdf0e10cSrcweir+          <include name="Query.exe"/>
712cdf0e10cSrcweir+          <include name="Transform.exe"/>
713cdf0e10cSrcweir+        </fileset>
714cdf0e10cSrcweir+      </copy>
715cdf0e10cSrcweir+			<echo file="${build-bn.dir}/bin/install-gac.cmd">
716cdf0e10cSrcweir+				set NET="%PROGRAMFILES%\Microsoft.NET\SDK\v1.1\Bin"
717cdf0e10cSrcweir+				%NET%\gacutil /if IKVM.Runtime.dll
718cdf0e10cSrcweir+				%NET%\gacutil /if IKVM.GNU.Classpath.dll
719cdf0e10cSrcweir+				%NET%\gacutil /if saxon9.dll
720cdf0e10cSrcweir+				%NET%\gacutil /if saxon9api.dll
721cdf0e10cSrcweir+      </echo>
722cdf0e10cSrcweir+    </target>
723cdf0e10cSrcweir+
724cdf0e10cSrcweir+    <target name="product-san" description="Assemble product.directory for Saxon-SA on .NET"
725cdf0e10cSrcweir+       										    depends="csharp-n, dll-n, basic-userdoc">
726cdf0e10cSrcweir+      <copy todir="${build-san.dir}/bin">
727cdf0e10cSrcweir+        <fileset dir="${dll-n.dir}">
728cdf0e10cSrcweir+     	  	<include name="IKVM.GNU.Classpath.dll"/>
729cdf0e10cSrcweir+          <include name="IKVM.Runtime.dll"/>
730cdf0e10cSrcweir+          <include name="saxon9.dll"/>
731cdf0e10cSrcweir+          <include name="saxon9sa.dll"/>
732cdf0e10cSrcweir+          <include name="saxon9api.dll"/>
733cdf0e10cSrcweir+          <include name="saxon9api.netmodule"/>
734cdf0e10cSrcweir+          <include name="Query.exe"/>
735cdf0e10cSrcweir+          <include name="Transform.exe"/>
736cdf0e10cSrcweir+          <include name="Validate.exe"/>
737cdf0e10cSrcweir+        </fileset>
738cdf0e10cSrcweir+      </copy>
739cdf0e10cSrcweir+      <echo file="${build-san.dir}/bin/install-gac.cmd">
740cdf0e10cSrcweir+				set NET="%PROGRAMFILES%\Microsoft.NET\SDK\v1.1\Bin"
741cdf0e10cSrcweir+				%NET%\gacutil /if IKVM.Runtime.dll
742cdf0e10cSrcweir+				%NET%\gacutil /if IKVM.GNU.Classpath.dll
743cdf0e10cSrcweir+				%NET%\gacutil /if saxon9.dll
744cdf0e10cSrcweir+				%NET%\gacutil /if saxon9sa.dll
745cdf0e10cSrcweir+				%NET%\gacutil /if saxon9api.dll
746cdf0e10cSrcweir+      </echo>
747cdf0e10cSrcweir+    </target>
748cdf0e10cSrcweir+
749cdf0e10cSrcweir+    <target name="samples" description="Assemble Cross-Platform Samples and Use-Cases">
750cdf0e10cSrcweir+    	<mkdir dir="${build-resources.dir}/samples"/>
751cdf0e10cSrcweir+      <copy todir="${product.dir}/resources/use-cases">
752cdf0e10cSrcweir+        <fileset dir="${usercases.dir}"/>
753cdf0e10cSrcweir+      </copy>
754cdf0e10cSrcweir+      <copy todir="${product.dir}/resources/samples">
755cdf0e10cSrcweir+        <fileset dir="${samples.dir}">
756cdf0e10cSrcweir+          <include name="analysis/timing-profile.xsl"/>
757cdf0e10cSrcweir+          <include name="data/*.xml"/>
758cdf0e10cSrcweir+          <include name="data/*.xsd"/>
759cdf0e10cSrcweir+          <include name="data/*.dtd"/>
760cdf0e10cSrcweir+          <include name="query/*.xq"/>
761cdf0e10cSrcweir+          <include name="styles/*.xsl"/>
762cdf0e10cSrcweir+          <include name="trax/xml/**/*.xml"/>
763cdf0e10cSrcweir+          <include name="trax/xsl/**/*.xsl"/>
764cdf0e10cSrcweir+          <include name="trax/xsl/**/preamble.txt"/>
765cdf0e10cSrcweir+        </fileset>
766cdf0e10cSrcweir+      </copy>
767cdf0e10cSrcweir+    </target>
768cdf0e10cSrcweir+
769cdf0e10cSrcweir+    <target name="samples-j" description="Copy and Compile Java Samples"
770cdf0e10cSrcweir+    				depends="jar-saj">
771cdf0e10cSrcweir+      <mkdir dir="${product.dir}/resources/samples/java"/>
772cdf0e10cSrcweir+      <mkdir dir="${product.dir}/resources/samples/java/classes"/>
773cdf0e10cSrcweir+      <copy todir="${product.dir}/resources/samples/java">
774cdf0e10cSrcweir+        <fileset dir="${samples.dir}/java">
775cdf0e10cSrcweir+          <include name="ApplyXPathJAXP.java"/>
776cdf0e10cSrcweir+          <include name="ExampleContentHandler.java"/>
777cdf0e10cSrcweir+          <include name="JDOMExample.java"/>
778cdf0e10cSrcweir+          <include name="PullExamples.java"/>
779cdf0e10cSrcweir+          <include name="QueryAPIExamples.java"/>
780cdf0e10cSrcweir+          <include name="QuickValidator.java"/>
781cdf0e10cSrcweir+          <include name="SaxonServlet.java"/>
782cdf0e10cSrcweir+          <include name="SaxonSAServlet.java"/>
783cdf0e10cSrcweir+          <include name="SchemaValidatorExample.java"/>
784cdf0e10cSrcweir+          <include name="SchemaValidatorHandlerExample.java"/>
785cdf0e10cSrcweir+          <include name="TraxExamples.java"/>
786cdf0e10cSrcweir+          <include name="XMarkBenchmark.java"/>
787cdf0e10cSrcweir+          <include name="XPathExample.java"/>
788cdf0e10cSrcweir+          <include name="XPathExampleDOM.java"/>
789cdf0e10cSrcweir+          <include name="XPathExampleSA.java"/>
790cdf0e10cSrcweir+          <include name="XPathExampleServlet.java"/>
791cdf0e10cSrcweir+          <include name="XQJExamples.java"/>
792cdf0e10cSrcweir+        </fileset>
793cdf0e10cSrcweir+      </copy>
794cdf0e10cSrcweir+			<javac debug="true" debuglevel="source, lines"
795cdf0e10cSrcweir+			      destdir="${product.dir}/resources/samples/java/classes"
796cdf0e10cSrcweir+            srcdir="${product.dir}/resources/samples/java"
797cdf0e10cSrcweir+            source="${build.compiler.source}"
798cdf0e10cSrcweir+            target="${build.compiler.target}">
799cdf0e10cSrcweir+        <include name="*.java"/>
800cdf0e10cSrcweir+        <classpath>
801cdf0e10cSrcweir+            <path refid="classpath-samples"/>
802cdf0e10cSrcweir+        </classpath>
803cdf0e10cSrcweir+     </javac>
804cdf0e10cSrcweir+    </target>
805cdf0e10cSrcweir+
806cdf0e10cSrcweir+    <target name="testdrivers-j" description="Copy Java Test Drivers">
807cdf0e10cSrcweir+			<mkdir dir="${product.dir}/resources/drivers/java/test"/>
808cdf0e10cSrcweir+			<copy todir="${product.dir}/resources/drivers/java/test">
809cdf0e10cSrcweir+			  <fileset dir="${drivers-j.dir}">
810cdf0e10cSrcweir+			    <include name="XQueryTestSuiteDriver.java"/>
811cdf0e10cSrcweir+			    <include name="XsltTestSuiteDriver.java"/>
812cdf0e10cSrcweir+			    <include name="CanonicalXML.java"/>
813cdf0e10cSrcweir+			    <include name="XQTSModuleURIResolver.java"/>
814cdf0e10cSrcweir+			    <include name="XQTSCollectionURIResolver.java"/>
815cdf0e10cSrcweir+			    <include name="SchemaTestSuiteDriver.java"/>
816cdf0e10cSrcweir+        </fileset>
817cdf0e10cSrcweir+      </copy>
818cdf0e10cSrcweir+    </target>
819cdf0e10cSrcweir+
820cdf0e10cSrcweir+    <target name="samples-n" description="Assemble release samples for .NET"
821cdf0e10cSrcweir+                  depends="csharp-n">
822cdf0e10cSrcweir+      <mkdir dir="${build-resources.dir}/samples/cs"/>
823cdf0e10cSrcweir+      <copy todir="${build-resources.dir}/samples/cs">
824cdf0e10cSrcweir+        <fileset dir="${temp-src-nc.dir}/samples">
825cdf0e10cSrcweir+          <include name="*.cs"/>
826cdf0e10cSrcweir+        </fileset>
827cdf0e10cSrcweir+      </copy>
828cdf0e10cSrcweir+      <mkdir dir="${build-resources.dir}/samples/cs/bin"/>
829cdf0e10cSrcweir+      <copy todir="${build-resources.dir}/samples/cs/bin">
830cdf0e10cSrcweir+        <fileset dir="${dll-n.dir}/samples">
831cdf0e10cSrcweir+          <include name="*.exe"/>
832cdf0e10cSrcweir+          <include name="*.dll"/>
833cdf0e10cSrcweir+          <include name="*.pdb"/>
834cdf0e10cSrcweir+        </fileset>
835cdf0e10cSrcweir+      </copy>
836cdf0e10cSrcweir+      <copy todir="${build-resources.dir}/samples/cs/bin">
837cdf0e10cSrcweir+        <fileset dir="${dll-n.dir}/tests">
838cdf0e10cSrcweir+          <include name="*.exe"/>
839cdf0e10cSrcweir+          <include name="*.dll"/>
840cdf0e10cSrcweir+          <include name="*.pdb"/>
841cdf0e10cSrcweir+        </fileset>
842cdf0e10cSrcweir+      </copy>
843cdf0e10cSrcweir+    </target>
844cdf0e10cSrcweir+
845cdf0e10cSrcweir+    <target name="product-javadoc" description="Generate Javadoc.">
846cdf0e10cSrcweir+        <javadoc bottom="Copyright (C) Michael H. Kay. All rights reserved."
847cdf0e10cSrcweir+            destdir="${javadoc.dir}" doctitle="saxon9 Javadocs"
848cdf0e10cSrcweir+            noindex="true" notree="true" access="public"
849cdf0e10cSrcweir+            maxmemory="512M" source="1.5">
850cdf0e10cSrcweir+            <packageset dir="${temp-src-j.dir}">
851cdf0e10cSrcweir+                <include name="net/**"/>
852cdf0e10cSrcweir+                <include name="com/**"/>
853cdf0e10cSrcweir+                <exclude name="**/dotnet/**"/>
854cdf0e10cSrcweir+                <exclude name="**/DotNetVerifier.java"/>
855cdf0e10cSrcweir+            </packageset>
856cdf0e10cSrcweir+            <classpath>
857cdf0e10cSrcweir+                <path refid="classpath-j"/>
858cdf0e10cSrcweir+            </classpath>
859cdf0e10cSrcweir+
860cdf0e10cSrcweir+            <link href="http://java.sun.com/j2se/1.5.0/docs/api/"/>
861cdf0e10cSrcweir+            <link href="http://www.xom.nu/apidocs/"/>
862cdf0e10cSrcweir+
863cdf0e10cSrcweir+        </javadoc>
864cdf0e10cSrcweir+        <copy file="${userdoc.dir}/fixed/javadoc/stylesheet.css"
865cdf0e10cSrcweir+              tofile="${javadoc.dir}/stylesheet.css"
866cdf0e10cSrcweir+              overwrite="true"/>
867cdf0e10cSrcweir+    </target>
868cdf0e10cSrcweir+
869cdf0e10cSrcweir+    <target name="product-dotnetdoc" description="Copy .NET API documentation">
870cdf0e10cSrcweir+      <mkdir dir="${build-resources.dir}/doc/dotnetdoc"/>
871cdf0e10cSrcweir+      <copy todir="${build-resources.dir}/doc/dotnetdoc">
872cdf0e10cSrcweir+        <fileset dir="${dotnetdoc.dir}"/>
873cdf0e10cSrcweir+      </copy>
874cdf0e10cSrcweir+    </target>
875cdf0e10cSrcweir+
876cdf0e10cSrcweir+
877cdf0e10cSrcweir+    <target name="release-userdoc" description="Generate User Documentation">
878cdf0e10cSrcweir+			<taskdef name="saxon-xslt"
879cdf0e10cSrcweir+			         classname="net.sf.saxon.ant.AntTransform"
880cdf0e10cSrcweir+			         classpath="c:\saxon-build\9.0.0.1\saj\saxon9sa.jar;c:\saxon-licenses"/>
881cdf0e10cSrcweir+			<copy todir="${build-resources.dir}/doc">
882cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/fixed"/>
883cdf0e10cSrcweir+      </copy>
884cdf0e10cSrcweir+	  <copy todir="${product.dir}/bj">
885cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
886cdf0e10cSrcweir+          <include name="doc/**"/>
887cdf0e10cSrcweir+          <include name="notices/**"/>
888cdf0e10cSrcweir+        </fileset>
889cdf0e10cSrcweir+      </copy>
890cdf0e10cSrcweir+      <copy todir="${product.dir}/saj">
891cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
892cdf0e10cSrcweir+          <include name="doc/**"/>
893cdf0e10cSrcweir+          <include name="notices/**"/>
894cdf0e10cSrcweir+        </fileset>
895cdf0e10cSrcweir+      </copy>
896cdf0e10cSrcweir+      <copy todir="${product.dir}/bn">
897cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
898cdf0e10cSrcweir+          <include name="doc/**"/>
899cdf0e10cSrcweir+          <include name="notices/**"/>
900cdf0e10cSrcweir+        </fileset>
901cdf0e10cSrcweir+      </copy>
902cdf0e10cSrcweir+      <copy todir="${product.dir}/san">
903cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
904cdf0e10cSrcweir+          <include name="doc/**"/>
905cdf0e10cSrcweir+          <include name="notices/**"/>
906cdf0e10cSrcweir+        </fileset>
907cdf0e10cSrcweir+      </copy>
908cdf0e10cSrcweir+			<saxon-xslt in="${userdoc.dir}/catalog.xml"
909cdf0e10cSrcweir+			            style="${userdoc.dir}/render-page2.xsl"
910cdf0e10cSrcweir+			            schemaAware="true"
911cdf0e10cSrcweir+			            xmlVersion="1.0"
912cdf0e10cSrcweir+			            schemaValidation="strict"
913cdf0e10cSrcweir+			            out="${product.dir}/resources/doc/dummy.html"><!--validation="strict" -->
914cdf0e10cSrcweir+			  <param name="destination" expression="offline"/>
915cdf0e10cSrcweir+			</saxon-xslt>
916cdf0e10cSrcweir+			<zip zipfile="${build-resources.dir}/source-userdoc.zip">
917cdf0e10cSrcweir+			  <fileset dir="${userdoc.dir}">
918cdf0e10cSrcweir+			    <include name="**/*.xml"/>
919cdf0e10cSrcweir+			    <include name="**/*.xsl"/>
920cdf0e10cSrcweir+			    <include name="**/*.xsd"/>
921cdf0e10cSrcweir+			    <include name="**/*.css"/>
922cdf0e10cSrcweir+			    <include name="fixed/**"/>
923cdf0e10cSrcweir+			    <include name="welcome/**"/>
924cdf0e10cSrcweir+			  </fileset>
925cdf0e10cSrcweir+			</zip>
926cdf0e10cSrcweir+    </target>
927cdf0e10cSrcweir+
928cdf0e10cSrcweir+    <target name="release-source" description="Generate Zip file containing issued Source Code">
929cdf0e10cSrcweir+      <mkdir dir="${build-resources.dir}"/>
930cdf0e10cSrcweir+      <zip zipfile="${build-resources.dir}/source.zip">
931cdf0e10cSrcweir+        <fileset dir="${source-bj.dir}">
932cdf0e10cSrcweir+           <include name="net/**/*.java"/>
933cdf0e10cSrcweir+           <include name="net/**/package.html"/>
934cdf0e10cSrcweir+        </fileset>
935cdf0e10cSrcweir+        <fileset dir="${source-bj.dir}">
936cdf0e10cSrcweir+           <include name="net/sf/saxon/dotnet/*.java"/>
937cdf0e10cSrcweir+           <include name="net/sf/saxon/dotnet/package.html"/>
938cdf0e10cSrcweir+        </fileset>
939cdf0e10cSrcweir+        <fileset dir="${temp-src-nc.dir}">
940cdf0e10cSrcweir+           <include name="api/**/*.cs"/>
941cdf0e10cSrcweir+           <include name="cmd/**/*.cs"/>
942cdf0e10cSrcweir+        </fileset>
943cdf0e10cSrcweir+      </zip>
944cdf0e10cSrcweir+      <zip zipfile="${build-resources.dir}/sa-source.zip">
945cdf0e10cSrcweir+        <fileset dir="${source-saj.dir}">
946cdf0e10cSrcweir+           <include name="com/saxonica/**/*.java"/>
947cdf0e10cSrcweir+           <include name="com/saxonica/**/package.html"/>
948cdf0e10cSrcweir+        </fileset>
949cdf0e10cSrcweir+      </zip>
950cdf0e10cSrcweir+    </target>
951cdf0e10cSrcweir+
952cdf0e10cSrcweir+    <target name="resources" description="Generate contents of released resources file"
953cdf0e10cSrcweir+      	depends="release-userdoc, product-javadoc, product-dotnetdoc,
954cdf0e10cSrcweir+      	         samples, samples-j, testdrivers-j, samples-n, release-source">
955cdf0e10cSrcweir+      <mkdir dir="${product.dir}/resources/build"/>
956cdf0e10cSrcweir+      <copy todir="${product.dir}/resources/build">
957cdf0e10cSrcweir+        <fileset dir="${basedir}">
958cdf0e10cSrcweir+          <include name="build.xml"/>
959cdf0e10cSrcweir+          <include name="ikvmc.cmd"/>
960cdf0e10cSrcweir+          <include name="csharp-compile.cmd"/>
961cdf0e10cSrcweir+        </fileset>
962cdf0e10cSrcweir+      </copy>
963cdf0e10cSrcweir+      <copy todir="${product.dir}/resources">
964cdf0e10cSrcweir+        <fileset dir="${userdoc.dir}/welcome">
965cdf0e10cSrcweir+          <include name="notices/**"/>
966cdf0e10cSrcweir+        </fileset>
967cdf0e10cSrcweir+      </copy>
968cdf0e10cSrcweir+    </target>
969cdf0e10cSrcweir+
970cdf0e10cSrcweir+    <target name="bj" depends="compile-bj, jar-bj, basic-userdoc"
971cdf0e10cSrcweir+        description="Generate Saxon-B for the Java platform"/>
972cdf0e10cSrcweir+
973cdf0e10cSrcweir+    <target name="saj" depends="bj, jar-saj, basic-userdoc"
974cdf0e10cSrcweir+        description="Generate Saxon-SA for the Java platform"/>
975cdf0e10cSrcweir+
976cdf0e10cSrcweir+    <target name="n" depends="product-bn, product-san"
977cdf0e10cSrcweir+    		description="Generate Saxon for the .NET platform"/>
978cdf0e10cSrcweir+
979cdf0e10cSrcweir+    <target name="build" description="Complete Saxon product build"
980cdf0e10cSrcweir+      	depends="bj, saj, n"/> <!-- add resources -->
981cdf0e10cSrcweir+
982cdf0e10cSrcweir+    <target name="release" description="Create .ZIP files for release" depends="build"
983cdf0e10cSrcweir+        >  <!--depends="build, resources"-->
984cdf0e10cSrcweir+      <mkdir dir="${issue.dir}"/>
985cdf0e10cSrcweir+      <zip zipfile="${issue.dir}/saxonb${versionh}j.zip">
986cdf0e10cSrcweir+        <fileset dir="${product.dir}/bj"/>
987cdf0e10cSrcweir+      </zip>
988cdf0e10cSrcweir+      <zip zipfile="${issue.dir}/saxonb${versionh}n.zip">
989cdf0e10cSrcweir+        <fileset dir="${product.dir}/bn"/>
990cdf0e10cSrcweir+      </zip>
991cdf0e10cSrcweir+			<zip zipfile="${issue.dir}/saxonsa${versionh}j.zip">
992cdf0e10cSrcweir+        <fileset dir="${product.dir}/saj"/>
993cdf0e10cSrcweir+      </zip>
994cdf0e10cSrcweir+      <zip zipfile="${issue.dir}/saxonsa${versionh}n.zip">
995cdf0e10cSrcweir+        <fileset dir="${product.dir}/san"/>
996cdf0e10cSrcweir+      </zip>
997cdf0e10cSrcweir+      <!--
998cdf0e10cSrcweir+      <zip zipfile="${issue.dir}/saxon-resources${versionh}.zip">
999cdf0e10cSrcweir+        <fileset dir="${product.dir}/resources"/>
1000cdf0e10cSrcweir+      </zip>
1001cdf0e10cSrcweir+      -->
1002cdf0e10cSrcweir+    </target>
1003cdf0e10cSrcweir+
1004cdf0e10cSrcweir+    <target name="archive" description="Archive everything needed for backup">
1005cdf0e10cSrcweir+      <mkdir dir="${archive.dir}"/>
1006cdf0e10cSrcweir+      <copy todir="${archive.dir}">
1007cdf0e10cSrcweir+       <fileset dir="${issue.dir}"/>
1008cdf0e10cSrcweir+       <fileset dir="${development-j.dir}" includes="sa-source.zip"/>
1009cdf0e10cSrcweir+       <fileset dir="${build-resources.dir}" includes="source.zip"/>
1010cdf0e10cSrcweir+      </copy>
1011cdf0e10cSrcweir+      <zip zipfile="${archive.dir}/saxontests.zip">
1012cdf0e10cSrcweir+        <fileset dir="e:/tests">
1013cdf0e10cSrcweir+          <include name="testsuite/*.*"/>
1014cdf0e10cSrcweir+          <include name="java/**/*.java"/>
1015cdf0e10cSrcweir+          <include name="xqts-current/SaxonDriver/**"/>
1016cdf0e10cSrcweir+          <include name="xqts-extra/**"/>
1017cdf0e10cSrcweir+          <include name="xslts_1_0_4/**/SaxonDriver/**"/>
1018cdf0e10cSrcweir+        </fileset>
1019cdf0e10cSrcweir+        <fileset dir="e:/tests/java" includes ="**/*.java"/>
1020cdf0e10cSrcweir+      </zip>
1021cdf0e10cSrcweir+      <zip zipfile="${archive.dir}/licensetool.zip">
1022cdf0e10cSrcweir+        <fileset dir="c:/MyJava/licensetool"/>
1023cdf0e10cSrcweir+      </zip>
1024cdf0e10cSrcweir+      <zip zipfile="${archive.dir}/licenses.zip">
1025cdf0e10cSrcweir+        <fileset dir="c:/saxon-licenses"/>
1026cdf0e10cSrcweir+      </zip>
1027cdf0e10cSrcweir+    </target>
1028cdf0e10cSrcweir+
1029cdf0e10cSrcweir+
1030cdf0e10cSrcweir+
1031cdf0e10cSrcweir+</project>
1032