diff options
author | Kim van der Riet <kpvdr@apache.org> | 2007-01-02 18:19:58 +0000 |
---|---|---|
committer | Kim van der Riet <kpvdr@apache.org> | 2007-01-02 18:19:58 +0000 |
commit | 7633f3fc440671eaa93ed0b2e25b49e5d795aa7d (patch) | |
tree | 7dd331b52a7c8f85ef002e2a8dac9918fd15d978 | |
parent | 7362f3e824e5fbf40040180ef0d150cc40a90da2 (diff) | |
download | qpid-python-7633f3fc440671eaa93ed0b2e25b49e5d795aa7d.tar.gz |
Added automatic build of generator; added dependency check on source XML files that prevents generation if not needed
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@491879 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | java/common/pom.xml | 4 | ||||
-rw-r--r-- | java/common/protocol-version.xml | 19 |
2 files changed, 18 insertions, 5 deletions
diff --git a/java/common/pom.xml b/java/common/pom.xml index f30d81f739..77f8cc9dff 100644 --- a/java/common/pom.xml +++ b/java/common/pom.xml @@ -39,6 +39,7 @@ <generated.path>${project.build.directory}/generated-sources/xsl</generated.path> <generated.package>org/apache/qpid/framing</generated.package> <generated.dir>${generated.path}/${generated.package}</generated.dir> + <generated.timestamp>${generated.dir}/timestamp</generated.timestamp> <specs.dir>${topDirectoryLocation}/../specs</specs.dir> <cluster.asl>${basedir}/src/main/xsl/cluster.asl</cluster.asl> </properties> @@ -57,6 +58,9 @@ <ant antfile="protocol-version.xml"> <property name="gentools.home" value="${gentools.home}"/> <property name="generated.dir" value="${generated.dir}"/> + <property name="generated.timestamp" value="${generated.timestamp}"/> + <property name="xml.spec.dir" value="${specs.dir}"/> + <property name="xml.spec.deps" value="amqp.0-8.xml cluster.0-8.xml"/> <property name="xml.spec.list" value="${specs.dir}/amqp.0-8.xml ${specs.dir}/cluster.0-8.xml"/> </ant> </tasks> diff --git a/java/common/protocol-version.xml b/java/common/protocol-version.xml index ff5e8b0f70..d318f07901 100644 --- a/java/common/protocol-version.xml +++ b/java/common/protocol-version.xml @@ -19,14 +19,23 @@ - --> <project name="Qpid Common Protocol Versions" default="generate"> - - <target name="generate"> + + <target name="generate" depends="compile_generator,check_generate_deps" unless="generation.notRequired"> <mkdir dir="${generated.dir}"/> - <exec dir="${gentools.home}/src" executable="pwd" /> - <echo>XML files to be processed: ${xml.spec.list}</echo> <java classname="org.apache.qpid.gentools.Main" fork="true" dir="${gentools.home}/src"> - <arg line="-j -o ${generated.dir} -t ${gentools.home}/templ.java ${xml.spec.list}"/> + <arg line="-j -o ${generated.dir} -t ${gentools.home}/templ.java ${xml.spec.list}" /> </java> + <touch file="${generated.timestamp}" /> + </target> + + <target name="check_generate_deps"> + <uptodate property="generation.notRequired" targetfile="${generated.timestamp}"> + <srcfiles dir="${xml.spec.dir}" includes="${xml.spec.deps}" /> + </uptodate> + </target> + + <target name="compile_generator"> + <ant dir="${gentools.home}" /> </target> <target name="precompile" depends="generate"/> |