jedit build script
<?xml version="1.0"?>
<project name="jedit"
default="build">
<description>
This is an ant build.xml file for building jEdit - Programmer's Text Editor.
</description>
<property file="build.properties"
prefix="config" />
<!-- jEdit Version -->
<property name="jedit.version"
value="4.3.1" />
<property name="jedit.build.number"
value="04.03.99.01" />
<!-- Target Java Versions -->
<property name="target.java.version"
value="1.5" />
<property name="mac.target.java.version"
value="1.5+" />
<property name="slackware.target.java.version"
value="1_5_0_07-i586-1" />
<!-- Various Paths -->
<property name="config.build.dir"
value="build" />
<property name="config.dist.dir"
value="dist" />
<property name="build.dir"
location="${config.build.dir}" />
<property name="dist.dir"
location="${config.dist.dir}" />
<property name="classes.dir"
location="${build.dir}/classes" />
<property name="jar.location"
location="${build.dir}" />
<property name="textAreaPackage" location="../textarea" />
<!-- Various Filenames -->
<property name="jar.filename"
value="${ant.project.name}.jar" />
<property name="dist.jar.filename"
value="jedit${jedit.version}install.jar" />
<property name="manual.filename.prefix"
value="jedit${jedit.version}manual-" />
<property name="src.archive.filename"
value="jedit${jedit.version}source.tar.bz2" />
<property name="win.filename"
value="jedit${jedit.version}install" />
<property name="mac.disk.image.filename"
value="jedit${jedit.version}install.dmg" />
<!-- Miscellaneous -->
<property name="config.build.debuglevel"
value="lines,vars,source" />
<property name="config.build.deprecation"
value="true" />
<property name="config.build.compilerarg"
value="-Xlint:unchecked" />
<!-- Cygwin detection (xsltproc needs special arguments) -->
<dirname property="xsltproc.dir" file="${config.xsltproc.executable}" />
<available file="${xsltproc.dir}/cygcheck.exe" property="xsltproc.cygwin" />
<condition property="xsltproc.cygwin.arg" value="--path /usr/share/docbook-xsl/html/" else="">
<isset property="xsltproc.cygwin" />
</condition>
<target name="init"
unless="init.done">
<echo message="Buildfile for ${ant.project.name} (${ant.file})"
level="info" />
<fail message="The ant-optional package is needed for jEdit to build, please install it and rerun">
<condition>
<not>
<available classname="org.apache.tools.ant.taskdefs.optional.depend.Depend" />
</not>
</condition>
</fail>
<property name="init.done"
value="true" />
</target>
<target name="clean"
depends="init"
description="clean up intermediate files">
<delete includeemptydirs="true"
failonerror="false">
<fileset dir="${build.dir}/classes" />
<fileset dir="${dist.dir}/classes" />
<fileset dir="doc"
includes="docbook-wrapper-*.xsl" />
</delete>
</target>
<target name="clean-all"
depends="init"
description="clean up build.dir and dist.dir completely">
<delete includeemptydirs="true"
failonerror="false">
<fileset dir="${build.dir}" />
<fileset dir="${dist.dir}" />
<fileset dir="${textAreaPackage}/build" />
<fileset dir="doc"
includes="docbook-wrapper-*.xsl" />
</delete>
</target>
<target name="compile"
depends="init">
<mkdir dir="${classes.dir}/core" />
<depend srcDir="."
destDir="${classes.dir}/core"
cache="${classes.dir}" />
<javac srcdir="."
destdir="${classes.dir}/core"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern"
encoding="UTF-8">
<include name="org/**" />
<include name="com/**" />
<compilerarg line="${config.build.compilerarg}" />
</javac>
</target>
<target name="prepare-textArea"
depends="init">
<delete includeemptydirs="true"
failonerror="false">
<fileset dir="${textAreaPackage}/src"/>
</delete>
<mkdir dir="${textAreaPackage}/src" />
<copy todir="${textAreaPackage}/src">
<fileset dir=".">
<include name="modes/*"/>
<include name="org/gjt/sp/jedit/bsh/*"/>
<include name="org/gjt/sp/jedit/bsh/**/*"/>
<include name="org/gjt/sp/jedit/buffer/BufferAdapter.java"/>
<include name="org/gjt/sp/jedit/buffer/BufferListener.java"/>
<include name="org/gjt/sp/jedit/buffer/BufferSegment.java"/>
<include name="org/gjt/sp/jedit/buffer/ContentManager.java"/>
<include name="org/gjt/sp/jedit/buffer/DefaultFoldHandlerProvider.java"/>
<include name="org/gjt/sp/jedit/buffer/DummyFoldHandler.java"/>
<include name="org/gjt/sp/jedit/buffer/ExplicitFoldHandler.java"/>
<include name="org/gjt/sp/jedit/buffer/FoldHandler.java"/>
<include name="org/gjt/sp/jedit/buffer/FoldHandlerProvider.java"/>
<include name="org/gjt/sp/jedit/buffer/IndentFoldHandler.java"/>
<include name="org/gjt/sp/jedit/buffer/JEditBuffer.java"/>
<include name="org/gjt/sp/jedit/buffer/KillRing.java"/>
<include name="org/gjt/sp/jedit/buffer/LineManager.java"/>
<include name="org/gjt/sp/jedit/buffer/PositionManager.java"/>
<include name="org/gjt/sp/jedit/buffer/UndoManager.java"/>
<include name="org/gjt/sp/jedit/gui/KeyEventTranslator.java"/>
<include name="org/gjt/sp/jedit/gui/KeyEventWorkaround.java"/>
<include name="org/gjt/sp/jedit/gui/MutableListModel.java"/>
<include name="org/gjt/sp/jedit/gui/ShortcutPrefixActiveEvent.java"/>
<include name="org/gjt/sp/jedit/gui/HistoryModel.java"/>
<include name="org/gjt/sp/jedit/gui/HistoryModelSaver.java"/>
<include name="org/gjt/sp/jedit/indent/*.java"/>
<include name="org/gjt/sp/jedit/input/AbstractInputHandler.java"/>
<include name="org/gjt/sp/jedit/input/DefaultInputHandlerProvider.java"/>
<include name="org/gjt/sp/jedit/input/InputHandlerProvider.java"/>
<include name="org/gjt/sp/jedit/input/TextAreaInputHandler.java"/>
<include name="org/gjt/sp/jedit/syntax/*.java"/>
<include name="org/gjt/sp/jedit/syntax/xmode.dtd"/>
<include name="org/gjt/sp/jedit/textarea/Anchor.java"/>
<include name="org/gjt/sp/jedit/textarea/AntiAlias.java"/>
<include name="org/gjt/sp/jedit/textarea/BufferHandler.java"/>
<include name="org/gjt/sp/jedit/textarea/ChunkCache.java"/>
<include name="org/gjt/sp/jedit/textarea/DisplayManager.java"/>
<include name="org/gjt/sp/jedit/textarea/ExtensionManager.java"/>
<include name="org/gjt/sp/jedit/textarea/FastRepaintManager.java"/>
<include name="org/gjt/sp/jedit/textarea/FirstLine.java"/>
<include name="org/gjt/sp/jedit/textarea/FoldPainter.java"/>
<include name="org/gjt/sp/jedit/textarea/Gutter.java"/>
<include name="org/gjt/sp/jedit/textarea/GutterPopupHandler.java"/>
<include name="org/gjt/sp/jedit/textarea/InputMethodSupport.java"/>
<include name="org/gjt/sp/jedit/textarea/MouseActions.java"/>
<include name="org/gjt/sp/jedit/textarea/MouseActionsProvider.java"/>
<include name="org/gjt/sp/jedit/textarea/RangeMap.java"/>
<include name="org/gjt/sp/jedit/textarea/Selection.java"/>
<include name="org/gjt/sp/jedit/textarea/SelectionManager.java"/>
<include name="org/gjt/sp/jedit/textarea/ScreenLineManager.java"/>
<include name="org/gjt/sp/jedit/textarea/ScrollLayout.java"/>
<include name="org/gjt/sp/jedit/textarea/ScrollLineCount.java"/>
<include name="org/gjt/sp/jedit/textarea/ScrollListener.java"/>
<include name="org/gjt/sp/jedit/textarea/StandaloneTextArea.java"/>
<include name="org/gjt/sp/jedit/textarea/StatusListener.java"/>
<include name="org/gjt/sp/jedit/textarea/StructureMatcher.java"/>
<include name="org/gjt/sp/jedit/textarea/TextArea.java"/>
<include name="org/gjt/sp/jedit/textarea/TextAreaBorder.java"/>
<include name="org/gjt/sp/jedit/textarea/TextAreaDropHandler.java"/>
<include name="org/gjt/sp/jedit/textarea/TextAreaException.java"/>
<include name="org/gjt/sp/jedit/textarea/TextAreaExtension.java"/>
<include name="org/gjt/sp/jedit/textarea/TextAreaMouseHandler.java"/>
<include name="org/gjt/sp/jedit/textarea/TextAreaPainter.java"/>
<include name="org/gjt/sp/jedit/textarea/textarea.actions.xml"/>
<include name="org/gjt/sp/jedit/textarea/TriangleFoldPainter.java"/>
<include name="org/gjt/sp/jedit/ActionListHandler.java"/>
<include name="org/gjt/sp/jedit/BeanShellFacade.java"/>
<include name="org/gjt/sp/jedit/Debug.java"/>
<include name="org/gjt/sp/jedit/IPropertyManager.java"/>
<include name="org/gjt/sp/jedit/JEditAbstractEditAction.java"/>
<include name="org/gjt/sp/jedit/JEditActionSet.java"/>
<include name="org/gjt/sp/jedit/JEditActionContext.java"/>
<include name="org/gjt/sp/jedit/JEditBeanShellAction.java"/>
<include name="org/gjt/sp/jedit/Mode.java"/>
<include name="org/gjt/sp/jedit/OperatingSystem.java"/>
<include name="org/gjt/sp/jedit/RegistersListener.java"/>
<include name="org/gjt/sp/jedit/RegistersListener.java"/>
<include name="org/gjt/sp/jedit/Registers.java"/>
<include name="org/gjt/sp/jedit/RegisterSaver.java"/>
<include name="org/gjt/sp/jedit/SelectionManager.java"/>
<include name="org/gjt/sp/jedit/TextUtilities.java"/>
<include name="org/gjt/sp/jedit/TextUtilities.java"/>
<include name="org/gjt/sp/jedit/actions.dtd"/>
<include name="org/gjt/sp/jedit/jedit.props"/>
<include name="org/gjt/sp/jedit/jedit_keys.props"/>
<include name="modes/*"/>
<include name="org/gjt/sp/util/Log*.java"/>
<include name="org/gjt/sp/util/IntegerArray.java"/>
<include name="org/gjt/sp/util/IOUtilities.java"/>
<include name="org/gjt/sp/util/ProgressObserver.java"/>
<include name="org/gjt/sp/util/SegmentCharSequence.java"/>
<include name="org/gjt/sp/util/StandardUtilities.java"/>
<include name="org/gjt/sp/util/SyntaxUtilities.java"/>
<include name="org/gjt/sp/util/XMLUtilities.java"/>
</fileset>
</copy>
</target>
<target name="compile-textArea"
depends="init,prepare-textArea">
<mkdir dir="${textAreaPackage}/build" />
<javac srcdir="${textAreaPackage}/src"
destdir="${textAreaPackage}/build"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern"
encoding="UTF-8">
</javac>
</target>
<target name="build"
depends="init,compile"
description="build the jEdit JAR-file with full debug-information">
<mkdir dir="${jar.location}" />
<jar destfile="${jar.location}/${jar.filename}"
basedir="${classes.dir}/core"
compress="false"
manifest="org/gjt/sp/jedit/jedit.manifest"
duplicate="fail"
index="true">
<fileset dir=".">
<include name="org/gjt/sp/jedit/bsh/commands/*.bsh" />
<include name="org/gjt/sp/jedit/**/*.dtd" />
<include name="org/gjt/sp/jedit/default.abbrevs" />
<include name="org/gjt/sp/jedit/*.props" />
<include name="org/gjt/sp/jedit/*.xml" />
<include name="org/gjt/sp/jedit/textarea/*.xml" />
<include name="org/gjt/sp/jedit/icons/**/*.gif" />
<include name="org/gjt/sp/jedit/icons/**/*.jpg" />
<include name="org/gjt/sp/jedit/icons/**/*.png" />
</fileset>
</jar>
<copy todir="${jar.location}">
<fileset dir=".">
<include name="macros/**" />
<include name="modes/**" />
<include name="properties/**" />
<include name="startup/**" />
</fileset>
</copy>
</target>
<target name="build-textArea"
depends="init,compile-textArea"
description="build the textArea JAR-file with full debug-information">
<mkdir dir="${jar.location}" />
<jar destfile="${jar.location}/${ant.project.name}-textArea.jar"
compress="false"
duplicate="fail"
index="true">
<fileset dir="${textAreaPackage}/build/" />
<fileset dir="${textAreaPackage}/src">
<include name="org/gjt/sp/jedit/textarea/*.xml"/>
<include name="org/gjt/sp/jedit/syntax/xmode.dtd"/>
<include name="org/gjt/sp/jedit/actions.dtd"/>
<include name="org/gjt/sp/jedit/jedit.props"/>
<include name="org/gjt/sp/jedit/jedit_keys.props"/>
<include name="modes/*"/>
</fileset>
<manifest>
<attribute name="Main-Class" value="org.gjt.sp.jedit.textarea.StandaloneTextArea"/>
</manifest>
</jar>
</target>
<target name="run"
depends="init,build"
description="run jEdit">
<java jar="${jar.location}/${jar.filename}"
fork="true"
spawn="true"
maxmemory="192M">
<arg value="-settings=${build.dir}/settings" />
</java>
</target>
<target name="run-debug"
depends="init,build"
description="run jEdit with debug listening enabled">
<java jar="${jar.location}/${jar.filename}"
fork="true"
spawn="true"
maxmemory="192M">
<jvmarg value="-agentlib:jdwp=transport=dt_socket,server=y,address=localhost:5005,timeout=60000" />
<arg value="-settings=${build.dir}/settings" />
</java>
</target>
<target name="generate-docbook-wrapper"
if="format"
depends="init">
<fail message="Please set the "docbook.xsl" in build.properties"
unless="config.docbook.xsl" />
<pathconvert property="absolute-stylesheet"
dirsep="/">
<path location="${config.docbook.xsl}/${stylesheet}" />
</pathconvert>
<echo message="<?xml version="1.0"?>${line.separator}"
file="doc/docbook-wrapper-${format}.xsl"
level="error" />
<echo message="<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"${line.separator}"
file="doc/docbook-wrapper-${format}.xsl"
append="true"
level="error" />
<echo message=" version="1.0">${line.separator}"
file="doc/docbook-wrapper-${format}.xsl"
append="true"
level="error" />
<echo message=" <xsl:import href="file:///${absolute-stylesheet}" />${line.separator}"
file="doc/docbook-wrapper-${format}.xsl"
append="true"
level="error" />
<echo message="</xsl:stylesheet>${line.separator}"
file="doc/docbook-wrapper-${format}.xsl"
append="true"
level="error" />
</target>
<target name="generate-doc-faq"
depends="init"
if="doc.output.location"
unless="faq.is.up.to.date">
<fail message="Please set the "xsltproc.executable" in build.properties"
unless="config.xsltproc.executable" />
<mkdir dir="${doc.output.location}/FAQ" />
<exec executable="${config.xsltproc.executable}"
dir="doc"
failonerror="true">
<arg line="${xsltproc.cygwin.arg}" />
<arg value="--output" />
<arg value="../${doc.output.location}/FAQ/" />
<arg value="jedithtml.xsl" />
<arg value="FAQ/faq.xml" />
</exec>
</target>
<target name="generate-doc-news"
depends="init"
if="doc.output.location"
unless="news.is.up.to.date">
<fail message="Please set the "xsltproc.executable" in build.properties"
unless="config.xsltproc.executable" />
<mkdir dir="${doc.output.location}/news43" />
<exec executable="${config.xsltproc.executable}"
dir="doc"
failonerror="true">
<arg line="${xsltproc.cygwin.arg}" />
<arg value="--output" />
<arg value="../${doc.output.location}/news43/" />
<arg value="jedithtml.xsl" />
<arg value="news43/news.xml" />
</exec>
</target>
<target name="generate-doc-users-guide"
depends="init"
if="doc.output.location"
unless="users-guide.is.up.to.date">
<fail message="Please set the "xsltproc.executable" in build.properties"
unless="config.xsltproc.executable" />
<mkdir dir="${doc.output.location}/users-guide" />
<exec executable="${config.xsltproc.executable}"
dir="doc"
failonerror="true">
<arg line="${xsltproc.cygwin.arg}" />
<arg value="--output" />
<arg value="../${doc.output.location}/users-guide/" />
<arg value="jedithtml.xsl" />
<arg value="users-guide/users-guide.xml" />
</exec>
</target>
<target name="userdocs"
depends="init,docs-html,docs-javadoc"
description="generate HTML and JavaDoc API docs (needs xsltproc)" />
<target name="docs-upload"
depends="userdocs"
description="upload generated documentation to public website (needs xsltproc and rsync)" >
<fail message="Please set the "rsync.executable" in build.properties"
unless="config.rsync.executable" />
<exec executable="${config.rsync.executable}"
dir="${jar.location}/doc/"
failonerror="true">
<arg value="-avz" />
<arg value="api" />
<arg value="FAQ" />
<arg value="users-guide" />
<arg value="plugins.jedit.org:/home/groups/j/je/jedit/htdocs/" />
</exec>
</target>
<target name="docs-html"
depends="init"
description="generate HTML docs (needs xsltproc)">
<antcall target="generate-docbook-wrapper">
<param name="format"
value="html" />
<param name="stylesheet"
value="html/chunk.xsl" />
</antcall>
<pathconvert property="doc.output.location"
dirsep="/">
<path location="${jar.location}/doc" />
<globmapper from="${basedir}/*"
to="*"
handledirsep="true" />
</pathconvert>
<dependset>
<srcfileset dir="doc/FAQ" />
<targetfileset dir="${doc.output.location}/FAQ" />
</dependset>
<available property="faq.is.up.to.date"
file="${doc.output.location}/FAQ/toc.xml"
type="file" />
<antcall target="generate-doc-faq" />
<dependset>
<srcfileset dir="doc/news43" />
<targetfileset dir="${doc.output.location}/news43" />
</dependset>
<available property="news.is.up.to.date"
file="${doc.output.location}/news43/toc.xml"
type="file" />
<antcall target="generate-doc-news" />
<dependset>
<srcfileset dir="doc/users-guide" />
<targetfileset dir="${doc.output.location}/users-guide" />
</dependset>
<available property="users-guide.is.up.to.date"
file="${doc.output.location}/users-guide/toc.xml"
type="file" />
<antcall target="generate-doc-users-guide" />
<delete file="doc/docbook-wrapper-html.xsl"
failonerror="false" />
<copy todir="${doc.output.location}">
<fileset dir="doc">
<include name="*.txt" />
<include name="*.html" />
<include name="*.png" />
<include name="tips/**" />
</fileset>
</copy>
</target>
<target name="generate-javadoc"
depends="init"
unless="javadoc.is.up.to.date">
<mkdir dir="${classes.dir}/javadoc" />
<javac srcdir="."
destdir="${classes.dir}/javadoc"
includes="doclet/**"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern">
<compilerarg line="${config.build.compilerarg}" />
</javac>
<javadoc sourcepath="."
destdir="${classes.dir}/javadoc/api"
packagenames="org.*,com.*"
classpath="${classes.dir}/core"
doclet="doclet.GenerateTocXML"
docletpath="${classes.dir}/javadoc"
version="true"
use="true"
author="true"
splitindex="true"
locale="en"
windowtitle="jEdit API"
doctitle="jEdit API"
failonerror="true"
source="${target.java.version}">
<group title="jEdit"
packages="org.gjt.sp*" />
<group title="Microstar XML Parser"
packages="com.microstar.xml*" />
</javadoc>
</target>
<target name="docs-javadoc"
depends="init"
description="generate JavaDoc API docs">
<dependset>
<srcfileset dir=".">
<include name="doclet/**/*.java" />
<include name="org/**/*.java" />
<include name="org/**/package.html" />
<include name="com/**/*.java" />
<include name="com/**/package.html" />
</srcfileset>
<targetfileset dir="${classes.dir}/javadoc" />
</dependset>
<available property="javadoc.is.up.to.date"
file="${classes.dir}/javadoc/api/toc.xml"
type="file" />
<antcall target="generate-javadoc" />
<copy todir="${jar.location}/doc">
<fileset dir="${classes.dir}/javadoc"
includes="api/**"
excludes="api/**/*.html" />
</copy>
<copy todir="${jar.location}/doc">
<fileset dir="${classes.dir}/javadoc"
includes="api/**/*.html" />
<filterchain>
<tokenfilter>
<replacestring from="<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev">"
to="<TD BGCOLOR="#00008B" CLASS="NavBarCell1Rev">" />
</tokenfilter>
<tokenfilter>
<filetokenizer />
<replaceregex pattern="(<SCRIPT type="text/javascript">.*?</SCRIPT>|onload=".*?")"
flags="gs" />
</tokenfilter>
</filterchain>
</copy>
</target>
<target name="generate-pdf-users-guide"
depends="init"
if="paper.type"
unless="pdf-users-guide.is.up.to.date">
<fail message="Please set the "xsltproc.executable" in build.properties"
unless="config.xsltproc.executable" />
<fail message="Please set the "fop.dir" in build.properties"
unless="config.fop.dir" />
<antcall target="generate-docbook-wrapper">
<param name="format"
value="fo" />
<param name="stylesheet"
value="fo/docbook.xsl" />
</antcall>
<pathconvert property="docs-pdf.classes.dir"
dirsep="/">
<path location="${classes.dir}/docs-pdf" />
<globmapper from="${basedir}/*"
to="*"
handledirsep="true" />
</pathconvert>
<mkdir dir="${docs-pdf.classes.dir}" />
<exec executable="${config.xsltproc.executable}"
dir="doc"
failonerror="true">
<arg line="${xsltproc.cygwin.arg}" />
<arg value="--stringparam" />
<arg value="paper.type" />
<arg value=""${paper.type}"" />
<arg value="--output" />
<arg value="../${docs-pdf.classes.dir}/${manual.filename.prefix}${manual.filename.paper.type}.fot" />
<arg value="jeditfo.xsl" />
<arg value="users-guide/users-guide.xml" />
</exec>
<delete file="doc/docbook-wrapper-fo.xsl"
failonerror="false" />
<taskdef name="fop"
classname="org.apache.fop.tools.anttasks.Fop"
classpath="${config.fop.dir}/build/fop.jar">
<classpath>
<fileset dir="${config.fop.dir}/lib"
includes="*.jar" />
</classpath>
</taskdef>
<fop fofile="${docs-pdf.classes.dir}/${manual.filename.prefix}${manual.filename.paper.type}.fot"
outfile="${jar.location}/${manual.filename.prefix}${manual.filename.paper.type}.pdf"
format="application/pdf"
messagelevel="info" />
</target>
<target name="docs-pdf"
depends="init"
if="paper.type">
<condition property="manual.filename.paper.type"
value="a4">
<equals arg1="A4"
arg2="${paper.type}" />
</condition>
<condition property="manual.filename.paper.type"
value="letter"
else="${paper.type}">
<equals arg1="USletter"
arg2="${paper.type}" />
</condition>
<dependset>
<srcfileset dir="doc/users-guide" />
<targetfilelist dir="${classes.dir}/docs-pdf"
files="${manual.filename.prefix}${manual.filename.paper.type}.fot" />
<targetfilelist dir="${jar.location}"
files="${manual.filename.prefix}${manual.filename.paper.type}.pdf" />
</dependset>
<available property="pdf-users-guide.is.up.to.date"
file="${jar.location}/${manual.filename.prefix}${manual.filename.paper.type}.pdf"
type="file" />
<antcall target="generate-pdf-users-guide" />
</target>
<target name="docs-pdf-a4"
depends="init"
description="generate PDF users-guide with A4 paper size (needs xsltproc and fop)">
<antcall target="docs-pdf">
<param name="paper.type"
value="A4" />
</antcall>
</target>
<target name="docs-pdf-USletter"
depends="init"
description="generate PDF users-guide with US letter paper size (needs xsltproc and fop)">
<antcall target="docs-pdf">
<param name="paper.type"
value="USletter" />
</antcall>
</target>
<target name="compile-installer"
depends="init">
<mkdir dir="${classes.dir}/installer" />
<depend srcDir="."
destDir="${classes.dir}/installer"
cache="${classes.dir}" />
<javac srcdir="."
destdir="${classes.dir}/installer"
includes="installer/**"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern">
<compilerarg line="${config.build.compilerarg}" />
</javac>
</target>
<target name="compile-default-plugins-for-dist"
depends="init">
<ant dir="jars/LatestVersion"
target="dist"
inheritAll="false">
<property name="jedit.install.dir"
value="${dist.dir}" />
</ant>
<ant dir="jars/LatestVersion"
target="clean"
inheritAll="false">
<property name="jedit.install.dir"
value="${dist.dir}" />
</ant>
<ant dir="jars/QuickNotepad"
target="dist"
inheritAll="false">
<property name="jedit.install.dir"
value="${dist.dir}" />
</ant>
<ant dir="jars/QuickNotepad"
target="clean"
inheritAll="false">
<property name="jedit.install.dir"
value="${dist.dir}" />
</ant>
<ant dir="jars/MacOSX"
target="dist"
inheritAll="false">
<property name="jedit.install.dir"
value="${dist.dir}" />
</ant>
<ant dir="jars/MacOSX"
target="clean"
inheritAll="false">
<property name="jedit.install.dir"
value="${dist.dir}" />
</ant>
</target>
<target name="dist-java"
depends="init"
description="build the Java-installer">
<antcall target="prepare-dist-files" />
<tar destfile="${dist.dir}/jedit-macros.tar.bz2"
compression="bzip2">
<tarfileset id="jedit-macros"
dir="${dist.dir}"
includes="macros/**" />
</tar>
<tar destfile="${dist.dir}/jedit-program.tar.bz2"
compression="bzip2">
<tarfileset id="jedit-program"
dir="${dist.dir}"
includes="doc/**
jars/LatestVersion.jar
jars/QuickNotepad.jar
modes/**
properties/**
startup/**
${jar.filename}"
excludes="doc/api/**" />
</tar>
<tar destfile="${dist.dir}/jedit-mac.tar.bz2"
compression="bzip2">
<tarfileset id="jedit-mac"
dir="${dist.dir}"
includes="jars/MacOSX.jar" />
</tar>
<tar destfile="${dist.dir}/jedit-api.tar.bz2"
compression="bzip2">
<tarfileset id="jedit-api"
dir="${dist.dir}"
includes="doc/api/**" />
</tar>
<tar destfile="${dist.dir}/jedit-os2.tar.bz2"
compression="bzip2">
<tarfileset id="jedit-os2"
dir="package-files/os2"
includes="jedit.cmd" />
</tar>
<antcall target="compile-installer">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
</antcall>
<antcall target="compile-calculatesize">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
</antcall>
<taskdef name="calculatesize"
classname="de.masters_of_disaster.ant.tasks.calculatesize.CalculateSize"
classpath="${dist.dir}/classes/calculatesize" />
<calculatesize realsizeproperty="jedit-macros.realsize"
disksizeproperty="jedit-macros.disksize">
<fileset refid="jedit-macros" />
</calculatesize>
<calculatesize realsizeproperty="jedit-program.realsize"
disksizeproperty="jedit-program.disksize">
<fileset refid="jedit-program" />
</calculatesize>
<calculatesize realsizeproperty="jedit-mac.realsize"
disksizeproperty="jedit-mac.disksize">
<fileset refid="jedit-mac" />
</calculatesize>
<calculatesize realsizeproperty="jedit-api.realsize"
disksizeproperty="jedit-api.disksize">
<fileset refid="jedit-api" />
</calculatesize>
<calculatesize realsizeproperty="jedit-os2.realsize"
disksizeproperty="jedit-os2.disksize">
<fileset refid="jedit-os2" />
</calculatesize>
<copy todir="${dist.dir}/classes/installer/installer"
overwrite="true">
<fileset file="installer/install.props" />
<filterset>
<filter token="jedit.version"
value="${jedit.version}" />
<filter token="jedit-macros.realsize"
value="${jedit-macros.realsize}" />
<filter token="jedit-macros.disksize"
value="${jedit-macros.disksize}" />
<filter token="jedit-program.realsize"
value="${jedit-program.realsize}" />
<filter token="jedit-program.disksize"
value="${jedit-program.disksize}" />
<filter token="jedit-mac.realsize"
value="${jedit-mac.realsize}" />
<filter token="jedit-mac.disksize"
value="${jedit-mac.disksize}" />
<filter token="jedit-api.realsize"
value="${jedit-api.realsize}" />
<filter token="jedit-api.disksize"
value="${jedit-api.disksize}" />
<filter token="jedit-os2.realsize"
value="${jedit-os2.realsize}" />
<filter token="jedit-os2.disksize"
value="${jedit-os2.disksize}" />
</filterset>
</copy>
<jar destfile="${dist.dir}/${dist.jar.filename}"
basedir="${dist.dir}/classes/installer"
compress="true"
manifest="installer/install.mf"
duplicate="fail"
index="true">
<fileset dir=".">
<include name="installer/*.html" />
</fileset>
<fileset dir="${dist.dir}/classes/package-files/linux">
<include name="jedit.1" />
</fileset>
<zipfileset dir="${dist.dir}"
includes="jedit-api.tar.bz2
jedit-mac.tar.bz2
jedit-macros.tar.bz2
jedit-os2.tar.bz2
jedit-program.tar.bz2"
prefix="installer" />
</jar>
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="dist-manuals"
depends="init"
description="build the PDF-manuals">
<antcall target="docs-pdf-a4">
<param name="classes.dir"
location="${dist.dir}/classes" />
<param name="jar.location"
location="${dist.dir}" />
</antcall>
<antcall target="docs-pdf-USletter">
<param name="classes.dir"
location="${dist.dir}/classes" />
<param name="jar.location"
location="${dist.dir}" />
</antcall>
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="dist-src"
depends="init"
description="build the src-archive">
<mkdir dir="${dist.dir}" />
<tar destfile="${dist.dir}/${src.archive.filename}"
compression="bzip2">
<tarfileset dir="."
excludes="${config.build.dir}/**
${config.dist.dir}/**
**/build.properties
doc/docbook-wrapper-*.xsl"
prefix="jEdit/" />
<tarfileset dir="../build-support"
prefix="build-support/" />
</tar>
</target>
<target name="compile-jarbundler"
depends="init">
<mkdir dir="${classes.dir}/jarbundler" />
<depend srcDir="."
destDir="${classes.dir}/jarbundler"
cache="${classes.dir}" />
<javac srcdir="."
destdir="${classes.dir}/jarbundler"
includes="net/**"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="1.4"
target="1.4"
compiler="modern">
<compilerarg line="${config.build.compilerarg}" />
</javac>
</target>
<target name="dist-mac-finish"
depends="init"
unless="build.on.non.mac"
description="finish building the Mac OS X disk image (DMG-file) on Mac OS X">
<fail message="The disk image (DMG-file) for easy distribution on Mac OS X can only be built on Mac OS X currently">
<condition>
<not>
<os family="mac" />
</not>
</condition>
</fail>
<taskdef name="jarbundler"
classname="net.sourceforge.jarbundler.JarBundler"
classpath="${dist.dir}/classes/jarbundler" />
<tstamp>
<format property="current.year"
pattern="yyyy" />
</tstamp>
<mkdir dir="${dist.dir}/classes/mac" />
<jarbundler dir="${dist.dir}/classes/mac"
name="jEdit"
mainclass="org.gjt.sp.jedit.jEdit"
jar="${dist.dir}/${jar.filename}"
arguments="-background"
build="${jedit.build.number}"
bundleid="org.gjt.sp.jedit"
extraclasspath="/System/Library/Java"
icon="icons/icon.icns"
infostring="jEdit ${jedit.version}, Copyright © 1998-${current.year} Contributors"
jvmversion="${mac.target.java.version}"
shortname="jEdit"
signature="JESP"
stubfile="jedit"
version="${jedit.version}"
vmoptions="-Xmx192M">
<javaproperty name="apple.awt.antialiasing" value="true" />
<javaproperty name="apple.awt.textantialiasing" value="true" />
<javaproperty name="apple.laf.useScreenMenuBar" value="true" />
<!-- Comented due https://sourceforge.net/tracker/?func=detail&atid=100588&aid=2820535&group_id=588 discussion -->
<!--javaproperty name="apple.awt.graphics.UseQuartz" value="true" />
<javaproperty name="apple.awt.rendering" value="speed" /-->
<javafileset dir="${dist.dir}"
includes="doc/**
jars/**
macros/**
modes/**
properties/**
startup/**" />
<documenttype name="jEdit TEXT Document"
extensions="*"
ostypes="TEXT ****"
iconfile="icons/file.icns"
role="Editor" />
<service message="openFile"
menuitem="jEdit/Open Files"
sendtypes="NSStringPboardType,NSFilenamesPboardType" />
<service message="insertSelection"
menuitem="jEdit/Insert Text"
sendtypes="NSStringPboardType" />
<service message="openSelection"
menuitem="jEdit/New Buffer with Text"
sendtypes="NSStringPboardType" />
</jarbundler>
<delete file="${dist.dir}/${mac.disk.image.filename}"
failonerror="false" />
<exec executable="hdiutil"
failonerror="true">
<arg value="create" />
<arg value="-quiet" />
<arg value="-volname" />
<arg value="jEdit ${jedit.version}" />
<arg value="-srcfolder" />
<arg file="${dist.dir}/classes/mac/jEdit.app" />
<arg file="${dist.dir}/${mac.disk.image.filename}" />
</exec>
<exec executable="hdiutil"
failonerror="true">
<arg value="internet-enable" />
<arg value="-quiet" />
<arg file="${dist.dir}/${mac.disk.image.filename}" />
</exec>
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="prepare-dist-mac-finish"
depends="init"
if="build.on.non.mac">
<tar destfile="${dist.dir}/jedit${jedit.version}-dist-mac-finish.tar.bz2"
basedir="."
includes="build.xml
icons/file.icns
icons/icon.icns
${config.dist.dir}/${jar.filename}
${config.dist.dir}/classes/jarbundler/**
${config.dist.dir}/doc/**
${config.dist.dir}/jars/**
${config.dist.dir}/macros/**
${config.dist.dir}/modes/**
${config.dist.dir}/properties/**
${config.dist.dir}/startup/**"
compression="bzip2" />
</target>
<target name="dist-mac"
depends="init"
description="build the Mac OS X disk image (DMG-file)">
<antcall target="prepare-dist-files" />
<antcall target="compile-jarbundler">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
</antcall>
<condition property="build.on.non.mac">
<not>
<os family="mac" />
</not>
</condition>
<antcall target="dist-mac-finish">
<param name="config.dont.wipe.dist.files"
value="true" />
</antcall>
<antcall target="prepare-dist-mac-finish" />
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="prepare-dist-files"
depends="init">
<antcall target="build">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
<param name="jar.location"
location="${dist.dir}" />
</antcall>
<antcall target="docs-html">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
<param name="jar.location"
location="${dist.dir}" />
</antcall>
<antcall target="docs-javadoc">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
<param name="jar.location"
location="${dist.dir}" />
</antcall>
<antcall target="compile-default-plugins-for-dist" />
<copy todir="${dist.dir}/classes/package-files"
overwrite="true">
<fileset dir="package-files" />
<filterset>
<filter token="jar.filename"
value="${jar.filename}" />
<filter token="jedit.version"
value="${jedit.version}" />
<filter token="jedit.build.number"
value="${jedit.build.number}" />
<filter token="slackware.target.java.version"
value="${slackware.target.java.version}" />
</filterset>
</copy>
<gzip src="${dist.dir}/classes/package-files/linux/jedit.1"
destfile="${dist.dir}/classes/package-files/linux/jedit.1.gz" />
</target>
<target name="dist-slackware"
depends="init"
description="build the Slackware Package">
<antcall target="prepare-dist-files" />
<tar destfile="${dist.dir}/jedit-${jedit.version}-noarch-1sao.tgz"
compression="gzip">
<tarfileset file="."
username="root"
group="root"
fullpath="./" />
<tarfileset dir="${dist.dir}/classes/package-files/linux/slackware"
includes="doinst.sh
slack-desc
slack-required"
username="root"
group="root"
prefix="install/" />
<tarfileset file="${dist.dir}/classes/package-files/linux/jedit"
mode="755"
username="root"
group="bin"
fullpath="usr/bin/jedit" />
<tarfileset dir="${dist.dir}/doc"
includes="*.txt"
username="root"
group="root"
prefix="usr/doc/jedit-${jedit.version}/" />
<tarfileset file="${dist.dir}/classes/package-files/linux/jedit.1.gz"
username="root"
group="root"
fullpath="usr/man/man1/jedit.1.gz" />
<tarfileset file="${dist.dir}/classes/package-files/linux/slackware/jEdit.desktop"
username="root"
group="root"
fullpath="usr/share/applications/jEdit.desktop" />
<tarfileset dir="${dist.dir}"
includes="doc/**
jars/LatestVersion.jar
jars/QuickNotepad.jar
macros/**
modes/**
properties/**
startup/**
${jar.filename}"
username="root"
group="root"
prefix="usr/share/jedit-${jedit.version}/" />
<tarfileset dir="icons"
includes="jedit-file48.png
jedit-icon48.png"
username="root"
group="root"
prefix="usr/share/pixmaps/" />
</tar>
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="compile-ar"
depends="init">
<mkdir dir="${classes.dir}/ar" />
<depend srcDir="."
destDir="${classes.dir}/ar"
cache="${classes.dir}" />
<javac srcdir="."
destdir="${classes.dir}/ar"
includes="de/masters_of_disaster/ant/tasks/ar/**"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern">
<compilerarg line="${config.build.compilerarg}" />
</javac>
</target>
<target name="compile-deb"
depends="init">
<mkdir dir="${classes.dir}/deb" />
<depend srcDir="."
destDir="${classes.dir}/deb"
cache="${classes.dir}" />
<javac srcdir="."
destdir="${classes.dir}/deb"
includes="de/masters_of_disaster/ant/tasks/deb/**"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern">
<compilerarg line="${config.build.compilerarg}" />
</javac>
</target>
<target name="compile-calculatesize"
depends="init">
<mkdir dir="${classes.dir}/calculatesize" />
<depend srcDir="."
destDir="${classes.dir}/calculatesize"
cache="${classes.dir}" />
<javac srcdir="."
destdir="${classes.dir}/calculatesize"
includes="de/masters_of_disaster/ant/tasks/calculatesize/**"
debug="true"
debuglevel="${config.build.debuglevel}"
deprecation="${config.build.deprecation}"
source="${target.java.version}"
target="${target.java.version}"
compiler="modern">
<compilerarg line="${config.build.compilerarg}" />
</javac>
</target>
<target name="dist-deb"
depends="init"
description="build the DEB Package">
<antcall target="prepare-dist-files" />
<antcall target="compile-ar">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
</antcall>
<antcall target="compile-deb">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
</antcall>
<taskdef name="deb"
classname="de.masters_of_disaster.ant.tasks.deb.Deb"
classpath="${dist.dir}/classes/deb" />
<antcall target="compile-calculatesize">
<param name="config.build.debuglevel"
value="lines,source" />
<param name="classes.dir"
location="${dist.dir}/classes" />
</antcall>
<taskdef name="calculatesize"
classname="de.masters_of_disaster.ant.tasks.calculatesize.CalculateSize"
classpath="${dist.dir}/classes/calculatesize" />
<calculatesize realsizeproperty="deb.installed.size">
<fileset dir="${dist.dir}/doc"
includes="*.txt" />
<fileset dir="${dist.dir}"
includes="classes/package-files/linux/jedit
classes/package-files/linux/deb/jedit
classes/package-files/linux/deb/jedit.desktop
classes/package-files/linux/jedit.1.gz
doc/**
jars/LatestVersion.jar
jars/QuickNotepad.jar
macros/**
modes/**
properties/**
startup/**
${jar.filename}" />
</calculatesize>
<copy todir="${dist.dir}/classes/package-files/linux/deb"
overwrite="true">
<fileset file="package-files/linux/deb/control" />
<filterset>
<filter token="jedit.build.number"
value="${jedit.build.number}" />
<filter token="deb.installed.size"
value="${deb.installed.size}" />
</filterset>
</copy>
<deb destfile="${dist.dir}/jedit_${jedit.version}_all.deb"
tempDir="${dist.dir}/classes/deb"
deleteTempFiles="false"
includeMd5sums="true">
<controlfileset file="${dist.dir}/classes/package-files/linux/deb/control" />
<controlfileset dir="${dist.dir}/classes/package-files/linux/deb"
includes="postinst
postrm"
mode="755" />
<datafileset file="."
fullpath="usr/" />
<datafileset file="."
fullpath="usr/bin/" />
<datafileset file="${dist.dir}/classes/package-files/linux/jedit"
fullpath="usr/bin/jedit"
mode="755" />
<datafileset file="."
fullpath="usr/lib/" />
<datafileset file="."
fullpath="usr/lib/menu/" />
<datafileset file="${dist.dir}/classes/package-files/linux/deb/jedit"
fullpath="usr/lib/menu/jedit" />
<datafileset file="."
fullpath="usr/share/" />
<datafileset file="."
fullpath="usr/share/applications/" />
<datafileset file="${dist.dir}/classes/package-files/linux/deb/jedit.desktop"
fullpath="usr/share/applications/jedit.desktop" />
<datafileset file="."
fullpath="usr/share/doc/" />
<datafileset file="."
fullpath="usr/share/doc/jEdit/" />
<datafileset dir="${dist.dir}/doc"
includes="*.txt"
prefix="usr/share/doc/jEdit/" />
<datafileset file="."
fullpath="usr/share/jEdit/" />
<datafileset dir="${dist.dir}"
includes="doc/**
macros/**
modes/**
properties/**
startup/**
${jar.filename}"
prefix="usr/share/jEdit/" />
<datafileset file="."
fullpath="usr/share/jEdit/jars/" />
<datafileset dir="${dist.dir}/jars"
includes="LatestVersion.jar
QuickNotepad.jar"
prefix="usr/share/jEdit/jars/" />
<datafileset file="."
fullpath="usr/share/man/" />
<datafileset file="."
fullpath="usr/share/man/man1/" />
<datafileset file="${dist.dir}/classes/package-files/linux/jedit.1.gz"
fullpath="usr/share/man/man1/jedit.1.gz" />
</deb>
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="dist-win-finish"
depends="init"
unless="build.on.non.win"
description="finish building the Windows installer (EXE-file) on Windows">
<fail message="The Windows installer (EXE-file) can only be built on Windows currently">
<condition>
<not>
<os family="windows" />
</not>
</condition>
</fail>
<fail message="Please set the innosetup.compiler.executable in build.properties"
unless="config.innosetup.compiler.executable" />
<tstamp>
<format property="current.year"
pattern="yyyy" />
</tstamp>
<copy todir="${dist.dir}/classes/package-files/windows"
overwrite="true">
<fileset file="package-files/windows/win32installer.iss" />
<filterset>
<filter token="jar.filename"
value="${jar.filename}" />
<filter token="jedit.version"
value="${jedit.version}" />
<filter token="jedit.build.number"
value="${jedit.build.number}" />
<filter token="win.filename"
value="${win.filename}" />
<filter token="dist.dir"
value="${dist.dir}" />
<filter token="base.dir"
value="${basedir}" />
<filter token="current.year"
value="${current.year}" />
</filterset>
</copy>
<exec executable="${config.innosetup.compiler.executable}"
failonerror="true">
<arg file="${dist.dir}/classes/package-files/windows/win32installer.iss" />
</exec>
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="prepare-dist-win-finish"
depends="init"
if="build.on.non.win">
<tar destfile="${dist.dir}/jedit${jedit.version}-dist-win-finish.tar.bz2"
basedir="."
includes="build.xml
icons/jedit.ico
icons/WindowsInstallerSmallImage.bmp
icons/WindowsInstallerImage.bmp
package-files/windows/win32installer.iss
${config.dist.dir}/${jar.filename}
${config.dist.dir}/classes/package-files/windows/**
${config.dist.dir}/doc/**
${config.dist.dir}/jars/LatestVersion.jar
${config.dist.dir}/jars/QuickNotepad.jar
${config.dist.dir}/macros/**
${config.dist.dir}/modes/**
${config.dist.dir}/properties/**
${config.dist.dir}/startup/**"
compression="bzip2" />
</target>
<target name="dist-win"
depends="init"
description="build the Windows installer (EXE-file)">
<antcall target="prepare-dist-files" />
<condition property="build.on.non.win">
<not>
<os family="windows" />
</not>
</condition>
<antcall target="dist-win-finish">
<param name="config.dont.wipe.dist.files"
value="true" />
</antcall>
<antcall target="prepare-dist-win-finish" />
<condition property="wipe.dist.files">
<not>
<isset property="config.dont.wipe.dist.files" />
</not>
</condition>
<antcall target="dist-cleanup" />
</target>
<target name="dist"
depends="init"
description="build all distribution files">
<property name="config.dont.wipe.dist.files"
value="true" />
<antcall target="dist-java" />
<antcall target="dist-manuals" />
<antcall target="dist-src" />
<antcall target="dist-slackware" />
<antcall target="dist-deb" />
<antcall target="dist-mac" />
<antcall target="dist-win" />
<property name="wipe.dist.files"
value="true" />
<antcall target="dist-cleanup" />
</target>
<target name="dist-cleanup"
depends="init">
<delete includeemptydirs="true">
<fileset dir="${dist.dir}">
<selector if="wipe.dist.files">
<or>
<filename name="macros/**" />
<filename name="doc/**" />
<filename name="jars/**" />
<filename name="modes/**" />
<filename name="properties/**" />
<filename name="startup/**" />
<filename name="${jar.filename}" />
<and>
<filename name="*.tar.bz2" />
<filename name="${src.archive.filename}"
negate="true" />
<filename name="jedit${jedit.version}-dist-mac-finish.tar.bz2"
negate="true" />
<filename name="jedit${jedit.version}-dist-win-finish.tar.bz2"
negate="true" />
</and>
<filename name="classes/**" />
</or>
</selector>
</fileset>
</delete>
</target>
</project>
Related examples in the same category