зеркало из https://github.com/mozilla/gecko-dev.git
276 строки
9.7 KiB
XML
276 строки
9.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- ***** BEGIN LICENSE BLOCK *****
|
|
- Version: MPL 1.1/GPL 2.0
|
|
-
|
|
- The contents of this file are subject to the Mozilla Public License Version
|
|
- 1.1 (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.mozilla.org/MPL/
|
|
-
|
|
- Software distributed under the License is distributed on an "AS IS" basis,
|
|
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
- for the specific language governing rights and limitations under the
|
|
- License.
|
|
-
|
|
- The Original Code is Rhino code, released May 6, 1999.
|
|
-
|
|
- The Initial Developer of the Original Code is
|
|
- Netscape Communications Corporation.
|
|
- Portions created by the Initial Developer are Copyright (C) 1997-1999
|
|
- the Initial Developer. All Rights Reserved.
|
|
-
|
|
- Contributor(s):
|
|
-
|
|
- Alternatively, the contents of this file may be used under the terms of
|
|
- the GNU General Public License Version 2 or later (the "GPL"), in which
|
|
- case the provisions of the GPL are applicable instead of those above. If
|
|
- you wish to allow use of your version of this file only under the terms of
|
|
- the GPL and not to allow others to use your version of this file under the
|
|
- MPL, indicate your decision by deleting the provisions above and replacing
|
|
- them with the notice and other provisions required by the GPL. If you do
|
|
- not delete the provisions above, a recipient may use your version of this
|
|
- file under either the MPL or the GPL.
|
|
-
|
|
- ***** END LICENSE BLOCK ***** -->
|
|
|
|
|
|
<!--
|
|
Build file for Rhino using Ant (see http://jakarta.apache.org/ant/index.html)
|
|
Requires Ant version 1.2 or later
|
|
|
|
Compilation currently requires JDK 1.4 or later
|
|
-->
|
|
|
|
<project name="Rhino" default="help" basedir=".">
|
|
|
|
<target name="properties">
|
|
<!-- Allow user to override default settings from build.properties -->
|
|
<property file="build.local.properties" />
|
|
<tstamp>
|
|
<!-- Specify date part of Context#getImplementationVersion() -->
|
|
<format property="implementation.date" pattern="yyyy MM dd"/>
|
|
</tstamp>
|
|
<property file="build.properties"/>
|
|
|
|
<property name="dist.file" value="rhino${version}.zip"/>
|
|
<property name="dist.source-only-zip" value="rhino${version}-sources.zip"/>
|
|
|
|
<property file="apiClasses.properties"/>
|
|
<property name="xmlimplsrc-build-file"
|
|
location="xmlimplsrc/build.xml"/>
|
|
|
|
<available property="xmlimplsrc-present?"
|
|
file="${xmlimplsrc-build-file}" />
|
|
|
|
</target>
|
|
|
|
<target name="init" depends="properties">
|
|
<mkdir dir="${build.dir}"/>
|
|
<mkdir dir="${classes}"/>
|
|
<mkdir dir="${dist.dir}"/>
|
|
</target>
|
|
|
|
<target name="compile" depends="init">
|
|
<ant antfile="src/build.xml" target="compile"/>
|
|
<ant antfile="toolsrc/build.xml" target="compile"/>
|
|
<antcall target="xmlimplsrc-compile" />
|
|
</target>
|
|
|
|
<target name="compile-all" depends="compile">
|
|
<ant antfile="deprecatedsrc/build.xml" target="compile"/>
|
|
</target>
|
|
|
|
<target name="copy-source" depends="init">
|
|
<ant antfile="src/build.xml" target="copy-source"/>
|
|
<ant antfile="toolsrc/build.xml" target="copy-source"/>
|
|
<antcall target="xmlimplsrc-copy-source" />
|
|
<ant antfile="deprecatedsrc/build.xml" target="copy-source"/>
|
|
<copy todir="${dist.dir}" file="build.xml"/>
|
|
<copy todir="${dist.dir}" file="build.properties"/>
|
|
<copy todir="${dist.dir}" file="apiClasses.properties"/>
|
|
</target>
|
|
|
|
<target name="xmlimplsrc-compile" if="xmlimplsrc-present?">
|
|
<echo>Calling ${xmlimplsrc-build-file}</echo>
|
|
<!-- Ignore compilation errors under JDK less then 1.4 -->
|
|
<property name="xmlimpl.compile.failonerror" value="no"/>
|
|
<ant antfile="${xmlimplsrc-build-file}" target="compile"/>
|
|
</target>
|
|
|
|
<target name="xmlimplsrc-copy-source" if="xmlimplsrc-present?">
|
|
<echo>Calling ${xmlimplsrc-build-file}</echo>
|
|
<ant antfile="${xmlimplsrc-build-file}" target="copy-source"/>
|
|
</target>
|
|
|
|
<target name="jar" depends="compile-all">
|
|
<jar jarfile="${dist.dir}/${rhino.jar}"
|
|
basedir="${classes}"
|
|
manifest="src/manifest"
|
|
compress="${jar-compression}"
|
|
/>
|
|
</target>
|
|
|
|
<target name="smalljar" depends="compile">
|
|
|
|
<jar basedir="${classes}" destfile="${dist.dir}/${small-rhino.jar}"
|
|
compress="${jar-compression}">
|
|
<include name="org/mozilla/javascript/*.class"/>
|
|
|
|
<include name="org/mozilla/javascript/debug/*.class"/>
|
|
<include name="org/mozilla/javascript/resources/*.properties"/>
|
|
<include name="org/mozilla/javascript/xml/*.class"/>
|
|
<include name="org/mozilla/javascript/continuations/*.class"/>
|
|
<include name="org/mozilla/javascript/jdk13/*.class"/>
|
|
|
|
<!-- exclude classes that defines only int constants -->
|
|
<exclude name="org/mozilla/javascript/Token.class"/>
|
|
|
|
<!-- exclude classes that uses class generation library -->
|
|
<exclude name="org/mozilla/javascript/JavaAdapter*.class"/>
|
|
|
|
<include name="org/mozilla/javascript/regexp/*.class"
|
|
unless="no-regexp"/>
|
|
</jar>
|
|
|
|
</target>
|
|
|
|
<target name="copy-examples" depends="init">
|
|
<mkdir dir="${dist.dir}/examples"/>
|
|
<copy todir="${dist.dir}/examples">
|
|
<fileset dir="examples" includes="**/*.java,**/*.js,**/*.html" />
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="copy-misc" depends="init">
|
|
<filter token="datestamp" value="${TODAY}"/>
|
|
<copy todir="${dist.dir}" filtering="yes">
|
|
<fileset dir=".">
|
|
<patternset>
|
|
<include name="build-date"/>
|
|
</patternset>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="copy-all" depends="copy-source,copy-examples,copy-misc">
|
|
</target>
|
|
|
|
<target name="copy-docs" depends="init">
|
|
<echo message="copy from docs"/>
|
|
<mkdir dir="${dist.dir}/docs"/>
|
|
<copy todir="${dist.dir}/docs">
|
|
<fileset dir="docs" includes="**/*.html,**/*.jpg,**/*.gif,**/*.js" />
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="javadoc" depends="copy-docs">
|
|
<mkdir dir="${dist.dir}/docs/apidocs"/>
|
|
<javadoc sourcefiles="${apiClasses}"
|
|
sourcepath="src"
|
|
destdir="${dist.dir}/docs/apidocs"
|
|
overview="${dist.dir}/docs/api.html"
|
|
version="true"
|
|
author="true"
|
|
windowtitle="${Name}" />
|
|
</target>
|
|
|
|
<target name="dist" depends="deepclean,jar,copy-all,javadoc">
|
|
<delete file="${dist.file}" />
|
|
<zip destfile="${dist.file}">
|
|
<fileset dir="${build.dir}" includes="${dist.name}/**"/>
|
|
</zip>
|
|
</target>
|
|
|
|
<target name="source-zip" depends="copy-source,copy-examples,copy-docs">
|
|
<delete file="${dist.source-only-zip}" />
|
|
<zip destfile="${dist.source-only-zip}">
|
|
<zipfileset prefix="${dist.name}" dir="${dist.dir}">
|
|
<include name="*src/**"/>
|
|
<include name="build.xml"/>
|
|
<include name="*.properties"/>
|
|
<include name="examples/**"/>
|
|
<include name="docs/**"/>
|
|
<exclude name="docs/apidocs/**"/>
|
|
</zipfileset>
|
|
</zip>
|
|
</target>
|
|
|
|
<target name="clean" depends="properties">
|
|
<delete quiet="true" file="${dist.dir}/${rhino.jar}"/>
|
|
<delete quiet="true" file="${dist.dir}/${small-rhino.jar}"/>
|
|
<delete quiet="true" dir="${classes}"/>
|
|
</target>
|
|
|
|
<target name="deepclean" depends="properties">
|
|
<delete quiet="true" dir="${build.dir}"/>
|
|
<delete quiet="true" file="${dist.file}"/>
|
|
<delete quiet="true" file="${dist.source-only-zip}"/>
|
|
</target>
|
|
|
|
<!--
|
|
The next two targets run the JavaScript Test Library tests. Note that these tests are quite extensive and take a long time
|
|
to run. They are not documented in the 'help' target for now.
|
|
-->
|
|
|
|
<!--
|
|
Run the tests using JUnit. Beware that if you are using Ant from the command-line, there are some difficulties you may
|
|
encounter setting this up correctly; see http://ant.apache.org/faq.html#delegating-classloader
|
|
|
|
IDEs that use Ant as the build system probably handle this fine.
|
|
-->
|
|
<target name="junit-all" depends="compile">
|
|
<ant antfile="testsrc/build.xml" target="junit"/>
|
|
</target>
|
|
|
|
<!--
|
|
Run the tests using the Java port of jsdriver.pl. Note that running this port from the command-line
|
|
may be more useful running this Ant target, as running from the command line allows configuration options,
|
|
such as running with a non-default optimization level, or running only a subset of the tests.
|
|
-->
|
|
<target name="jsdriver-all" depends="compile">
|
|
<ant antfile="testsrc/build.xml" target="jsdriver" />
|
|
</target>
|
|
|
|
<!--
|
|
Target just for development of the test code.
|
|
-->
|
|
<target name="_test-recompile" depends="compile">
|
|
<ant antfile="testsrc/build.xml" target="clean" />
|
|
<ant antfile="testsrc/build.xml" target="compile" />
|
|
</target>
|
|
|
|
<target name="help" depends="properties">
|
|
<echo>The following targets are available with this build file:
|
|
|
|
clean remove all compiled classes and copied property files
|
|
|
|
compile compile classes and copy all property files
|
|
into ${classes} directory
|
|
excluding deprecated code
|
|
|
|
compile-all compile all classes and copy all property files
|
|
into ${classes} directory
|
|
including deprecated code
|
|
|
|
deepclean remove all generated files and directories
|
|
|
|
dist create ${dist.file} with full Rhino distribution
|
|
|
|
help print this help
|
|
|
|
jar create ${rhino.jar} in ${dist.dir}
|
|
|
|
smalljar create ${small-rhino.jar} in ${dist.dir} with
|
|
minimalist set of Rhino classes. See footprint.html
|
|
from the doc directory for details.
|
|
|
|
javadoc generate Rhino API documentation
|
|
in ${dist.dir}/docs/apidocs
|
|
|
|
source-zip create ${dist.source-only-zip} with all Rhino
|
|
source files necessary to recreate ${dist.file}
|
|
</echo>
|
|
</target>
|
|
|
|
</project>
|