| <?xml version="1.0"?> |
| <?xml-stylesheet type="text/xsl" href="./tools/antipede/resources/stylesheets/layout.xsl"?> |
| |
| <!--<!DOCTYPE project SYSTEM "./tools/antipede/build.dtd" >--> |
| <!DOCTYPE project [ |
| <!-- antipede --> |
| <!ENTITY import-antipede SYSTEM "./tools/antipede/build.xtarget"> |
| |
| <!ELEMENT project ANY> |
| <!ATTLIST project default CDATA #REQUIRED |
| basedir CDATA #IMPLIED |
| name CDATA #IMPLIED> |
| |
| ]> |
| <project default="interactive" basedir="." name="project build file"> |
| |
| <description> |
| * ===================================== * |
| | Krysalis Centipede Build System | |
| * ===================================== * |
| by |
| |
| Nicola Ken Barozzi (nicolaken@apache.org) |
| Marc Johnson (mjohnson@apache.org) |
| |
| |
| For a simple interactive build, simply |
| run the build script (build.bar or build.sh) |
| </description> |
| |
| <!-- =================================================================== --> |
| <!-- Basic build targets for the project --> |
| <!-- =================================================================== --> |
| |
| <!-- =================================================================== --> |
| <!-- Interactive build --> |
| <!-- =================================================================== --> |
| <target name="interactive" description="Interactive Build" depends="-init"> |
| <echo> |
| -------------------------------------------------------------- |
| |
| ${xgump.module.project.name} ${xgump.module.project.version.major}.${xgump.module.project.version.minor} [${YEAR}] |
| |
| -------------------------------------------------------------- |
| Using ${ant.version} |
| Build file ${ant.file} |
| -------------------------------------------------------------- |
| These are the most common build targets. |
| You can also invoke them directly; see build.xml for more info. |
| Builds will be in /build directory, distributions in /dist. |
| |
| all -------------- creates the jars and the site |
| compile ---------- compiles the source code |
| test ------------- performs the jUnit tests |
| jar -------------- create the jar files |
| docs ------------- generates the html docs - clean not needed |
| javadocs --------- generates the API documentation |
| site ------------- generates the html site (docs+reports) |
| clean ------------ cleans the build directory |
| dist ------------- creates src and bin distributions |
| scratchpad ------- build-run scratchpad code |
| contrib ---------- build-run contributed code |
| generate-records - generate excel records |
| generate-types --- generate word types |
| |
| </echo> |
| <property name="input.selection" value="all"/> |
| <centipede-user-input name="input.selection">Please select a target </centipede-user-input> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="centipede"/> |
| <param name="cent-target" value="splash"/> |
| </antcall> |
| |
| <antcall target="${input.selection}"/> |
| |
| </target> |
| |
| |
| |
| <!-- =================================================================== --> |
| <!-- Interactive scratchpad builds --> |
| <!-- =================================================================== --> |
| <target name="scratchpad" depends="compile" description="Interactive Scratchpad Build"> |
| <echo> |
| -------------------------------------------------------------- |
| |
| ${xgump.module.project.name} ${xgump.module.project.version.major}.${xgump.module.project.version.minor} SCRATCHPAD |
| |
| -------------------------------------------------------------- |
| Building with ${ant.version} |
| using build file ${ant.file} |
| -------------------------------------------------------------- |
| |
| These are SCRATCHPAD BUILDS. They are not guaranteed to work. |
| You have been warned. |
| |
| - |
| - |
| - |
| - |
| - |
| - |
| |
| </echo> |
| <property name="input.selection" value=""/> |
| <centipede-user-input name="input.selection">Please select a target </centipede-user-input> |
| |
| <ant antfile="${xlayout.source.scratchpad.targets.dir}/${input.selection}/xbuild.xml"/> |
| |
| </target> |
| |
| <!-- =================================================================== --> |
| <!-- Interactive contrib builds --> |
| <!-- =================================================================== --> |
| <target name="contrib" depends="compile" description="Interactive Contributors' Build"> |
| <echo> |
| -------------------------------------------------------------- |
| |
| ${xgump.module.project.name} ${xgump.module.project.version.major}.${xgump.module.project.version.minor} CONTRIB |
| |
| -------------------------------------------------------------- |
| Building with ${ant.version} |
| using build file ${ant.file} |
| -------------------------------------------------------------- |
| |
| These are CONTRIB BUILDS. They are not guaranteed to work. |
| You have been warned. |
| |
| poibrowser - POIBrowser 0.10 GUI POI Viewer |
| - |
| - |
| - |
| - |
| - |
| |
| </echo> |
| |
| <property name="input.selection" value="poibrowser"/> |
| <centipede-user-input name="input.selection">Please select a target </centipede-user-input> |
| |
| <ant antfile="${xlayout.source.contributions.targets.dir}/${input.selection}/xbuild.xml"/> |
| |
| </target> |
| |
| |
| <!-- ================================== --> |
| <!-- Compile --> |
| <!-- ================================== --> |
| |
| <target name="compile" depends="-init" |
| description="Compile java source code"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="centipede"/> |
| <param name="cent-target" value="compile"/> |
| </antcall> |
| |
| </target> |
| |
| |
| <!-- ================================== --> |
| <!-- Build jars --> |
| <!-- ================================== --> |
| |
| <target name="jar" depends="-init" |
| description="Compile java source code"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="centipede"/> |
| <param name="cent-target" value="package"/> |
| </antcall> |
| |
| </target> |
| |
| <!-- ====================================== --> |
| <!-- dist target wo single build checks --> |
| <!-- ====================================== --> |
| |
| <target name="dist" depends="-init, clean, jar, site, test" |
| description="Build distribution packages wo single build checks"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="centipede"/> |
| <param name="cent-target" value="dist"/> |
| </antcall> |
| |
| </target> |
| |
| |
| <!-- ================================== --> |
| <!-- Clean build dir --> |
| <!-- ================================== --> |
| |
| <target name="clean" depends="-init" |
| description="Compile java source code"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="centipede"/> |
| <param name="cent-target" value="clean"/> |
| </antcall> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Run Junit tests --> |
| <!-- ================================== --> |
| |
| <target name="test" depends="-init, compile" |
| description="Compile java source code"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="junit"/> |
| <param name="cent-target" value="test"/> |
| </antcall> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="junit"/> |
| <param name="cent-target" value="report"/> |
| </antcall> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Generate project metrics --> |
| <!-- ================================== --> |
| |
| <target name="metrics" depends="-init, compile" |
| description="Generate project metrics"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="jdepend"/> |
| <param name="cent-target" value="jdepend-html"/> |
| </antcall> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="checkstyle"/> |
| <param name="cent-target" value="check"/> |
| </antcall> |
| |
| </target> |
| |
| |
| <!-- ================================== --> |
| <!-- Generates the documentation --> |
| <!-- ================================== --> |
| |
| <target name="docs" depends="-init" |
| description="Compile java source code"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="forrest"/> |
| <param name="cent-target" value="docs"/> |
| </antcall> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Generates the site --> |
| <!-- ================================== --> |
| |
| <target name="site" |
| description="Makes all the site doco" |
| depends="docs, |
| test, |
| javadocs, |
| metrics"/> |
| |
| |
| <!-- ================================== --> |
| <!-- Generates the java docs --> |
| <!-- ================================== --> |
| |
| <target name="javadocs" depends="-init" |
| description="Compile java source code"> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="centipede"/> |
| <param name="cent-target" value="javadocs"/> |
| </antcall> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="umldoclet"/> |
| <param name="cent-target" value="doclet"/> |
| </antcall> |
| |
| <antcall target="call-cent"> |
| <param name="cent-name" value="javasrc"/> |
| <param name="cent-target" value="javasrc"/> |
| </antcall> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Generate records --> |
| <!-- ================================== --> |
| |
| <target name="generate-records" depends="-init" |
| description="generate-records"> |
| |
| <ant antfile="${xlayout.source.targets.dir}/record-generation/xbuild.xml" |
| target="generate-records"/> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Generate types --> |
| <!-- ================================== --> |
| |
| <target name="generate-types" depends="-init" |
| description="generate-types"> |
| |
| <ant antfile="${xlayout.source.targets.dir}/record-generation/xbuild.xml" |
| target="generate-types"/> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Test the main module stuff --> |
| <!-- ================================== --> |
| |
| <target name="testmodule" |
| depends="clean, docs, compile, test, jar, metrics, javadocs" |
| description="Testing that all major targets work; useful before a commit"/> |
| |
| <!-- ================================== --> |
| <!-- Test the main module stuff 2 --> |
| <!-- ================================== --> |
| |
| <target name="testtargets" |
| description="Testing that all major targets work indipendently; useful before a commit"> |
| |
| <antcall target="clean"/> |
| <antcall target="compile"/> |
| <antcall target="clean"/> |
| <antcall target="test"/> |
| <antcall target="clean"/> |
| <antcall target="jar"/> |
| <antcall target="clean"/> |
| <antcall target="docs"/> |
| <antcall target="clean"/> |
| <antcall target="metrics"/> |
| <antcall target="clean"/> |
| <antcall target="javadocs"/> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Test 4 distribution --> |
| <!-- ================================== --> |
| |
| <target name="testall" depends="-init" |
| description="Make big full test"> |
| |
| <antcall target="gump"/> |
| <antcall target="dist"/> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Target used by Gump --> |
| <!-- ================================== --> |
| |
| <target name="gump" |
| depends="testmodule" |
| description="Target used by Gump"> |
| |
| <antcall target="testtargets"/> |
| <antcall target="testmodule"/> |
| <antcall target="all"/> |
| |
| </target> |
| |
| <!-- ================================== --> |
| <!-- Generate all --> |
| <!-- ================================== --> |
| |
| <target name="all" |
| depends="-init, jar, site" |
| description="Generate all"/> |
| |
| <!-- =================================================================== --> |
| <!-- Import Ant-Centipede -init targets - sets up basic build stuff --> |
| <!-- =================================================================== --> |
| <!-- |
| This is the target that initializes tasks and properties used |
| commonly in every other target. |
| |
| Remember to add depends="-init" to every target, so that this |
| target is called before any other. |
| |
| This target is internal; to make it unusable from the commandline, |
| its name starts with a hyphen. To make it invisible when |
| using -projecthelp, it lacks a description. |
| --> |
| |
| &import-antipede; |
| |
| </project> |