xmlimplsrc.build.xml Maven / Gradle / Ivy
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<project name="xmlimplsrc" basedir=".." default="compile">
<!--
Properties which affect this build file:
no-e4x: Will cause E4X not to be built
no-xmlbeans: Will cause the old, XMLBeans-based implementation of E4X not to be built
-->
<property file="build.local.properties"/>
<property file="build.properties"/>
<!--
Provide support for the old name for skipping E4X compilation, in case someone is still using it
-->
<condition property="no-e4x">
<isset property="without-xmlimpl" />
</condition>
<path id="xmlbeans.classpath">
<pathelement location="${xbean.jar}"/>
<pathelement location="${jsr173.jar}"/>
</path>
<target name="compile" unless="no-e4x">
<antcall target="e4x-compile" />
<antcall target="no-e4x-compile" />
<antcall target="old-e4x" />
</target>
<available property="jdk1.5?" classname="java.lang.ProcessBuilder" />
<target name="e4x-compile" if="jdk1.5?">
<javac
srcdir="xmlimplsrc"
destdir="${classes}"
deprecation="on"
debug="${debug}"
includeAntRuntime="false"
target="${target-jvm}"
source="${source-level}"
/>
</target>
<target name="no-e4x-compile" unless="jdk1.5?">
<echo>
Skipping DOM E4X implementation; JDK 1.5+ currently required for compilation.
<!--
If the compiler is outfitted with DOM3 using the endorsed standards
override mechanism, presumably the code could be built under 1.4.
Not tested.
-->
</echo>
</target>
<target name="old-e4x" unless="no-xmlbeans">
<antcall target="old-e4x-compile" />
<antcall target="no-old-e4x-compile" />
</target>
<target name="old-e4x-compile" depends="xmlbeans-unzip">
<echo>Compiling XMLBeans E4X implementation using ${xbean.jar} and ${jsr173.jar}</echo>
<javac srcdir="deprecatedsrc"
destdir="${classes}"
includes="org/mozilla/javascript/xml/impl/xmlbeans/*.java"
deprecation="on"
debug="${debug}"
classpathref="xmlbeans.classpath"
failonerror="${xmlimpl.compile.failonerror}"
includeAntRuntime="false"
target="${target-jvm}"
source="${source-level}" />
</target>
<target name="no-old-e4x-compile" if="no-xmlbeans">
<echo>
Skipping compilation of XMLBeans E4X implementation due to missing XMLBeans files
</echo>
</target>
<target name="copy-source">
<mkdir dir="${dist.dir}/xmlimplsrc"/>
<copy todir="${dist.dir}/xmlimplsrc">
<fileset dir="xmlimplsrc"
includes="**/*.java,**/*.properties,**/*.xml"
/>
</copy>
</target>
<target name="clean">
<delete includeEmptyDirs="true">
<fileset dir="${classes}"
includes="org/mozilla/javascript/xmlimpl/**"
/>
</delete>
</target>
<property name="xmlbeans.tmp" location="${build.dir}/tmp-xbean" />
<property name="xmlbeans.zip" location="${xmlbeans.tmp}/xbean.zip" />
<condition property="xmlbeans-present?">
<and>
<available file="${xbean.jar}" />
<available file="${jsr173.jar}" />
</and>
</condition>
<condition property="xmlbeans-zip-present?">
<available file="${xmlbeans.zip}" />
</condition>
<target name="xmlbeans-get" unless="xmlbeans-zip-present?">
<property
name="xmlbeans.url"
value="http://www.apache.org/dist/xmlbeans/binaries/xmlbeans-2.5.0.zip"
/>
<mkdir dir="${xmlbeans.tmp}" />
<get src="${xmlbeans.url}" dest="${xmlbeans.zip}" ignoreerrors="true" />
</target>
<target name="xmlbeans-unzip" unless="xmlbeans-present?">
<antcall target="xmlbeans-get" />
<unzip src="${xmlbeans.zip}" dest="${xmlbeans.tmp}" />
<copy tofile="${xbean.jar}" file="${xmlbeans.tmp}/xmlbeans-2.5.0/lib/xbean.jar" />
<copy tofile="${jsr173.jar}" file="${xmlbeans.tmp}/xmlbeans-2.5.0/lib/jsr173_1.0_api.jar" />
<delete dir="${xmlbeans.tmp}" />
</target>
</project>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy