summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/build.xml229
-rw-r--r--java/common.xml30
-rw-r--r--java/module.xml12
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>