1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192
|
<project name="Antelope Master Build" basedir="." default="all">
<description>
Master build file for Antelope, calls other build files to do the actual
work:
build-plugin.xml, target name is "plugin"
build-app.xml, target name is "app"
build-source.xml, target name is "source"
build-tasks.xml, target name is "tasks"
The default target builds Antelope as a jEdit plugin. Call target "all"
to build all distribution files, call target "transform-docs" to build
the documentation prior to running any of the above.
</description>
<!-- ========================================================================
Property definition
========================================================================= -->
<!-- read build.props to override default property values set below -->
<property file="build.props"/>
<!-- source code directory, this is where the .java files live -->
<property name="src.dir" location="src" />
<!-- build directory, configuration and documentation files contained in
the src directory are copied to this directory for pre-processing (tag
substitution, mostly) -->
<property name="prep.dir" location="prep"/>
<!-- configuration directory, configuration files from the src directory are
copied here for pre-processing -->
<property name="config.dir" location="${prep.dir}/config" />
<!-- documentation directory, documentation files from the src directory are
copied here for pre-processing -->
<property name="doc.dir" location="${prep.dir}/docs" />
<!-- override with a local path to docbookx.dtd if disconnected -->
<property name="docbookx.dtd" value="http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"/>
<!-- directory for the compiled classes -->
<property name="classes.dir" location="classes" />
<!-- directory for the completed distribution files -->
<property name="dist.dir" location="dist" />
<!-- ========================================================================
Target: all
this target creates a complete set of distribution files
========================================================================= -->
<target name="all"
description="Build complete set of distribution files."
depends="clean,plugin,app,source,plugin-source,tasks"/>
<!-- ========================================================================
Target: clean
deletes all files from the dist directory
========================================================================= -->
<target name="clean" description="Delete all files from the dist directory.">
<delete failonerror="false">
<fileset dir="${dist.dir}">
<include name="**/*"/>
</fileset>
</delete>
</target>
<!-- ========================================================================
Target: plugin
this target creates the distribution file for the jEdit plugin
========================================================================= -->
<target name="plugin"
description="Build distribution file for jEdit plugin">
<ant antfile="build-plugin.xml"/>
</target>
<!-- ========================================================================
Target: app
this target creates the distribution file for the Antelope application
========================================================================= -->
<target name="app"
description="Build distribution file for Antelope application">
<ant antfile="build-app.xml"/>
</target>
<!-- ========================================================================
Target: source
this target creates the distribution file for the Antelope source code
========================================================================= -->
<target name="source"
description="Build distribution file for Antelope source.">
<ant antfile="build-source.xml"/>
</target>
<!-- ========================================================================
Target: plugin-source
this target creates the distribution file for the source code for the
Antelope plugin for jEdit
========================================================================= -->
<target name="plugin-source"
description="Build distribution file for Antelope plugin source.">
<ant antfile="build-plugin-src.xml"/>
</target>
<!-- ========================================================================
Target: tasks
this target creates the distribution file for the Antelope tasks
========================================================================= -->
<target name="tasks"
description="Build distribution file for Antelope tasks.">
<ant antfile="build-tasks.xml">
<target name="jar"/>
<target name="javadoc"/>
</ant>
</target>
<!-- ========================================================================
Target: transform-docs
converts the xml docbook formatted documentation into html and puts it
into the prep directory.
========================================================================= -->
<target name="transform-docs"
description="Create html documentation from xml source."
depends="init"
unless="docs.done">
<!-- first, remove any previous documentation files from the prep
directory -->
<delete>
<fileset dir="${doc.dir}" includes="manual/**/*" />
</delete>
<!-- copy the images and style sheets to the prep directory -->
<copy todir="${doc.dir}/manual">
<fileset dir="${src.dir}/docs/manual" includes="**/*.gif" />
<fileset dir="${src.dir}/docs/manual" includes="**/*.jpg" />
<fileset dir="${src.dir}/docs/manual" includes="**/*.css" />
</copy>
<property name="xsltproc.executable" value="/usr/bin/xsltproc"/>
<property name="user-doc.out" location="${doc.dir}/manual"/>
<property name="user-doc.xml" value="${src.dir}/docs/manual/userguide.xml"/>
<property name="user-doc.xsl" value="${src.dir}/docs/users-guide.xsl"/>
<property name="docbook.catalog" value="/etc/xml/catalog"/>
<exec executable="${xsltproc.executable}" dir="${user-doc.out}" failonerror="true">
<arg value="--nonet" />
<arg value="--output" />
<arg value="${user-doc.out}/manual" />
<arg value="--catalogs" />
<arg value="${user-doc.xsl}" />
<arg value="${user-doc.xml}" />
<env key="SGML_CATALOG_FILES" file="${docbook.catalog}" />
</exec>
</target>
<!-- ========================================================================
Target: run
this target runs Antelope as a stand-alone application using the compiled
classes
========================================================================= -->
<target name="run"
description="Run Antelope">
<ant antfile="build-app.xml" target="run"/>
</target>
<target name="test_deployment">
<echo>dist.dir = ${dist.dir}</echo>
<ant antfile="${src.dir}/test/antelope_deployment_suite.xml"
dir="${src.dir}/test"
inheritAll="true"/>
</target>
<!-- ========================================================================
Target: init
this target creates the directories needed for this project and
only needs to be done once.
========================================================================= -->
<target name="init"
description="Create directory structure."
unless="init.done">
<mkdir dir="${src.dir}" />
<mkdir dir="${classes.dir}" />
<mkdir dir="${prep.dir}"/>
<mkdir dir="${doc.dir}" />
<mkdir dir="${config.dir}" />
<mkdir dir="${dist.dir}"/>
<property name="init.done" value="true"/>
</target>
</project>
|