<?xml version="1.0"?> <project name="vaadin" basedir="." default="package" xmlns:ivy="antlib:org.apache.ivy.ant"> <include file="common.xml" as="common" /> <path id="vaadin.buildhelpers.classpath" location="${vaadin.basedir}/buildhelpers/result/classes" /> <!-- ================================= target: all ================================= --> <!--<target name="all" description="Compiles all parts of the project" depends="buildhelpers,theme-compiler,shared,server,client">--> <target name="package" description="Compiles and packages all modules in the project" depends="buildorder"> <subant buildpathref="build-path" target="publish-local"> </subant> </target> <target name="buildorder" depends="official.build.checks"> <!-- Find out a good build order --> <ivy:buildlist reference="ivy.build.path"> <fileset dir="." includes="**/build.xml"> <exclude name="build.xml" /> <exclude name="build/**" /> <exclude name="buildhelpers/**" /> </fileset> </ivy:buildlist> <path id="build-path"> <path location="buildhelpers/build.xml"/> <path refid="ivy.build.path" /> </path> </target> <target name="clean" depends="buildorder"> <subant buildpathref="build-path" target="clean"> </subant> <delete dir="result" /> <!-- Clean IVY cache (~/.ivy2) so no old artifacts are fetched from there (leave everything but Vaadin artifacts) --> <delete dir="${ivy.cache.dir}/com.vaadin" /> <delete dir="${ivy.cache.dir}/com.carrotsearch" /> </target> <target name="checkstyle" depends="buildorder"> <subant buildpathref="build-path" target="checkstyle"/> </target> <target name="tests" depends="buildorder"> <property name="war.file" location="result/artifacts/${vaadin.version}/vaadin-uitest/vaadin-uitest-${vaadin.version}.war" /> <parallel> <sequential> <!-- Sleep before running integration tests so testbench tests have time to compile and start --> <sleep minutes="4" /> <ant antfile="uitest/integration_tests.xml" target="integration-test-all" inheritall="false" inheritrefs="false"> <property name="demo.war" value="${war.file}" /> </ant> </sequential> <subant buildpathref="build-path" target="tests" /> <ant antfile="uitest/test.xml" target="test-package"> <property name="war.file" location="${war.file}" /> </ant> </parallel> </target> <target name="official.build.checks" if="build.release"> <condition property="java.version.matches"> <equals arg1="${ant.java.version}" arg2="${vaadin.java.version}" /> </condition> <fail unless="java.version.matches" message="Java version is ${ant.java.version}, but Vaadin must be compiled with genuine Java ${vaadin.java.version} compiler." /> <echo>Java version is ${ant.java.version} as required.</echo> </target> </project>