mirror of https://gitee.com/openkylin/batik.git
1619 lines
69 KiB
XML
1619 lines
69 KiB
XML
<!--
|
|
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
|
|
-->
|
|
<!--
|
|
|
|
|
|
A p a c h e B a t i k B u i l d S y s t e m
|
|
|
|
|
|
|
|
Build Tools
|
|
..............................................................................
|
|
|
|
The Batik build system is based on Apache Ant, which is a Java building tool
|
|
used in Apache projects.
|
|
For more information refer to <http://ant.apache.org/>.
|
|
|
|
The distribution contains a precompiled version of Ant.
|
|
|
|
The only thing that you have to make sure, is that the "JAVA_HOME" environment
|
|
property should be set to match the JVM you want to use.
|
|
|
|
If you are going to be doing development you may want to create a file
|
|
called 'build.properties' with the line 'debug=on' in it. This will
|
|
turn on the generation of debugging information when compiling Batik.
|
|
|
|
Building Instructions
|
|
..............................................................................
|
|
|
|
First, make sure your current working directory is where this file is located.
|
|
Then type:
|
|
|
|
[unix] ant compile
|
|
[win32] .\build.bat compile
|
|
|
|
This action will compile the sources to the 'classes' directory.
|
|
|
|
You can now launch the SVG browser by typing:
|
|
|
|
[unix] ant squiggle
|
|
[win32] .\build.bat squiggle
|
|
|
|
|
|
Build Targets
|
|
..............................................................................
|
|
|
|
To display the available targets type:
|
|
|
|
[unix] ant help
|
|
[win32] .\build.bat help
|
|
|
|
|
|
$Id: build.xml 1904583 2022-10-14 10:31:05Z ssteiner $
|
|
|
|
-->
|
|
|
|
<project default="help" name="batik" basedir=".">
|
|
|
|
<!-- Configuring the build -->
|
|
<property environment="env"/>
|
|
<property file="${basedir}/build-local.properties"/>
|
|
<property file="${basedir}/build.properties"/>
|
|
|
|
<!-- Initializations .................................................... -->
|
|
<target name="init">
|
|
<tstamp>
|
|
<format property="ts" pattern="yyyyMMdd-HHmmss-z"/>
|
|
</tstamp>
|
|
<property name="Project" value="Apache Batik" />
|
|
<property name="project" value="batik" />
|
|
<property name="year" value="2022" />
|
|
<property name="version" value="1.16" />
|
|
<property name="revisionType" value="" />
|
|
<property name="revisionNumber" value="" />
|
|
<property name="completeVersion" value="${version}${revisionType}${revisionNumber}" />
|
|
<property name="xgcVersion" value="2.7" />
|
|
<property name="fopVersion" value="2.7" />
|
|
<property name="vendor" value="The Apache Software Foundation (http://xmlgraphics.apache.org/batik/)" />
|
|
<property name="debug" value="on"/>
|
|
<property name="optimize" value="on"/>
|
|
<property name="deprecation" value="on"/>
|
|
<property name="javac.source" value="1.8"/>
|
|
<property name="javac.target" value="1.8"/>
|
|
<property name="src" value="sources"/>
|
|
<property name="src-internal-codec" value="sources-internal-codec"/>
|
|
<property name="resources" value="resources"/>
|
|
<property name="testsrc" value="batik-test-old/src/test/java"/>
|
|
<property name="testresources" value="test-resources"/>
|
|
<property name="dest" value="classes"/>
|
|
<property name="dest-internal-codec" value="classes-internal-codec"/>
|
|
<property name="build" value="${project}-${completeVersion}"/>
|
|
<property name="build.id" value="${ts} (${user.name} [${os.name} ${os.version} ${os.arch}, Java ${java.runtime.version}])"/>
|
|
<property name="docs" value="${build}/docs"/>
|
|
<property name="forrest-build" value="${build}/forrest"/>
|
|
<property name="app" value="${build}/Squiggle.app"/>
|
|
<property name="dmg" value="${build}/Squiggle-${completeVersion}.dmg"/>
|
|
<property name="lib" value="lib"/>
|
|
<property name="samples" value="samples"/>
|
|
<property name="package-prefix" value="org/apache/${project}"/>
|
|
|
|
<property name="class-prefix" value="org.apache.${project}"/>
|
|
|
|
<property name="dom.javadoc" value="http://www.w3.org/2003/01/dom2-javadoc/"/>
|
|
<property name="jdk.javadoc" value="http://docs.oracle.com/javase/7/docs/api/"/>
|
|
<property name="rhino.javadoc" value="http://www.mozilla.org/rhino/apidocs/"/>
|
|
|
|
<property name="site" value="site"/>
|
|
|
|
<property name="test-reports" value="test-reports"/>
|
|
<property name="test-references" value="test-references"/>
|
|
<property name="test-resources" value="test-resources"/>
|
|
|
|
<!-- For site deployment -->
|
|
<property name="deploy.svn.url" value="https://svn.apache.org/repos/asf/xmlgraphics/site/deploy/batik"/>
|
|
<property name="build.site-dir" value="${site}"/>
|
|
|
|
<path id="source.files">
|
|
<pathelement path="batik-anim/src/main/java"/>
|
|
<pathelement path="batik-awt-util/src/main/java"/>
|
|
<pathelement path="batik-bridge/src/main/java"/>
|
|
<pathelement path="batik-codec/src/main/java"/>
|
|
<pathelement path="batik-constants/src/main/java"/>
|
|
<pathelement path="batik-css/src/main/java"/>
|
|
<pathelement path="batik-dom/src/main/java"/>
|
|
<pathelement path="batik-ext/src/main/java"/>
|
|
<pathelement path="batik-extension/src/main/java"/>
|
|
<pathelement path="batik-gui-util/src/main/java"/>
|
|
<pathelement path="batik-gvt/src/main/java"/>
|
|
<pathelement path="batik-i18n/src/main/java"/>
|
|
<pathelement path="batik-parser/src/main/java"/>
|
|
<pathelement path="batik-rasterizer/src/main/java"/>
|
|
<pathelement path="batik-rasterizer-ext/src/main/java"/>
|
|
<pathelement path="batik-script/src/main/java"/>
|
|
<pathelement path="batik-slideshow/src/main/java"/>
|
|
<pathelement path="batik-squiggle/src/main/java"/>
|
|
<pathelement path="batik-svg-dom/src/main/java"/>
|
|
<pathelement path="batik-svgbrowser/src/main/java"/>
|
|
<pathelement path="batik-svggen/src/main/java"/>
|
|
<pathelement path="batik-svgpp/src/main/java"/>
|
|
<pathelement path="batik-svgrasterizer/src/main/java"/>
|
|
<pathelement path="batik-swing/src/main/java"/>
|
|
<pathelement path="batik-transcoder/src/main/java"/>
|
|
<pathelement path="batik-ttf2svg/src/main/java"/>
|
|
<pathelement path="batik-util/src/main/java"/>
|
|
<pathelement path="batik-xml/src/main/java"/>
|
|
</path>
|
|
|
|
<pathconvert property="cwd">
|
|
<path path="."/>
|
|
</pathconvert>
|
|
|
|
<path id="libs-classpath">
|
|
<fileset dir="lib">
|
|
<include name="*.jar"/>
|
|
</fileset>
|
|
</path>
|
|
|
|
<path id="libs-build-classpath">
|
|
<fileset dir="lib/build">
|
|
<include name="stylebook*.jar"/>
|
|
</fileset>
|
|
<fileset dir="lib">
|
|
<include name="xalan*.jar"/>
|
|
<include name="xerces*.jar"/>
|
|
<include name="xml-apis-1.3.04.jar"/>
|
|
<include name="xml-apis-ext-1.3.04.jar"/>
|
|
<include name="serializer-2.7.2.jar"/>
|
|
<include name="xmlgraphics-commons*.jar"/>
|
|
</fileset>
|
|
</path>
|
|
|
|
<available property="rhino.present" classname="org.mozilla.javascript.Context">
|
|
<classpath refid="libs-classpath"/>
|
|
</available>
|
|
<available property="jpython.present" classname="org.python.util.PythonInterpreter">
|
|
<classpath refid="libs-classpath"/>
|
|
</available>
|
|
<available property="jacl.present" classname="tcl.lang.Interp">
|
|
<classpath refid="libs-classpath"/>
|
|
</available>
|
|
|
|
<!-- When compiling Batik under GNU Classpath, the Sun codecs are not available. -->
|
|
<condition property="sun-codecs.present">
|
|
<and>
|
|
<available classname="com.sun.image.codec.jpeg.JPEGCodec"
|
|
classpathref="libs-classpath"/>
|
|
<!-- This became quite tricky in JDK 7, as the Sun codecs were "retired"
|
|
(they are available in run-time although the "classes are not located when compiling")
|
|
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6527962 -->
|
|
<not>
|
|
<and>
|
|
<equals arg1="${java.specification.vendor}" arg2="Oracle Corporation"/>
|
|
<or>
|
|
<!-- According to Sun issue 6527962, the classes are to be completely removed in JDK 8
|
|
(so there should be no need to extend this list any longer) -->
|
|
<equals arg1="${java.specification.version}" arg2="1.7"/>
|
|
<equals arg1="${java.specification.version}" arg2="1.8"/>
|
|
</or>
|
|
</and>
|
|
</not>
|
|
<not>
|
|
<equals arg1="${sun-codecs.disabled}" arg2="true"/>
|
|
</not>
|
|
</and>
|
|
</condition>
|
|
|
|
<condition property="javadoc-exclusion-rhino"
|
|
value="org.apache.batik.script.rhino">
|
|
<not>
|
|
<equals arg1="${rhino.present}" arg2="true"/>
|
|
</not>
|
|
</condition>
|
|
<condition property="javadoc-exclusion-jpython"
|
|
value="org.apache.batik.script.jpython">
|
|
<not>
|
|
<equals arg1="${jpython.present}" arg2="true"/>
|
|
</not>
|
|
</condition>
|
|
<condition property="javadoc-exclusion-jacl"
|
|
value="org.apache.batik.script.jacl">
|
|
<not>
|
|
<equals arg1="${jacl.present}" arg2="true"/>
|
|
</not>
|
|
</condition>
|
|
|
|
<property name="javadoc-exclusions"
|
|
value="${javadoc-exclusion-rhino},${javadoc-exclusion-jpython},${javadoc-exclusion-jacl}"/>
|
|
|
|
<uptodate property="IWasLoadedUpToDate"
|
|
targetfile="${testresources}/org/apache/batik/bridge/IWasLoaded.jar">
|
|
<srcfiles dir="${testresources}/org/apache/batik/bridge"
|
|
includes="IWasLoaded.java"/>
|
|
</uptodate>
|
|
|
|
<uptodate property="IWasLoadedTooUpToDate"
|
|
targetfile="${testresources}/org/apache/batik/bridge/IWasLoadedToo.jar">
|
|
<srcfiles dir="${testresources}/org/apache/batik/bridge"
|
|
includes="IWasLoadedToo.java"/>
|
|
</uptodate>
|
|
|
|
<condition property="forrest.call" value="cmd" else="${env.FORREST_HOME}/bin/forrest">
|
|
<os family="windows"/>
|
|
</condition>
|
|
|
|
<condition property="forrest.args" value="/c "${env.FORREST_HOME}\bin\forrest.bat"" else="">
|
|
<os family="windows"/>
|
|
</condition>
|
|
|
|
<!-- Info ............................................................... -->
|
|
<echo message=" == ${Project} ${completeVersion} build file ================================"/>
|
|
<echo message=""/>
|
|
<echo message=" JAVA_HOME: ${env.JAVA_HOME}"/>
|
|
<echo message=" VM: ${java.vm.version}, ${java.vm.vendor}"/>
|
|
</target>
|
|
|
|
<!-- Help ............................................................... -->
|
|
<target name="help" depends="init" description="Displays the usage">
|
|
<echo message=""/>
|
|
<echo message="The following build targets are available:"/>
|
|
<echo message=""/>
|
|
<echo message=" -- Running -------------------------------------------------------"/>
|
|
<echo message=""/>
|
|
<echo message=" squiggle"/>
|
|
<echo message=" Runs the Squiggle SVG browser application."/>
|
|
<echo message=""/>
|
|
<echo message=" svgrasterizer"/>
|
|
<echo message=" Runs the SVG rasterizer application."/>
|
|
<echo message=""/>
|
|
<echo message=" svgpp"/>
|
|
<echo message=" Runs the SVG pretty-printer application."/>
|
|
<echo message=""/>
|
|
<echo message=" ttf2svg"/>
|
|
<echo message=" Runs the TrueType Font to SVG Font convert application."/>
|
|
<echo message=""/>
|
|
<echo message=" -- Building ------------------------------------------------------"/>
|
|
<echo message=""/>
|
|
<echo message=" dist-zip"/>
|
|
<echo message=" Builds the binary, source and documentation distributions"/>
|
|
<echo message=" as ZIP files."/>
|
|
<echo message=" (Creates ${project}-${completeVersion}.zip, ${project}-docs-${completeVersion}.zip"/>
|
|
<echo message=" and ${project}-src-${completeVersion}.zip.)"/>
|
|
<echo message=""/>
|
|
<echo message=" dist-tgz"/>
|
|
<echo message=" Builds the binary, source and documentation distributions"/>
|
|
<echo message=" as .tar.gz files."/>
|
|
<echo message=" (Creates ${project}-${completeVersion}.tar.gz, ${project}-docs-${completeVersion}.tar.gz"/>
|
|
<echo message=" and ${project}-src-${completeVersion}.tar.gz.)"/>
|
|
<echo message=""/>
|
|
<echo message=" appbundle"/>
|
|
<echo message=" Builds the Mac OS X Squiggle application bundle."/>
|
|
<echo message=" (Creates ${app}.)"/>
|
|
<echo message=""/>
|
|
<echo message=" dmg"/>
|
|
<echo message=" Builds the Mac OS X Squiggle application bundle disk image."/>
|
|
<echo message=" (Creates ${dmg}.)"/>
|
|
<echo message=""/>
|
|
<echo message=" compile"/>
|
|
<echo message=" Compiles all of Batik except the test infrastructure."/>
|
|
<echo message=" (Creates class files in classes/ from files in sources/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" compiletest"/>
|
|
<echo message=" Compiles the Batik test infrastructure."/>
|
|
<echo message=" (Creates class files in classes/ from files in"/>
|
|
<echo message=" test-sources/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" jars"/>
|
|
<echo message=" Builds jar files for all Batik libraries and applications."/>
|
|
<echo message=" (Creates ${build}/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" all-jar"/>
|
|
<echo message=" Builds a single jar that contains all Batik libraries."/>
|
|
<echo message=" (Creates ${build}/lib/${project}-all.jar.)"/>
|
|
<echo message=""/>
|
|
<echo message=" javadoc"/>
|
|
<echo message=" Generates the API documentation."/>
|
|
<echo message=" (Creates ${docs}/javadoc/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" site"/>
|
|
<echo message=" Generates the http://xmlgraphics.apache.org/batik/ site,"/>
|
|
<echo message=" including Javadocs."/>
|
|
<echo message=" (Creates ${site}/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" sitedoc"/>
|
|
<echo message=" Generates the http://xmlgraphics.apache.org/batik/ site,"/>
|
|
<echo message=" excluding Javadocs."/>
|
|
<echo message=" (Creates ${site}/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" html"/>
|
|
<echo message=" Generates the HTML documentation, including Javadocs."/>
|
|
<echo message=" (Creates ${docs}/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" htmldoc"/>
|
|
<echo message=" Generates the HTML documentation, excluding Javadocs."/>
|
|
<echo message=" (Creates ${docs}/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" splash"/>
|
|
<echo message=" Regenerates the Squiggle browser splash screen."/>
|
|
<echo message=""/>
|
|
<echo message=" clean"/>
|
|
<echo message=" Removes all output files and directories."/>
|
|
<echo message=" "/>
|
|
<echo message=" -- Testing -------------------------------------------------------"/>
|
|
<echo message=""/>
|
|
<echo message=" regard"/>
|
|
<echo message=" Runs the Regard regression testing tool for all tests that"/>
|
|
<echo message=" need no user interaction."/>
|
|
<echo message=" (Creates HTML test reports in test-reports/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" regard.manual"/>
|
|
<echo message=" Runs the Regard regression testing tool for all test that"/>
|
|
<echo message=" need user interaction."/>
|
|
<echo message=" (Creates HTML test reports in test-reports/.)"/>
|
|
<echo message=""/>
|
|
<echo message=" runtestsuite"/>
|
|
<echo message=" Runs a test suite, given an XML test suite document."/>
|
|
<echo message=""/>
|
|
<echo message=" runtest"/>
|
|
<echo message=" Runs an individual test, given a class name."/>
|
|
<echo message=""/>
|
|
<echo message=" showpainter"/>
|
|
<echo message=" Runs an SVG Generator painter test, given a class name."/>
|
|
<echo message=""/>
|
|
<echo message="See the comments in the build.xml file for more details."/>
|
|
</target>
|
|
|
|
<!-- Build .............................................................. -->
|
|
<target name="dist-zip" depends="build-zip"/>
|
|
<target name="build-zip" depends="doc-zip, bin-zip, src-zip"/>
|
|
|
|
<target name="doc-zip" depends="init, html">
|
|
<delete dir="${build}/docs/images/BE"/>
|
|
<zip zipfile="${project}-docs-${completeVersion}.zip" basedir="${build}"
|
|
includes="docs/javadoc/**"/>
|
|
<delete dir="${build}/docs/javadoc"/>
|
|
</target>
|
|
|
|
<target name="copy-shared-resources">
|
|
<copy todir="${basedir}">
|
|
<fileset dir="${basedir}/batik-shared-resources/src/main/resources">
|
|
<include name="LICENSE"/>
|
|
<include name="NOTICE"/>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="clean-shared-resources">
|
|
<delete file="${basedir}/LICENSE" failonerror="false"/>
|
|
<delete file="${basedir}/NOTICE" failonerror="false"/>
|
|
</target>
|
|
|
|
<target name="bin-zip" depends="init, copy-shared-resources, jars, bundle-script">
|
|
<zip zipfile="${project}-bin-${completeVersion}.zip">
|
|
<zipfileset dir="." prefix="${project}-${completeVersion}">
|
|
<include name="LICENSE"/>
|
|
<include name="NOTICE"/>
|
|
<include name="README"/>
|
|
<include name="CHANGES"/>
|
|
</zipfileset>
|
|
<zipfileset dir="${build}" prefix="${project}-${completeVersion}">
|
|
<include name="*.jar"/>
|
|
<include name="docs/**"/>
|
|
<include name="extensions/**"/>
|
|
<include name="lib/*.jar"/>
|
|
<include name="lib/make-squiggle-app.sh"/>
|
|
</zipfileset>
|
|
<zipfileset dir="lib" prefix="${project}-${completeVersion}/lib">
|
|
<include name="LICENSE.*.txt"/>
|
|
<include name="README.*.txt"/>
|
|
<include name="NOTICE.*.txt"/>
|
|
</zipfileset>
|
|
<zipfileset dir="batik-extension/src/main/resources/${package-prefix}/extensions"
|
|
prefix="${project}-${completeVersion}/extensions">
|
|
<include name="README.txt"/>
|
|
</zipfileset>
|
|
<zipfileset dir="${src}" prefix="${project}-${completeVersion}/lib">
|
|
<include name="Squiggle.icns"/>
|
|
</zipfileset>
|
|
<zipfileset dir="." includes="samples/**" prefix="${project}-${completeVersion}"/>
|
|
</zip>
|
|
</target>
|
|
|
|
<target name="src-zip" depends="init, copy-shared-resources, record-svn-revision">
|
|
<zip zipfile="${project}-src-${completeVersion}.zip">
|
|
<zipfileset dir="." prefix="${project}-${completeVersion}">
|
|
<include name="LICENSE"/>
|
|
<include name="KEYS"/>
|
|
<include name="MAINTAIN"/>
|
|
<include name="NOTICE"/>
|
|
<include name="README"/>
|
|
<include name="CHANGES"/>
|
|
<include name="build.bat"/>
|
|
<include name="build.sh"/>
|
|
<include name="build.xml"/>
|
|
<include name="**/pom.xml"/>
|
|
<include name="forrest.properties"/>
|
|
<include name="svn-revision"/>
|
|
<include name="contrib/**"/>
|
|
<include name="lib/**"/>
|
|
<include name="documentation-sources/**"/>
|
|
<include name="resources/**"/>
|
|
<include name="samples/**"/>
|
|
<include name="*/src/**"/>
|
|
<include name="test-resources/**"/>
|
|
<include name="test-sources/**"/>
|
|
</zipfileset>
|
|
</zip>
|
|
<delete file="svn-revision" failonerror="false"/>
|
|
</target>
|
|
|
|
<target name="dist-tgz" depends="build-tgz"/>
|
|
<target name="build-tgz" depends="doc-tgz, bin-tgz, src-tgz"/>
|
|
|
|
<target name="doc-tgz" depends="init, html">
|
|
<delete dir="${build}/docs/images/BE"/>
|
|
<tar tarfile="${project}-docs-${completeVersion}.tar.gz" compression="gzip"
|
|
basedir="${build}" includes="docs/javadoc/**"/>
|
|
<delete dir="${build}/docs/javadoc"/>
|
|
</target>
|
|
|
|
<target name="bin-tgz" depends="init, copy-shared-resources, jars, bundle-script">
|
|
<tar tarfile="${project}-bin-${completeVersion}.tar.gz" compression="gzip">
|
|
<tarfileset dir="." prefix="${project}-${completeVersion}">
|
|
<include name="LICENSE"/>
|
|
<include name="NOTICE"/>
|
|
<include name="README"/>
|
|
<include name="CHANGES"/>
|
|
</tarfileset>
|
|
<tarfileset dir="${build}" prefix="${project}-${completeVersion}">
|
|
<include name="*.jar"/>
|
|
<include name="docs/**"/>
|
|
<include name="extensions/**"/>
|
|
<include name="lib/*.jar"/>
|
|
<include name="lib/make-squiggle-app.sh"/>
|
|
</tarfileset>
|
|
<tarfileset dir="lib" prefix="${project}-${completeVersion}/lib">
|
|
<include name="LICENSE.*.txt"/>
|
|
<include name="README.*.txt"/>
|
|
<include name="NOTICE.*.txt"/>
|
|
</tarfileset>
|
|
<tarfileset dir="batik-extension/src/main/resources/${package-prefix}/extensions"
|
|
prefix="${project}-${completeVersion}/extensions">
|
|
<include name="README.txt"/>
|
|
</tarfileset>
|
|
<tarfileset dir="${src}" prefix="${project}-${completeVersion}/lib">
|
|
<include name="Squiggle.icns"/>
|
|
</tarfileset>
|
|
<tarfileset dir="." includes="samples/**" prefix="${project}-${completeVersion}"/>
|
|
</tar>
|
|
</target>
|
|
|
|
<target name="src-tgz" depends="init, copy-shared-resources, record-svn-revision">
|
|
<tar tarfile="${project}-src-${completeVersion}.tar.gz" compression="gzip">
|
|
<tarfileset dir="." prefix="${project}-${completeVersion}">
|
|
<include name="LICENSE"/>
|
|
<include name="KEYS"/>
|
|
<include name="MAINTAIN"/>
|
|
<include name="NOTICE"/>
|
|
<include name="README"/>
|
|
<include name="CHANGES"/>
|
|
<include name="build.bat"/>
|
|
<include name="build.sh"/>
|
|
<include name="build.xml"/>
|
|
<include name="**/pom.xml"/>
|
|
<include name="forrest.properties"/>
|
|
<include name="svn-revision"/>
|
|
<include name="contrib/**"/>
|
|
<include name="lib/**"/>
|
|
<include name="documentation-sources/**"/>
|
|
<include name="resources/**"/>
|
|
<include name="samples/**"/>
|
|
<include name="*/src/**"/>
|
|
<include name="test-resources/**"/>
|
|
<include name="test-sources/**"/>
|
|
</tarfileset>
|
|
</tar>
|
|
<delete file="svn-revision" failonerror="false"/>
|
|
</target>
|
|
|
|
<target name="release-dist" depends="dist-zip,dist-tgz" description="Generates the distribution package and signs the release">
|
|
<input message="Passphrase for your default private key" addproperty="pwd">
|
|
<handler classname="org.apache.tools.ant.input.SecureInputHandler" />
|
|
</input>
|
|
<antcall target="sha512">
|
|
<param name="sign.archive" value="${project}-docs-${completeVersion}.zip"/>
|
|
</antcall>
|
|
<antcall target="sign-file">
|
|
<param name="sign.archive" value="${project}-docs-${completeVersion}.zip"/>
|
|
<param name="pwd" value="${pwd}"/>
|
|
</antcall>
|
|
<antcall target="sha512">
|
|
<param name="sign.archive" value="${project}-docs-${completeVersion}.tar.gz"/>
|
|
</antcall>
|
|
<antcall target="sign-file">
|
|
<param name="sign.archive" value="${project}-docs-${completeVersion}.tar.gz"/>
|
|
<param name="pwd" value="${pwd}"/>
|
|
</antcall>
|
|
<antcall target="sha512">
|
|
<param name="sign.archive" value="${project}-bin-${completeVersion}.zip"/>
|
|
</antcall>
|
|
<antcall target="sign-file">
|
|
<param name="sign.archive" value="${project}-bin-${completeVersion}.zip"/>
|
|
<param name="pwd" value="${pwd}"/>
|
|
</antcall>
|
|
<antcall target="sha512">
|
|
<param name="sign.archive" value="${project}-bin-${completeVersion}.tar.gz"/>
|
|
</antcall>
|
|
<antcall target="sign-file">
|
|
<param name="sign.archive" value="${project}-bin-${completeVersion}.tar.gz"/>
|
|
<param name="pwd" value="${pwd}"/>
|
|
</antcall>
|
|
<antcall target="sha512">
|
|
<param name="sign.archive" value="${project}-src-${completeVersion}.zip"/>
|
|
</antcall>
|
|
<antcall target="sign-file">
|
|
<param name="sign.archive" value="${project}-src-${completeVersion}.zip"/>
|
|
<param name="pwd" value="${pwd}"/>
|
|
</antcall>
|
|
<antcall target="sha512">
|
|
<param name="sign.archive" value="${project}-src-${completeVersion}.tar.gz"/>
|
|
</antcall>
|
|
<antcall target="sign-file">
|
|
<param name="sign.archive" value="${project}-src-${completeVersion}.tar.gz"/>
|
|
<param name="pwd" value="${pwd}"/>
|
|
</antcall>
|
|
</target>
|
|
|
|
<target name="sha512">
|
|
<property name="sha512sum.exec" value="sha512sum"/>
|
|
<property name="sha512sum.options" value=""/>
|
|
<exec executable="${sha512sum.exec}" output="${sign.archive}.sha512">
|
|
<arg line="${sha512sum.options} ${sign.archive}"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="sign-file">
|
|
<property name="gpg.exec" value="gpg"/>
|
|
<property name="gpg.options" value="--armor --detach-sign --force-v3-sigs --batch --verbose --passphrase-fd 0"/>
|
|
<delete file="${sign.archive}.asc"/>
|
|
<exec executable="${gpg.exec}" inputstring="${pwd}">
|
|
<arg line="${gpg.options} ${sign.archive}"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="src-jar" depends="init, copy-shared-resources, record-svn-revision">
|
|
<jar jarfile="${build}/lib/${project}-src-${completeVersion}.jar">
|
|
<fileset dir=".">
|
|
<include name="LICENSE"/>
|
|
<include name="KEYS"/>
|
|
<include name="MAINTAIN"/>
|
|
<include name="NOTICE"/>
|
|
<include name="README"/>
|
|
<include name="CHANGES"/>
|
|
<include name="build.bat"/>
|
|
<include name="build.sh"/>
|
|
<include name="build.xml"/>
|
|
<include name="forrest.properties"/>
|
|
<include name="svn-revision"/>
|
|
<include name="contrib/**"/>
|
|
<include name="lib/**"/>
|
|
<include name="documentation-sources/**"/>
|
|
<include name="resources/**"/>
|
|
<include name="samples/**"/>
|
|
<include name="*/src/**"/>
|
|
<include name="test-resources/**"/>
|
|
<include name="test-sources/**"/>
|
|
</fileset>
|
|
</jar>
|
|
<delete file="svn-revision" failonerror="false"/>
|
|
</target>
|
|
|
|
<target name="dmg" depends="appbundle">
|
|
<exec executable="hdiutil">
|
|
<arg line="create -srcfolder ${app} ${dmg}"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="appbundle" depends="init, jars, determine-svn-revision">
|
|
<mkdir dir="${app}/Contents/MacOS"/>
|
|
<mkdir dir="${app}/Contents/Resources"/>
|
|
<echo file="${app}/Contents/Info.plist"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
<plist version="1.0">
|
|
<dict>
|
|
<key>CFBundleExecutable</key>
|
|
<string>Squiggle</string>
|
|
<key>CFBundleVersion</key>
|
|
<string>${completeVersion}</string>
|
|
<key>CFBundleShortVersionString</key>
|
|
<string>${completeVersion}</string>
|
|
<key>CFBundleIconFile</key>
|
|
<string>Squiggle.icns</string>
|
|
<key>CFBundleIdentifier</key>
|
|
<string>org.apache.batik</string>
|
|
<key>CFBundleInfoDictionaryVersion</key>
|
|
<string>6.0</string>
|
|
<key>CFBundleName</key>
|
|
<string>Squiggle</string>
|
|
<key>CFBundlePackageType</key>
|
|
<string>APPL</string>
|
|
<key>CFBundleSignature</key>
|
|
<string>????</string>
|
|
<key>NSHumanReadableCopyright</key>
|
|
<string>Copyright © ${year} Apache Software Foundation. All Rights Reserved.</string>
|
|
</dict>
|
|
</plist>]]></echo>
|
|
<echo file="${app}/Contents/MacOS/Squiggle"><![CDATA[#!/bin/sh
|
|
|
|
JAVA=/usr/bin/java
|
|
[ -e "$JAVA_HOME/bin/java" ] && JAVA="$JAVA_HOME/bin/java"
|
|
|
|
"$JAVA" -Dcom.apple.mrj.application.apple.menu.about.name=Squiggle -jar "`dirname \"$0\"`/../Resources/batik-squiggle.jar"
|
|
]]></echo>
|
|
<chmod perm="a+x" file="${app}/Contents/MacOS/Squiggle"/>
|
|
<copy todir="${app}/Contents/Resources">
|
|
<fileset dir=".">
|
|
<include name="LICENSE"/>
|
|
<include name="NOTICE"/>
|
|
<include name="README"/>
|
|
</fileset>
|
|
<fileset dir="${build}">
|
|
<include name="*.jar"/>
|
|
<include name="lib/**"/>
|
|
<include name="extensions/**"/>
|
|
</fileset>
|
|
<fileset dir="${src}">
|
|
<include name="Squiggle.icns"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${app}/Contents/Resources/lib">
|
|
<fileset dir="${lib}">
|
|
<include name="LICENSE.*.txt"/>
|
|
<include name="README.*.txt"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${app}/Contents/Resources/extensions">
|
|
<fileset dir="${resources}/${package-prefix}/extensions">
|
|
<include name="README.txt"/>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="bundle-script" depends="init, determine-svn-revision">
|
|
<!-- <copy file="${src}/make-squiggle-app.sh.template"
|
|
tofile="${build}/lib/make-squiggle-app.sh">
|
|
<filterset>
|
|
<filter token="VERSION" value="${completeVersion}"/>
|
|
<filter token="YEAR" value="${year}"/>
|
|
</filterset>
|
|
</copy>
|
|
<chmod perm="a+x" file="${build}/lib/make-squiggle-app.sh"/> -->
|
|
</target>
|
|
|
|
<!-- Compilation ........................................................ -->
|
|
<target name="compiletest" depends="init, compile"
|
|
description="Compiles the tests infrastructure source files">
|
|
<mkdir dir="${dest}"/>
|
|
|
|
<echo message="debug ${debug}, optimize ${optimize}, deprecation ${deprecation}"/>
|
|
|
|
<javac source="${javac.source}" target="${javac.target}" destdir="${dest}" deprecation="${deprecation}"
|
|
debug="${debug}" optimize="${optimize}" encoding="UTF-8">
|
|
<src path="${testsrc}"/>
|
|
<src path="batik-test/src/main/java"/>
|
|
<src path="batik-test-svg/src/main/java"/>
|
|
<src path="batik-test-swing/src/main/java"/>
|
|
<src path="batik-util/src/test/java"/>
|
|
<exclude name="org/apache/batik/util/*TestCases.java"/>
|
|
<exclude name="org/apache/batik/util/*TestSuite.java"/>
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
</classpath>
|
|
</javac>
|
|
</target>
|
|
|
|
<!-- Builds Jar Files needed for test purposes. Note that compilation of jars is done -->
|
|
<!-- in a different directory than the usual 'classes' directory ({$dest}). -->
|
|
<!-- Note that this is needed to avoid having the class files in the classes -->
|
|
<!-- subdirectory, which interferes with the tests, because classes in that directory -->
|
|
<!-- are loaded first in the development version. -->
|
|
<target name="testjars" depends="security2.jar, IWasLoaded.jar, IWasLoadedToo.jar, JarCheckPermissionsGranted.jar, JarCheckPermissionsDenied.jar, java-binding.jar"/>
|
|
|
|
<target name="compiletestjars" depends="init, compile"
|
|
description="Compiles the source files for the samples scripts and the test-resources">
|
|
<mkdir dir="${testresources}/classes"/>
|
|
<mkdir dir="${samples}/tests/resources/java/classes"/>
|
|
|
|
<echo message="debug ${debug}, optimize ${optimize}, deprecation ${deprecation}"/>
|
|
|
|
<javac source="${javac.source}" target="${javac.target}" srcdir="${samples}/tests/resources/java/sources" destdir="${samples}/tests/resources/java/classes" deprecation="${deprecation}"
|
|
debug="${debug}" optimize="${optimize}" encoding="UTF-8">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<pathelement location="${samples}/tests/resources/java/classes"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
</classpath>
|
|
</javac>
|
|
|
|
<javac source="${javac.source}" target="${javac.target}" srcdir="${testresources}" destdir="${testresources}/classes" deprecation="${deprecation}"
|
|
debug="${debug}" optimize="${optimize}" encoding="UTF-8">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<pathelement location="${testresources}/classes"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
</classpath>
|
|
</javac>
|
|
</target>
|
|
|
|
<target name="security2.jar" depends="init, compiletestjars">
|
|
<jar manifest="${samples}/tests/resources/java/resources/com/untrusted/script/security2.mf"
|
|
jarfile="samples/tests/spec/scripting/security2.jar">
|
|
<fileset dir="${samples}/tests/resources/java/classes">
|
|
<include name="com/untrusted/script/**/*.class"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="IWasLoaded.jar" depends="init, compiletestjars"
|
|
unless="IWasLoadedUpToDate">
|
|
<jar manifest="${testresources}/org/apache/batik/bridge/IWasLoaded.mf"
|
|
jarfile="${testresources}/org/apache/batik/bridge/IWasLoaded.jar">
|
|
<fileset dir="${testresources}/classes">
|
|
<include name="org/apache/batik/bridge/IWasLoaded.class"/>
|
|
<include name="org/apache/batik/bridge/IWasLoaded$*.class"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="IWasLoadedToo.jar" depends="init, compiletestjars"
|
|
unless="IWasLoadedTooUpToDate">
|
|
<jar manifest="${testresources}/org/apache/batik/bridge/IWasLoadedToo.mf"
|
|
jarfile="${testresources}/org/apache/batik/bridge/IWasLoadedToo.jar">
|
|
<fileset dir="${testresources}/classes">
|
|
<include name="org/apache/batik/bridge/IWasLoadedToo.class"/>
|
|
<include name="org/apache/batik/bridge/IWasLoadedToo$*.class"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="JarCheckPermissionsDenied.jar" depends="init, compiletestjars">
|
|
<jar manifest="${testresources}/org/apache/batik/bridge/JarCheckPermissionsDenied.mf"
|
|
jarfile="${testresources}/org/apache/batik/bridge/JarCheckPermissionsDenied.jar">
|
|
<fileset dir="${testresources}/classes">
|
|
<include name="org/apache/batik/bridge/JarCheckPermissionsDenied*.class"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="JarCheckPermissionsGranted.jar" depends="init, compiletestjars">
|
|
<jar manifest="${testresources}/org/apache/batik/bridge/JarCheckPermissionsGranted.mf"
|
|
jarfile="${testresources}/org/apache/batik/bridge/JarCheckPermissionsGranted.jar">
|
|
<fileset dir="${testresources}/classes">
|
|
<include name="org/apache/batik/bridge/JarCheckPermissionsGranted*.class"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="java-binding.jar" depends="init, compiletestjars">
|
|
<jar manifest="${samples}/tests/resources/java/resources/com/test/script/java-binding.mf"
|
|
jarfile="${samples}/tests/spec/scripting/java-binding.jar">
|
|
<fileset dir="${samples}/tests/resources/java/classes">
|
|
<include name="com/test/script/EventListenerInitializerImpl*.class"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="record-svn-revision" depends="determine-svn-revision"
|
|
if="svn-revision-determined">
|
|
<echo message="${svn-revision-number}" file="svn-revision"/>
|
|
</target>
|
|
|
|
<target name="determine-svn-revision"
|
|
depends="determine-svn-revision-svn-info,
|
|
determine-svn-revision-transform,
|
|
determine-svn-revision-from-file,
|
|
determine-svn-revision-set"/>
|
|
|
|
<target name="determine-svn-revision-svn-info" depends="init">
|
|
<dirset id="dirs" dir="${basedir}">
|
|
<include name="batik-anim/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-awt-util/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-bridge/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-codec/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-constants/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-css/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-dom/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-ext/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-extension/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-gui-util/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-gvt/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-i18n/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-parser/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-rasterizer/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-rasterizer-ext/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-script/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-slideshow/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-squiggle/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-svg-dom/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-svgbrowser/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-svggen/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-svgpp/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-svgrasterizer/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-swing/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-transcoder/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-ttf2svg/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-util/src/main/java/${package-prefix}/**"/>
|
|
<include name="batik-xml/src/main/java/${package-prefix}/**"/>
|
|
</dirset>
|
|
<pathconvert refid="dirs" pathsep=" " property="svn-info-dirs"/>
|
|
<exec executable="svn" output="svn-info.xml"
|
|
resultproperty="svn-info-result" failifexecutionfails="false">
|
|
<arg line="info --xml . ${svn-info-dirs}"/>
|
|
</exec>
|
|
<condition property="should-transform-svn-info">
|
|
<equals arg1="${svn-info-result}" arg2="0"/>
|
|
</condition>
|
|
</target>
|
|
|
|
<target name="determine-svn-revision-transform" depends="init"
|
|
if="should-transform-svn-info">
|
|
<java fork="yes" classname="org.apache.xalan.xslt.Process"
|
|
outputproperty="svn-revision-number"
|
|
errorproperty="svn-revision-transform-error"
|
|
resultproperty="svn-revision-transform-result">
|
|
<classpath>
|
|
<path refid="libs-build-classpath"/>
|
|
</classpath>
|
|
<arg line="-in svn-info.xml -xsl ${lib}/build/svn-info-revision.xsl"/>
|
|
</java>
|
|
<condition property="svn-revision-determined">
|
|
<equals arg1="${svn-revision-transform-result}" arg2="0"/>
|
|
</condition>
|
|
</target>
|
|
|
|
<target name="determine-svn-revision-from-file"
|
|
unless="svn-revision-determined">
|
|
<loadfile property="svn-revision-number" srcFile="svn-revision"
|
|
failonerror="false"/>
|
|
<condition property="svn-revision-determined">
|
|
<not>
|
|
<equals arg1="${svn-revision-suffix-string}" arg2=""/>
|
|
</not>
|
|
</condition>
|
|
</target>
|
|
|
|
<target name="determine-svn-revision-set"
|
|
if="svn-revision-determined">
|
|
<property name="svn-revision-suffix" value="+r${svn-revision-number}"/>
|
|
<delete file="svn-info.xml" failonerror="false"/>
|
|
</target>
|
|
|
|
|
|
<target name="compile-prepare" depends="init" unless="compile-prepare.done">
|
|
<mkdir dir="${dest}"/>
|
|
<echo message="debug ${debug}, optimize ${optimize}, deprecation ${deprecation}"/>
|
|
<property name="compile-prepare.done" value="true"/>
|
|
</target>
|
|
|
|
<target name="compile-copy-resources" depends="init, compile-prepare" unless="compile-copy-resources.done">
|
|
<property name="compile-copy-resources.done" value="true"/>
|
|
<copy todir="${dest}">
|
|
<fileset dir="batik-anim/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-awt-util/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-bridge/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-codec/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-css/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-dom/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<!-- <fileset dir="batik-ext/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<fileset dir="batik-extension/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-gui-util/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<!-- <fileset dir="batik-gvt/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<fileset dir="batik-parser/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<!-- <fileset dir="batik-rasterizer/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<!-- <fileset dir="batik-rasterizer-ext/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<fileset dir="batik-script/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<!-- <fileset dir="batik-slideshow/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<!-- <fileset dir="batik-squiggle/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<fileset dir="batik-svg-dom/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-svgbrowser/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-svggen/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-svgpp/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-svgrasterizer/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-swing/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-transcoder/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<!-- <fileset dir="batik-ttf2svg/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset> -->
|
|
<fileset dir="batik-util/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
<fileset dir="batik-xml/src/main/resources">
|
|
<include name="**"/>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="compile" depends="init, compile-prepare, compile-copy-resources" unless="compile.done">
|
|
<javac source="${javac.source}" target="${javac.target}" destdir="${dest}" deprecation="${deprecation}"
|
|
debug="${debug}" optimize="${optimize}" encoding="UTF-8"
|
|
includeAntRuntime="true">
|
|
<src path="batik-anim/src/main/java"/>
|
|
<src path="batik-awt-util/src/main/java"/>
|
|
<src path="batik-bridge/src/main/java"/>
|
|
<src path="batik-codec/src/main/java"/>
|
|
<src path="batik-constants/src/main/java"/>
|
|
<src path="batik-css/src/main/java"/>
|
|
<src path="batik-dom/src/main/java"/>
|
|
<src path="batik-ext/src/main/java"/>
|
|
<src path="batik-extension/src/main/java"/>
|
|
<src path="batik-gui-util/src/main/java"/>
|
|
<src path="batik-gvt/src/main/java"/>
|
|
<src path="batik-i18n/src/main/java"/>
|
|
<src path="batik-parser/src/main/java"/>
|
|
<!-- <src path="batik-rasterizer/src/main/java"/> -->
|
|
<!-- <src path="batik-rasterizer-ext/src/main/java"/> -->
|
|
<src path="batik-script/src/main/java"/>
|
|
<src path="batik-slideshow/src/main/java"/>
|
|
<!-- <src path="batik-squiggle/src/main/java"/> -->
|
|
<src path="batik-svg-dom/src/main/java"/>
|
|
<src path="batik-svgbrowser/src/main/java"/>
|
|
<src path="batik-svggen/src/main/java"/>
|
|
<src path="batik-svgpp/src/main/java"/>
|
|
<src path="batik-svgrasterizer/src/main/java"/>
|
|
<src path="batik-swing/src/main/java"/>
|
|
<src path="batik-transcoder/src/main/java"/>
|
|
<src path="batik-ttf2svg/src/main/java"/>
|
|
<src path="batik-util/src/main/java"/>
|
|
<src path="batik-xml/src/main/java"/>
|
|
<classpath refid="libs-classpath"/>
|
|
<exclude name="**/*.html"/>
|
|
<exclude name="**/rhino/*" unless="rhino.present"/>
|
|
<exclude name="**/jpython/*" unless="jpython.present"/>
|
|
<exclude name="**/jacl/*" unless="jacl.present"/>
|
|
<exclude name="${package-prefix}/ext/awt/image/codec/jpeg/*"
|
|
unless="sun-codecs.present"/>
|
|
<exclude name="${package-prefix}/ext/awt/image/codec/tiff/*"
|
|
unless="sun-codecs.present"/>
|
|
</javac>
|
|
<property name="compile.done" value="true"/>
|
|
</target>
|
|
|
|
<target name="clean-compile" depends="init"
|
|
description="Cleans the files generated by compile">
|
|
<delete dir="${dest}"/>
|
|
</target>
|
|
|
|
<target name="clean-apache" depends="init"
|
|
description="Cleans the Apache files generated by compile">
|
|
<delete dir="${dest}/org/apache"/>
|
|
</target>
|
|
|
|
<target name="clean-test" depends="init"
|
|
description="Cleans files generated by running tests">
|
|
<delete file="${samples}/tests/spec/scripting/security2.jar"/>
|
|
<delete file="${samples}/tests/spec/scripting/java-binding.jar"/>
|
|
<delete file="${samples}/anne.pdf"/>
|
|
<delete file="${samples}/anne.png"/>
|
|
<delete dir="${test-references}" includes="**/candidate-reference/**" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="**/candidate-reference" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="**/candidate-variation/**" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="**/candidate-variation" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="${package-prefix}/ext/awt/geom/candidate" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="${package-prefix}/ext/awt/geom/variation" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="${package-prefix}/gvt/candidate" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="${package-prefix}/gvt/variation" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="${package-prefix}/svggen/candidate-ref/**" includeemptydirs="true"/>
|
|
<delete dir="${test-references}" includes="${package-prefix}/transcoder/wmf/candidate/**" includeemptydirs="true"/>
|
|
<delete dir="${test-resources}" includes="**/JarCheckPermissions*.jar"/>
|
|
<delete file="${test-resources}/${package-prefix}/apps/rasterizer/invalidSVG.png"/>
|
|
<delete file="${test-resources}/${package-prefix}/bridge/IWasLoaded.jar"/>
|
|
<delete file="${test-resources}/${package-prefix}/bridge/IWasLoadedToo.jar"/>
|
|
<delete dir="${test-resources}/classes"/>
|
|
<delete dir="${samples}/tests/resources/java/classes"/>
|
|
<delete dir="${test-reports}"/>
|
|
</target>
|
|
|
|
|
|
<!-- Jars ............................................................... -->
|
|
<target name="prepare-build" depends="init, determine-svn-revision">
|
|
<mkdir dir="${build}"/>
|
|
<mkdir dir="${build}/docs"/>
|
|
<mkdir dir="${build}/lib"/>
|
|
</target>
|
|
|
|
<!-- Generates all the jars except all-jar -->
|
|
<target name="jars" depends="init">
|
|
<copy todir="${build}/lib">
|
|
<fileset dir="${lib}">
|
|
<include name="*.jar"/>
|
|
</fileset>
|
|
</copy>
|
|
<available file="batik-all/target/batik-all-${version}.jar" property="batik-all.exists" />
|
|
<fail message="Run 'mvn clean install' first" unless="batik-all.exists" />
|
|
<copy todir="${build}/lib" flatten="true">
|
|
<fileset dir=".">
|
|
<include name="*/target/*.jar"/>
|
|
<exclude name="*/target/batik-rasterizer-*.jar"/>
|
|
<exclude name="*/target/batik-slideshow-*.jar"/>
|
|
<exclude name="*/target/batik-squiggle-*.jar"/>
|
|
<exclude name="*/target/batik-svgpp-*.jar"/>
|
|
<exclude name="*/target/batik-ttf2svg-*.jar"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${build}/extensions" flatten="true">
|
|
<fileset dir=".">
|
|
<include name="*/target/batik-rasterizer-ext-*.jar"/>
|
|
<include name="*/target/batik-squiggle-ext-*.jar"/>
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${build}" flatten="true">
|
|
<fileset dir=".">
|
|
<include name="*/target/batik-rasterizer-${version}.jar"/>
|
|
<include name="*/target/batik-slideshow-${version}.jar"/>
|
|
<include name="*/target/batik-squiggle-${version}.jar"/>
|
|
<include name="*/target/batik-svgpp-${version}.jar"/>
|
|
<include name="*/target/batik-ttf2svg-${version}.jar"/>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
|
|
<!-- All batik in a single jar (dependencies: none) -->
|
|
<target name="all-jar" depends="init, copy-shared-resources, compile, prepare-build"
|
|
description="Creates a combined JAR file of the Batik libraries in ${build}/lib">
|
|
<jar jarfile="${build}/lib/${project}-all-${completeVersion}.jar">
|
|
<manifest>
|
|
<attribute name="Implementation-Title" value="Batik all-in-one JAR"/>
|
|
<attribute name="Implementation-Version" value="${completeVersion}"/>
|
|
<attribute name="Implementation-Vendor" value="${vendor}"/>
|
|
<attribute name="Build-Id" value="${build.id}"/>
|
|
<attribute name="Main-Class" value="${class-prefix}.apps.svgbrowser.Main"/>
|
|
</manifest>
|
|
<metainf dir="${basedir}" includes="LICENSE,NOTICE"/>
|
|
<fileset dir="${dest}" excludes="**/.svn/">
|
|
<include name="**"/>
|
|
</fileset>
|
|
</jar>
|
|
</target>
|
|
|
|
<!-- Applications ....................................................... -->
|
|
<target name="squiggle" depends="init, compile"
|
|
description="Runs Squiggle - the SVG browser">
|
|
<condition property="squiggle-suffix" value="osx" else="others">
|
|
<os name="Mac OS X"/>
|
|
</condition>
|
|
<antcall target="squiggle-${squiggle-suffix}" inheritRefs="true"/>
|
|
</target>
|
|
|
|
<target name="squiggle-osx" depends="appbundle">
|
|
<exec executable="open">
|
|
<arg value="${app}"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="squiggle-others">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.apps.svgbrowser.Main">
|
|
<!-- jvm="C:\Documents and Settings\<user>\.netbeans\4.0\modules\profiler-ea-vm\jre\bin\java"> -->
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<pathelement location="resources"/>
|
|
</classpath>
|
|
<arg line="${args}"/>
|
|
<!-- <jvmarg value="-Xmx512m"/> <jvmarg value="-Xms64m"/> -->
|
|
<!-- <jvmarg value="-Djava.security.debug=all"/>
|
|
<jvmarg value="-verbose"/> -->
|
|
<!--
|
|
<jvmarg value="-Djava.security.debug=access failure"/>
|
|
<jvmarg value="-Djava.security.debug=policy"/>
|
|
<jvmarg value="-Djava.security.manager"/>
|
|
<jvmarg value="-Djava.security.policy=resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.policy"/>
|
|
-->
|
|
</java>
|
|
</target>
|
|
|
|
<target name="svgbrowser" depends="squiggle"
|
|
description="Runs Squiggle - the SVG browser"/>
|
|
|
|
<target name="svgrasterizer" depends="init, compile"
|
|
description="Runs the SVG rasterizer">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.apps.rasterizer.Main">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<pathelement location="resources"/>
|
|
</classpath>
|
|
<!-- <jvmarg value="-Xmx512m"/> <jvmarg value="-Xms64m"/> -->
|
|
<!-- <jvmarg value="-Djava.awt.headless=true"/> -->
|
|
<arg line="${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="svgpp" depends="init, compile"
|
|
description="Runs the SVG pretty-printer">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.apps.svgpp.Main">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<pathelement location="resources"/>
|
|
</classpath>
|
|
<arg line="${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="testdirs" depends="init"
|
|
description="Created directories needed for test suite">
|
|
|
|
<mkdir dir="${test-reports}"/>
|
|
<mkdir dir="${test-reports}/style"/>
|
|
<mkdir dir="${test-reports}/images"/>
|
|
<copy todir="${test-reports}/style">
|
|
<fileset dir="${test-resources}/org/apache/batik/test/svg/resources/style"/>
|
|
</copy>
|
|
<copy todir="${test-reports}/images">
|
|
<fileset dir="${test-resources}/org/apache/batik/test/svg/resources/images"/>
|
|
</copy>
|
|
|
|
<mkdir dir="${test-references}/samples/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/coordinates/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/coordinates/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/fonts/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/fonts/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/masking/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/masking/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/paints/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/paints/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/shapes/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/shapes/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/styling/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/styling/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/color/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/color/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/filters/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/filters/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/linking/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/linking/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/painting/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/painting/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/rendering/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/rendering/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/structure/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/structure/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/text/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/text/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/interactivity/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/interactivity/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/scripting/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec/scripting/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/filters/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/filters/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/paints/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/paints/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/structure/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/structure/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/structure/opera/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/structure/opera/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/text/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/tests/spec12/text/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/extensions/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/extensions/candidate-reference"/>
|
|
<mkdir dir="${test-references}/samples/extensions/opera/candidate-variation"/>
|
|
<mkdir dir="${test-references}/samples/extensions/opera/candidate-reference"/>
|
|
<mkdir dir="${test-references}/svgbe/candidate-variation"/>
|
|
<mkdir dir="${test-references}/svgbe/candidate-reference"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/transcoder/wmf/candidate"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/svggen/candidate-ref"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/svggen/rendering/candidate-variation"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/svggen/rendering/candidate-reference"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/gvt/candidate"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/gvt/variation"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/ext/awt/geom/candidate"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/ext/awt/geom/variation"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/transcoder/image/candidate-reference"/>
|
|
<mkdir dir="${test-references}/org/apache/batik/transcoder/image/candidate-variation"/>
|
|
<mkdir dir="${test-references}/test-resources/org/apache/batik/test/svg/candidate-variation"/>
|
|
<mkdir dir="${test-references}/test-resources/org/apache/batik/test/svg/candidate-reference"/>
|
|
|
|
</target>
|
|
|
|
<target name="ttf2svg" depends="init, compile, testdirs"
|
|
description="converts selected glyphs from a True Type Font file to the SVG Font format">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.apps.ttf2svg.Main">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<pathelement location="resources"/>
|
|
</classpath>
|
|
<arg line="${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="regard" depends="init, compiletest, testdirs, testjars"
|
|
description="Runs test suite whose file or uri is passed as an input">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.test.xml.XMLTestSuiteRunner">
|
|
<!-- Using -Xincgc makes the memory leak tests _much_ more accurate but
|
|
Also slows down the regard run by 3-4x, In general I suggest running
|
|
just the memory leak tests with -Xincgc, I might also experiment with
|
|
a higher -Xms setting. -->
|
|
<!-- <jvmarg value="-Xincgc"/> -->
|
|
<!-- <jvmarg value="-Xrunhprof:format=b"/> -->
|
|
<!-- <jvmarg value="-Xrunhprof:net=localhost:1234,format=b"/> -->
|
|
<jvmarg value="-Xmx1024m"/> <jvmarg value="-Xms64m"/>
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
<pathelement location="resources"/>
|
|
<pathelement location="test-resources"/>
|
|
</classpath>
|
|
<arg line="test-resources/org/apache/batik/test/regard.xml ${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="regard.manual" depends="init, compiletest, testdirs, testjars"
|
|
description="Runs test suite whose file or uri is passed as an input">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.test.xml.XMLTestSuiteRunner">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
<pathelement location="resources"/>
|
|
<pathelement location="test-resources"/>
|
|
</classpath>
|
|
<arg line="test-resources/org/apache/batik/test/regardManual.xml ${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="showpainter" depends="init, compiletest, testdirs"
|
|
description="Runs test suite whose file or uri is passed as an input">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.svggen.JPainterCompare">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
<pathelement location="resources"/>
|
|
<pathelement location="test-resources"/>
|
|
</classpath>
|
|
<arg line="${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="runtestsuite" depends="init, compiletest, testdirs"
|
|
description="Runs test suite whose file or uri is passed as an input">
|
|
<mkdir dir="${test-reports}"/>
|
|
<java fork="yes"
|
|
classname="${class-prefix}.test.xml.XMLTestSuiteRunner">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
<pathelement location="resources"/>
|
|
<pathelement location="test-resources"/>
|
|
</classpath>
|
|
<arg line="${args}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="runtest" depends="init, compiletest, testdirs"
|
|
description="Runs test whose class name is passed as an input">
|
|
<java fork="yes"
|
|
classname="${args}">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
<pathelement location="resources"/>
|
|
<pathelement location="test-resources"/>
|
|
</classpath>
|
|
</java>
|
|
</target>
|
|
|
|
<!-- Documentation ...................................................... -->
|
|
<target name="html" depends="javadoc"
|
|
description="Generates the HTML documentation, including javadocs, in ${build}/docs/"/>
|
|
<target name="htmldoc" depends="init"
|
|
description="Generates HTML documentation">
|
|
<mkdir dir="${docs}"/>
|
|
<copy todir="${docs}">
|
|
<fileset dir="${forrest-build}/site" excludes="doap.rdf, download.cgi"/>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="site" depends="site-javadoc, sitedoc"/>
|
|
<target name="sitedoc" depends="init"
|
|
description="Generates the http://xmlgraphics.apache.org/batik/ site">
|
|
<mkdir dir="${site}"/>
|
|
<copy todir="${site}">
|
|
<fileset dir="${forrest-build}/site"/>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="site-javadoc" depends="init, javadoc">
|
|
<mkdir dir="${site}/javadoc"/>
|
|
<copy todir="${site}/javadoc">
|
|
<fileset dir="${docs}/javadoc"/>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="forrest" depends="init">
|
|
<property name="forrest-build.dir" value="${cwd}${file.separator}${forrest-build}"/>
|
|
<exec executable="${forrest.call}">
|
|
<arg line="${forrest.args}"/>
|
|
<arg value="-Dproject.build-dir=${forrest-build.dir}"/>
|
|
<arg value="-Dproject.temp-dir=${forrest-build.dir}${file.separator}tmp"/>
|
|
<arg value="-Dproject.webapp=${forrest-build.dir}${file.separator}webapp"/>
|
|
</exec>
|
|
<delete dir="${forrest-build}/tmp"/>
|
|
<!-- Ideally Forrest would put its log files in ${forrest-build}, but it
|
|
insists on creating a directory called 'build' for these. -->
|
|
<delete dir="build"/>
|
|
</target>
|
|
|
|
<target name="javadocs" depends="javadoc"/>
|
|
<target name="javadoc" depends="init">
|
|
<mkdir dir="${docs}/javadoc"/>
|
|
<javadoc packagenames="${class-prefix}.*,
|
|
org.xml.*,
|
|
org.w3c.css.*,
|
|
org.w3c.dom.*"
|
|
excludepackagenames="${javadoc-exclusions}"
|
|
maxmemory="512m"
|
|
failonerror="yes"
|
|
destdir="${docs}/javadoc"
|
|
encoding="UTF-8"
|
|
docencoding="UTF-8"
|
|
author="false"
|
|
version="false"
|
|
use="true"
|
|
splitindex="true"
|
|
windowtitle="${Project} Javadoc"
|
|
doctitle="${Project} API Specification ${completeVersion}"
|
|
bottom="Copyright © ${year} <a href='http://www.apache.org/'>Apache Software Foundation</a>. All Rights Reserved."
|
|
sourcepathref="source.files">
|
|
<arg value="-notimestamp"/>
|
|
<sourcepath path="${src}"/>
|
|
<classpath refid="libs-classpath"/>
|
|
<link href="${dom.javadoc}"/>
|
|
<link href="${jdk.javadoc}"/>
|
|
<link href="${rhino.javadoc}"/>
|
|
</javadoc>
|
|
</target>
|
|
|
|
<target name="prepare-publish" depends="init">
|
|
<mkdir dir="${site}"/>
|
|
<mkdir dir="${forrest-build}"/>
|
|
<exec executable="svn" dir="${site}" output="${forrest-build}/publish.info"
|
|
failonerror="false">
|
|
<arg value="info"/>
|
|
</exec>
|
|
<loadfile srcfile="${forrest-build}/publish.info" property="publish.info">
|
|
<filterchain>
|
|
<linecontains>
|
|
<contains value="URL:"/>
|
|
</linecontains>
|
|
<tokenfilter>
|
|
<replacestring from="URL: " to=""/>
|
|
</tokenfilter>
|
|
<striplinebreaks/>
|
|
</filterchain>
|
|
</loadfile>
|
|
<delete file="${forrest-build}/publish.info"/>
|
|
<condition property="publish-checkout-task" value="prepare-publish-up" else="prepare-publish-co">
|
|
<equals arg1="${publish.info}" arg2="${deploy.svn.url}"/>
|
|
</condition>
|
|
<antcall target="${publish-checkout-task}"/>
|
|
</target>
|
|
|
|
<target name="prepare-publish-up">
|
|
<exec executable="svn" dir="${site}" failonerror="true">
|
|
<arg value="update"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="prepare-publish-co">
|
|
<exec executable="svn" dir="." failonerror="true">
|
|
<arg value="checkout"/>
|
|
<arg value="${deploy.svn.url}"/>
|
|
<arg value="${site}"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="do-publish" depends="init">
|
|
<property name="deploy.svn.svn-filestoadd" location="${forrest-build}/publish.toadd"/>
|
|
<exec executable="svn" dir="${site}" output="${deploy.svn.svn-filestoadd}"
|
|
failonerror="true">
|
|
<arg value="status"/>
|
|
</exec>
|
|
<replace file="${deploy.svn.svn-filestoadd}" token="? " value=""/>
|
|
<replace file="${deploy.svn.svn-filestoadd}" token="M " value=""/>
|
|
<exec executable="svn" dir="${site}" failonerror="true">
|
|
<arg value="add"/>
|
|
<arg value="--targets"/>
|
|
<arg value="${deploy.svn.svn-filestoadd}"/>
|
|
</exec>
|
|
<exec executable="svn" dir="${site}" failonerror="true">
|
|
<arg value="commit"/>
|
|
<arg value="-m"/>
|
|
<arg value="Automatic publish"/>
|
|
</exec>
|
|
<delete file="${forrest-build}/publish.toadd}"/>
|
|
<echo message=""/>
|
|
<echo message="Site has been committed to .../repos/asf/xmlgraphics/site/deploy/batik/."/>
|
|
<echo message=""/>
|
|
<echo message="Don't forget to run 'svn up' from /www/xmlgraphics.apache.org/batik on"/>
|
|
<echo message="people.apache.org now."/>
|
|
</target>
|
|
|
|
<target name="publishdoc" depends="prepare-publish,sitedoc,do-publish"
|
|
description="Generates the http://xmlgraphics.apache.org/batik/ site without the javadocs and commits it to SVN"/>
|
|
|
|
<target name="publish" depends="prepare-publish,site,do-publish"
|
|
description="Generates the http://xmlgraphics.apache.org/batik/ site including the javadocs and commits it to SVN"/>
|
|
|
|
<target name="clean-docs" depends="init">
|
|
<delete dir="${forrest-build}"/>
|
|
<delete dir="${docs}"/>
|
|
<delete dir="${site}"/>
|
|
<delete dir="build"/> <!-- In case it's left behind by Forrest. -->
|
|
</target>
|
|
|
|
<!-- Generates splash screens for the browser ........................... -->
|
|
|
|
<target name="splash" depends="init, compile"
|
|
description="Updates browser splash screen">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.apps.rasterizer.Main">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<pathelement location="resources"/>
|
|
</classpath>
|
|
<arg line="${resources}/org/apache/batik/apps/svgbrowser/resources/squiggle.svg"/>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="jarDependImg" depends="init, compile"
|
|
description="Updates jarDependImg PNG">
|
|
<java fork="yes"
|
|
classname="${class-prefix}.apps.rasterizer.Main">
|
|
<classpath>
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<pathelement location="resources"/>
|
|
</classpath>
|
|
<arg line="documentation-sources/resources/images/jarDependImg.source.svg -d documentation-sources/resources/images/jarDependImg.png"/>
|
|
</java>
|
|
</target>
|
|
|
|
<!-- Cleans everything .................................................. -->
|
|
<target name="clean"
|
|
depends="init, clean-compile, clean-docs, clean-test, clean-shared-resources"
|
|
description="Cleans everything">
|
|
<delete dir="${build}"/>
|
|
<delete file="${project}-bin-${completeVersion}.zip"/>
|
|
<delete file="${project}-docs-${completeVersion}.zip"/>
|
|
<delete file="${project}-src-${completeVersion}.zip"/>
|
|
<delete file="${project}-bin-${completeVersion}.tar.gz"/>
|
|
<delete file="${project}-docs-${completeVersion}.tar.gz"/>
|
|
<delete file="${project}-src-${completeVersion}.tar.gz"/>
|
|
</target>
|
|
|
|
<target name="junit" depends="init, compiletest, testdirs">
|
|
<property name="junit.reports.dir" value="${build}/test-reports"/>
|
|
<path id="standard-junit-classpath">
|
|
<pathelement location="${dest}"/>
|
|
<path refid="libs-classpath"/>
|
|
<path refid="libs-build-classpath"/>
|
|
<pathelement location="resources"/>
|
|
<pathelement location="test-resources"/>
|
|
</path>
|
|
<mkdir dir="${junit.reports.dir}"/>
|
|
<junit dir="${basedir}" haltonfailure="yes" fork="true" forkmode="once" printsummary="yes" showoutput="true">
|
|
<sysproperty key="jawa.awt.headless" value="true"/>
|
|
<formatter type="brief" usefile="false"/>
|
|
<formatter type="plain" usefile="true"/>
|
|
<formatter type="xml" usefile="true"/>
|
|
<classpath>
|
|
<path refid="standard-junit-classpath"/>
|
|
</classpath>
|
|
<assertions>
|
|
<enable/>
|
|
</assertions>
|
|
<batchtest todir="${junit.reports.dir}">
|
|
<fileset dir="classes" includes="**/*TestCase.class"/>
|
|
</batchtest>
|
|
</junit>
|
|
</target>
|
|
|
|
<target name="checkstyle" depends="init" description="Runs Checkstyle for a code quality report">
|
|
<property name="checkstyle.location" value="lib/checkstyle-5.6-all.jar" />
|
|
<property name="checkstyle.config" value="checkstyle.xml" />
|
|
<path id="checkstyle-classpath">
|
|
<pathelement location="${checkstyle.location}"/>
|
|
</path>
|
|
<taskdef name="checkstyle" classname="com.puppycrawl.tools.checkstyle.CheckStyleTask" classpathref="checkstyle-classpath"/>
|
|
<mkdir dir="${build}"/>
|
|
<checkstyle config="${checkstyle.config}" failonviolation="true" maxWarnings="0">
|
|
<classpath>
|
|
<path refid="checkstyle-classpath"/>
|
|
</classpath>
|
|
<fileset dir="." includes="**/*.java"/>
|
|
<formatter type="xml" toFile="${build}/report_checkstyle.xml"/>
|
|
<formatter type="plain"/>
|
|
</checkstyle>
|
|
</target>
|
|
</project>
|