diff options
Diffstat (limited to 'java')
| -rw-r--r-- | java/build.xml | 229 | ||||
| -rw-r--r-- | java/common.xml | 30 | ||||
| -rw-r--r-- | java/module.xml | 12 |
3 files changed, 141 insertions, 130 deletions
diff --git a/java/build.xml b/java/build.xml index 8aa4fda67f..5c8ef33e36 100644 --- a/java/build.xml +++ b/java/build.xml @@ -20,93 +20,93 @@ --> <project name="AMQ Java" default="build"> - <import file="common.xml"/> - - <property file="build.properties"/> - <property name="modules.extra" value=""/> - <property name="modules.client" value="common,client"/> - <property name="modules" - value="${modules.client},broker,broker/test,client/test,cluster,systests,${modules.extra}"/> - - <property name="release.fullversion" value="${build.release.version}-${build.release.name}-${build.release.tag}"/> - - <macrodef name="iterate"> - <attribute name="target"/> - <attribute name="modules" default="${modules}"/> - <element name="elements" implicit="true" optional="true"/> - <sequential> - <subant target="@{target}" antfile="build-module.xml"> - <filelist dir="." files="@{modules}"/> - <elements/> - </subant> - </sequential> - </macrodef> - - <target name="build" description="compile java source code for each module"> - <iterate target="build"/> - </target> - - <target name="test" description="execute unit tests"> - <iterate target="test"/> - </target> - - <target name="testreport" description="execute unit tests and produce reports"> - <iterate target="testreport"/> - </target> - - <target name="doc" description="produce javadoc for each module"> - <iterate target="doc"/> - </target> - - <target name="jar" - description="create java class file archives for each module"> - <iterate target="jar"/> - </target> - - <target name="dist" - description="copy each module's files into a single distribution tree"> - <iterate target="dist"/> - <iterate target="dist-lib" modules="${modules.client}"> - <property name="dist.dir" value="${dist.client.dir}"/> - </iterate> - </target> - - <target name="clean" description="remove all build artifacts"> - <iterate target="clean"/> - <delete dir="${build.dir}"/> - <delete dir="${release.dir}"/> - </target> - - <property name="client.includes" value="*/client/**"/> - - <target name="zip" depends="dist" - description="produce a zip archive of the distribution tree"> - <zip basedir="${dist.root}" destfile="${build.zip}"/> - <zip basedir="${dist.root}" destfile="${client.zip}" - includes="${client.includes}"/> - </target> - - <target name="tar" depends="dist" - description="produce a tar archive of the distribution tree"> - <tar basedir="${dist.root}" destfile="${build.tar}"/> - <tar basedir="${dist.root}" destfile="${client.tar}" - includes="${client.includes}"/> - </target> - - <target name="gzip" depends="tar" - description="produce a gzipped tarball of the distribution tree"> - <gzip src="${build.tar}" destfile="${build.tgz}"/> - <gzip src="${client.tar}" destfile="${client.tgz}"/> - </target> - - <target name="bzip2" depends="tar" - description="produze a bzipped tarball of the distribution tree"> - <bzip2 src="${build.tar}" destfile="${build.bz2}"/> - <bzip2 src="${client.tar}" destfile="${client.bz2}"/> - </target> - - <target name="archive" depends="zip,gzip,bzip2" - description="produce all archive formats of the distribution tree"/> + <import file="common.xml"/> + + <property file="build.properties"/> + <property name="modules.extra" value=""/> + <property name="modules.client" value="common,client"/> + <property name="modules" + value="${modules.client},broker,broker/test,client/test,cluster,systests,${modules.extra}"/> + + <property name="release.fullversion" value="${build.release.version}-${build.release.name}-${build.release.tag}"/> + + <macrodef name="iterate"> + <attribute name="target"/> + <attribute name="modules" default="${modules}"/> + <element name="elements" implicit="true" optional="true"/> + <sequential> + <subant target="@{target}" antfile="build-module.xml"> + <filelist dir="." files="@{modules}"/> + <elements/> + </subant> + </sequential> + </macrodef> + + <target name="build" description="compile java source code for each module"> + <iterate target="build"/> + </target> + + <target name="test" description="execute unit tests"> + <iterate target="test"/> + </target> + + <target name="testreport" description="execute unit tests and produce reports"> + <iterate target="testreport"/> + </target> + + <target name="doc" description="produce javadoc for each module"> + <iterate target="doc"/> + </target> + + <target name="jar" + description="create java class file archives for each module"> + <iterate target="jar"/> + </target> + + <target name="dist" + description="copy each module's files into a single distribution tree"> + <iterate target="dist"/> + <iterate target="dist-lib" modules="${modules.client}"> + <property name="dist.dir" value="${dist.client.dir}"/> + </iterate> + </target> + + <target name="clean" description="remove all build artifacts"> + <iterate target="clean"/> + <delete dir="${build.root.dir}"/> + <delete dir="${release.dir}"/> + </target> + + <property name="client.includes" value="*/client/**"/> + + <target name="zip" depends="dist" + description="produce a zip archive of the distribution tree"> + <zip basedir="${dist.root}" destfile="${build.zip}"/> + <zip basedir="${dist.root}" destfile="${client.zip}" + includes="${client.includes}"/> + </target> + + <target name="tar" depends="dist" + description="produce a tar archive of the distribution tree"> + <tar basedir="${dist.root}" destfile="${build.tar}"/> + <tar basedir="${dist.root}" destfile="${client.tar}" + includes="${client.includes}"/> + </target> + + <target name="gzip" depends="tar" + description="produce a gzipped tarball of the distribution tree"> + <gzip src="${build.tar}" destfile="${build.tgz}"/> + <gzip src="${client.tar}" destfile="${client.tgz}"/> + </target> + + <target name="bzip2" depends="tar" + description="produze a bzipped tarball of the distribution tree"> + <bzip2 src="${build.tar}" destfile="${build.bz2}"/> + <bzip2 src="${client.tar}" destfile="${client.bz2}"/> + </target> + + <target name="archive" depends="zip,gzip,bzip2" + description="produce all archive formats of the distribution tree"/> <target name="preparerelease"> <mkdir dir="${release.dir}"/> @@ -159,12 +159,12 @@ <param name="todir" value="${release.java.src.dir}"/> </antcall> - <copy todir="${release.java.src.dir}"> + <copy todir="${release.java.src.dir}"> <fileset dir="${project.root}"> <include name="${tasks.dir}/${src.dir}/**"/> <include name="${doc.dir}/**"/> </fileset> - </copy> + </copy> <copy todir="${release.java.src.dir}"> <fileset dir="${project.root}"> @@ -193,7 +193,6 @@ </copy> - <!-- Copy Spec files for protocol generation --> <copy todir="${release.src.dir}"> <fileset dir=".." casesensitive="false"> @@ -211,13 +210,16 @@ <target name="copyreleasedocs"> <!-- Copy Various Txt files to prepare directory --> <copy todir="${todir}"> + <fileset dir="release-docs"> <include name="RELEASE_NOTES.txt"/> </fileset> + <fileset dir="${project.root}"> <include name="README.txt"/> <include name="NOTICE.txt"/> </fileset> + <fileset dir="${resources.root.dir}/META-INF"> <include name="DISCLAIMER.txt"/> </fileset> @@ -237,17 +239,18 @@ <!-- Find all the license files--> <fileset dir="${fromdir}" id="license.files"> - <include name="**/${lib.dir}/**/license*"/> + <include name="**/license*"/> </fileset> <!-- Path to use to remove from the start of the license file name --> - <path path="${todir}${file.separator}" id="release.prepare.dir.id" /> + <path path="${todir}${file.separator}" id="release.prepare.dir.id"/> <!-- Convert this path to use the platform file separator \ or / --> <pathconvert refid="release.prepare.dir.id" property="release.prepare.path" dirsep="${file.separator}"/> <!-- For each of the license files remove the release prepare path--> - <pathconvert refid="license.files" id="licenses.convert.path.id" property="licenses.convert" pathsep="${line.separator}" > + <pathconvert refid="license.files" id="licenses.convert.path.id" property="licenses.convert" + pathsep="${line.separator}"> <map from="${release.prepare.path}${file.separator}" to=''/> </pathconvert> @@ -274,7 +277,7 @@ </zip> </target> - <target name="std-src-release-old" > + <target name="std-src-release-old"> <!-- Setup the local variables --> <property name="release.src.name" value="${project.name}-java-${release.fullversion}-src"/> @@ -299,24 +302,28 @@ <property name="release.src.name" value="${project.name}-java-${release.fullversion}-src"/> <property name="build.release.src.dir" value="${build.release}/${release.src.name}"/> + <!-- Ensure there is nothing in our target bin dir --> + <delete dir="${build.release.src.dir}"/> + <mkdir dir="${build.release.src.dir}"/> + <copy todir="${build.release.src.dir}"> <fileset dir="${project.root}/.."> - <!--All source files --> - <include name="java/**"/> + <!--All source files --> <include name="specs/**"/> + <include name="java/**"/> - <!--exclude files --> + <!--exclude files --> <exclude name="**/.svn/**"/> <exclude name="java/${build.dir}/**"/> <exclude name="java/${release.dir}/**"/> </fileset> </copy> + <!-- Copy release docs to root of release --> <antcall target="copyreleasedocs"> <param name="todir" value="${build.release.src.dir}"/> </antcall> - <antcall target="tgzandzip"> <param name="file" value="${release.dir}/${release.src.name}"/> @@ -346,20 +353,20 @@ modules.include i.e. ${modules.client} release.libsonly determines what task to run on the iterate normally dist but if libs only then dist-lib --> - <target name="std-bin-release-item" depends="preparerelease"> + <target name="std-bin-release-item" depends="preparerelease"> - <!-- if modules.include has not been set set it to all modules--> - <property name="modules.include" value="${modules}"/> + <!-- if modules.include has not been set set it to all modules--> + <property name="modules.include" value="${modules}"/> - <!-- Set the type of dist to do. Normally it is dist but if we are doing a libs only then set dist-lib --> - <condition property="disttype" value="dist-lib" else="dist"> - <isset property="release.libsonly"/> - </condition> + <!-- Set the type of dist to do. Normally it is dist but if we are doing a libs only then set dist-lib --> + <condition property="disttype" value="dist-lib" else="dist"> + <isset property="release.libsonly"/> + </condition> - <!-- If the module content has been specified then use then set that value--> - <condition property="module.release.suffix" value="-bin-${module.content}" else=""> - <isset property="module.content"/> - </condition> + <!-- If the module content has been specified then use then set that value--> + <condition property="module.release.suffix" value="-bin-${module.content}" else=""> + <isset property="module.content"/> + </condition> <!-- Setup the local variables --> <property name="release.bin.name" value="${project.name}-java-${release.fullversion}${module.release.suffix}"/> @@ -367,9 +374,11 @@ <property name="module.jar.prefix" value="${project.name}-"/> <property name="module.jar.suffix" value="-${release.fullversion}"/> + <!-- Ensure there is nothing in our target bin dir --> + <delete dir="${release.bin.dir}"/> <mkdir dir="${release.bin.dir}"/> - <iterate target="${disttype}" modules="${modules.include}" > + <iterate target="${disttype}" modules="${modules.include}"> <property name="module.prefix" value="${module.jar.prefix}"/> <property name="module.suffix" value="${module.jar.suffix}"/> <property name="dist.dest.dir" value="${release.bin.dir}"/> diff --git a/java/common.xml b/java/common.xml index 9e25bd96e4..0a6430220b 100644 --- a/java/common.xml +++ b/java/common.xml @@ -25,7 +25,6 @@ <property name="project.version" value="0.9"/> <property name="project.namever" value="${project.name}-${project.version}"/> <property name="client.namever" value="${project.name}-client-${project.version}"/> - <property name="build.dir" value="${project.root}/build"/> <property name="specs.dir" value="specs"/> @@ -43,6 +42,7 @@ <property name="tasks.dir" value="tasks"/> <property name="metainf.dir" value="META-INF"/> <property name="release.dir" value="release"/> + <property name="build.dir" value="build"/> <property name="resources.dir" value="resources"/> <property name="stylesheets.dir" value="stylesheets"/> <property name="releasedocs.dir" value="release-docs"/> @@ -50,10 +50,12 @@ <property name="launcher.sfx" value="-launch.jar"/> <property name="release.root.dir" value="${project.root}/${release.dir}"/> - <property name="resources.root.dir" value="${project.root}/${resources.dir}"/> + <property name="resources.root.dir" value="${project.root}/${resources.dir}"/> + <property name="build.root.dir" value="${project.root}/${build.dir}"/> + <property name="release.root.dir" value="${project.root}/${release.dir}"/> - <property name="dist.root" value="${build.dir}/dist"/> + <property name="dist.root" value="${build.root.dir}/dist"/> <property name="dist.dir" value="${dist.root}/${project.namever}"/> <property name="dist.client.dir" value="${dist.dir}/client"/> <property name="dist.bin" value="${dist.dir}/${bin.dir}"/> @@ -66,19 +68,19 @@ <property name="module.file" value="module.xml"/> <property name="common.file" value="common.xml"/> <property name="build.properties.file" value="build.properties"/> - <property name="build.release" value="${build.dir}/${release.dir}"/> - <property name="build.release.prepare" value="${build.dir}/${release.dir}/prepare"/> + <property name="build.release" value="${build.root.dir}/${release.dir}"/> + <property name="build.release.prepare" value="${build.root.dir}/${release.dir}/prepare"/> - <property name="build.zip" value="${build.dir}/${project.namever}.zip"/> - <property name="build.tar" value="${build.dir}/${project.namever}.tar"/> - <property name="build.tgz" value="${build.dir}/${project.namever}.tar.gz"/> - <property name="build.bz2" value="${build.dir}/${project.namever}.tar.bz2"/> + <property name="build.zip" value="${build.root.dir}/${project.namever}.zip"/> + <property name="build.tar" value="${build.root.dir}/${project.namever}.tar"/> + <property name="build.tgz" value="${build.root.dir}/${project.namever}.tar.gz"/> + <property name="build.bz2" value="${build.root.dir}/${project.namever}.tar.bz2"/> - <property name="client.zip" value="${build.dir}/${client.namever}.zip"/> - <property name="client.tar" value="${build.dir}/${client.namever}.tar"/> - <property name="client.tgz" value="${build.dir}/${client.namever}.tar.gz"/> - <property name="client.bz2" value="${build.dir}/${client.namever}.tar.bz2"/> + <property name="client.zip" value="${build.root.dir}/${client.namever}.zip"/> + <property name="client.tar" value="${build.root.dir}/${client.namever}.tar"/> + <property name="client.tgz" value="${build.root.dir}/${client.namever}.tar.gz"/> + <property name="client.bz2" value="${build.root.dir}/${client.namever}.tar.bz2"/> <property name="java.target" value="1.5"/> <property name="java.source" value="1.5"/> @@ -89,7 +91,7 @@ <property name="common.dir" value="common"/> <property name="common.root.dir" value="${project.root}/${common.dir}"/> - <mkdir dir="${tasks.classes}"/> + <mkdir dir="${tasks.classes}"/> <javac srcdir="${tasks.src}" destdir="${tasks.classes}" classpath="${java.class.path}"/> <taskdef name="map" classname="org.apache.qpid.tasks.Map" diff --git a/java/module.xml b/java/module.xml index 0172ea2995..78999c2ea9 100644 --- a/java/module.xml +++ b/java/module.xml @@ -26,7 +26,7 @@ <globmapper from="${project.root}${file.separator}*" to="*"/> </map> - <property name="module.dir" value="${build.dir}/${module}"/> + <property name="module.dir" value="${build.root.dir}/${module}"/> <property name="module.classes" value="${module.dir}/${classes.dir}"/> <property name="module.precompiled" value="${module.dir}/${src.dir}"/> @@ -75,7 +75,7 @@ <regexpmapper from="(.*)" to="\1/${lib.dir}/\*\*\/*\.jar" handledirsep="/"/> </map> <map property="module.depends.classes" value="${module.depends.dirs}" join=":"> - <globmapper from="*" to="${build.dir}/*/${classes.dir}"/> + <globmapper from="*" to="${build.root.dir}/*/${classes.dir}"/> </map> <path id="module.src.path"> @@ -167,13 +167,13 @@ <target name="build" depends="compile"> <antcall target="dist-bin"> - <param name="destdir" value="${build.dir}"/> + <param name="destdir" value="${build.root.dir}"/> </antcall> - <copy todir="${build.dir}/${etc.dir}" failonerror="false"> + <copy todir="${build.root.dir}/${etc.dir}" failonerror="false"> <fileset dir="${module.etc}" excludes="**/*.conf"/> </copy> - <copy todir="${build.dir}/${etc.dir}" failonerror="false"> - <fileset dir="${build.dir}/${etc.dir}" includes="**/*.dev"/> + <copy todir="${build.root.dir}/${etc.dir}" failonerror="false"> + <fileset dir="${build.root.dir}/${etc.dir}" includes="**/*.dev"/> <mapper> <globmapper from="*.dev" to="*"/> </mapper> |
