<project name="dev" default="build" basedir=".">
  <property name="gwt.root" location=".." />
  <property name="project.tail" value="dev" />
  <import file="${gwt.root}/platforms.ant.xml" />
  <import file="${gwt.root}/common.ant.xml" />

  <property name="alldeps.jar" location="${project.build}/alldeps.jar" />
  <property name="gwt.junit.testcase.dev.core.includes" value="**/com/google/**/*Test.class" />
  <property name="gwt.junit.testcase.dev.core.excludes" value="" />

  <target name="clean" description="Cleans this project's intermediate and output files">
    <delete dir="${project.build}" failonerror="false" />
    <delete file="${project.lib}" failonerror="false" />
    <delete failonerror="false">
      <fileset dir="${gwt.build.lib}"  includes="gwt-dev.jar"/>
    </delete>
  </target>

  <target name="compile.tests" depends="build, compile.emma.if.enabled, build.alldeps.jar" description="Compiles the test code for this project">
    <mkdir dir="${javac.junit.out}" />
    <gwt.javac srcdir="" destdir="${javac.junit.out}">
      <src path="core/src" />
      <src path="core/test" />
      <classpath>
        <pathelement location="${javac.out}" />
        <pathelement location="${alldeps.jar}" />
        <pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" />
      </classpath>
    </gwt.javac>
    <gwt.javac srcdir="${gwt.root}/user/src">
      <classpath>
        <pathelement location="${gwt.tools.lib}/tomcat/servlet-api-2.5.jar" />
        <pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" />
        <pathelement location="${gwt.tools.lib}/jfreechart/jfreechart-1.0.3.jar" />
        <pathelement location="${gwt.tools.lib}/selenium/selenium-java-client-driver.jar" />
        <pathelement location="${gwt.tools.lib}/w3c/sac/sac-1.3.jar" />
        <pathelement location="${gwt.tools.lib}/w3c/flute/flute-1.3.jar" />
        <pathelement location="${gwt.build.lib}/gwt-dev-${build.host.platform}.jar" />
        <pathelement location="${alldeps.jar}" />
      </classpath>
    </gwt.javac>

  </target>

  <target name="build.alldeps.jar" description="Merges all dependency jars into a single jar">
    <mkdir dir="${project.build}" />
    <outofdate> <!-- saves rescanning all the source jars' contents -->
      <sourcefiles>
        <fileset dir="${gwt.tools.lib}">
          <include name="apache/tapestry-util-text-4.0.2.jar" />
          <include name="apache/ant-1.6.5.jar" />
          <include name="eclipse/jdt-3.4.2.jar" />
          <include name="jetty/jetty-6.1.11.jar" />
          <include name="protobuf/protobuf-2.2.0/protobuf-java-rebased-2.2.0.jar" />
          <include name="tomcat/ant-launcher-1.6.5.jar" />
          <include name="tomcat/catalina-1.0.jar" />
          <include name="tomcat/catalina-optional-1.0.jar" />
          <include name="tomcat/commons-beanutils-1.6.jar" />
          <include name="tomcat/commons-collections-3.1.jar" />
          <include name="tomcat/commons-digester-1.5.jar" />
          <include name="tomcat/commons-el-1.0.jar" />
          <include name="tomcat/commons-logging-1.0.jar" />
          <include name="tomcat/commons-modeler-1.1.jar" />
          <include name="tomcat/jakarta-regexp-1.3.jar" />
          <include name="tomcat/jasper-compiler-1.0.jar" />
          <include name="tomcat/jasper-runtime-1.0.jar" />
          <include name="tomcat/jsp-api-2.0.jar" />
          <include name="tomcat/mx4j-jmx-1.1.jar" />
          <include name="tomcat/naming-common-1.0.jar" />
          <include name="tomcat/naming-factory-1.0.jar" />
          <include name="tomcat/naming-java-1.0.jar" />
          <include name="tomcat/naming-resources-1.0.jar" />
          <include name="tomcat/servlet-api-2.5.jar" />
          <include name="tomcat/servlet-api-2.4.jar" />
          <include name="tomcat/servlets-common-1.0.jar" />
          <include name="tomcat/servlets-default-1.0.jar" />
          <include name="tomcat/servlets-invoker-1.0.jar" />
          <include name="tomcat/tomcat-coyote-1.0.jar" />
          <include name="tomcat/tomcat-http11-1.0.jar" />
          <include name="tomcat/tomcat-jk2-2.1.jar" />
          <include name="tomcat/tomcat-util-5.1.jar" />
          <!-- htmlunit dependencies not already included: BEGIN -->
          <include name="apache/commons/commons-codec-1.3.jar" />
          <include name="apache/commons/commons-httpclient-3.1.jar" />
          <include name="apache/commons/commons-io-1.4.jar" />
          <include name="apache/commons/commons-lang-2.4.jar" />
          <include name="cssparser/cssparser-0.9.5.jar" />
          <include name="htmlunit/htmlunit-r5070.jar" />
          <include name="htmlunit/htmlunit-core-js-r5070.jar" />
          <include name="nekohtml/nekohtml-1.9.13.jar" />
          <include name="xalan/xalan-2.7.1.jar" />
          <include name="xerces/xerces-2_9_1/serializer.jar" />
          <include name="xerces/xerces-2_9_1/xercesImpl-NoMetaInf.jar" />
          <include name="xerces/xerces-2_9_1/xml-apis.jar" />
          <include name="w3c/sac/sac-1.3.jar" />
          <!-- htmlunit dependencies not already included: END -->
          <include name="sun/swingworker/swing-worker-1.1.jar" />
        </fileset>
        <fileset file="build.xml"/>
      </sourcefiles>
      <targetfiles>
        <fileset file="${alldeps.jar}"/>
      </targetfiles>
      <sequential>
        <gwt.jar destfile="${alldeps.jar}">
          <zipfileset src="${gwt.tools.lib}/apache/tapestry-util-text-4.0.2.jar" />
          <zipfileset src="${gwt.tools.lib}/apache/ant-1.6.5.jar" />
          <zipfileset src="${gwt.tools.lib}/eclipse/jdt-3.4.2.jar" />
          <zipfileset src="${gwt.tools.lib}/jetty/jetty-6.1.11.jar" />
          <zipfileset src="${gwt.tools.lib}/protobuf/protobuf-2.2.0/protobuf-java-rebased-2.2.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/ant-launcher-1.6.5.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/catalina-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/catalina-optional-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/commons-beanutils-1.6.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/commons-collections-3.1.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/commons-digester-1.5.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/commons-el-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/commons-logging-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/commons-modeler-1.1.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/jakarta-regexp-1.3.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/jasper-compiler-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/jasper-runtime-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/jsp-api-2.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/mx4j-jmx-1.1.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/naming-common-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/naming-factory-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/naming-java-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/naming-resources-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/servlet-api-2.5.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/servlet-api-2.4.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/servlets-common-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/servlets-default-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/servlets-invoker-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/tomcat-coyote-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/tomcat-http11-1.0.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/tomcat-jk2-2.1.jar" />
          <zipfileset src="${gwt.tools.lib}/tomcat/tomcat-util-5.1.jar" />
          <!-- htmlunit dependencies not already included: BEGIN -->
          <zipfileset src="${gwt.tools.lib}/apache/commons/commons-codec-1.3.jar" />
          <zipfileset src="${gwt.tools.lib}/apache/commons/commons-httpclient-3.1.jar" />
          <zipfileset src="${gwt.tools.lib}/apache/commons/commons-io-1.4.jar" />
          <zipfileset src="${gwt.tools.lib}/apache/commons/commons-lang-2.4.jar" />
          <zipfileset src="${gwt.tools.lib}/cssparser/cssparser-0.9.5.jar" />
          <zipfileset src="${gwt.tools.lib}/htmlunit/htmlunit-r5070.jar" />
          <zipfileset src="${gwt.tools.lib}/htmlunit/htmlunit-core-js-r5070.jar" />
          <zipfileset src="${gwt.tools.lib}/nekohtml/nekohtml-1.9.13.jar" />
          <zipfileset src="${gwt.tools.lib}/xalan/xalan-2.7.1.jar" />
          <zipfileset src="${gwt.tools.lib}/xerces/xerces-2_9_1/serializer.jar" />
          <zipfileset src="${gwt.tools.lib}/xerces/xerces-2_9_1/xercesImpl-NoMetaInf.jar" />
          <zipfileset src="${gwt.tools.lib}/xerces/xerces-2_9_1/xml-apis.jar" />
          <zipfileset src="${gwt.tools.lib}/w3c/sac/sac-1.3.jar" />
          <!-- htmlunit dependencies not already included: END -->
          <zipfileset src="${gwt.tools.lib}/sun/swingworker/swing-worker-1.1.jar" />
        </gwt.jar>
      </sequential>
    </outofdate>
  </target>

  <property name="filter.pattern" value="com/google/gwt/dev/About.properties" />

  <target name="-filter.props" description="Creates filtered About.properties with version info"
     unless="filter.uptodate">
    <gwt.revfilter todir="${javac.out}">
      <fileset dir="core/src" includes="${filter.pattern}" />
    </gwt.revfilter>
    <touch file="${filter.sentinel}" />
  </target>

  <target name="compiler.standalone" depends="build.alldeps.jar" description="Validates that the standalone gwt-compiler project can build.">
    <mkdir dir="${javac.out}" />
    <gwt.javac srcdir="core/super" excludes="com/google/gwt/dev/jjs/intrinsic/"/>
    <gwt.javac srcdir="core/src">
      <include name="com/google/gwt/core/ext/**"/>
      <include name="com/google/gwt/core/linker/**"/>
      <include name="com/google/gwt/dev/About.java"/>
      <include name="com/google/gwt/dev/asm/**"/>
      <include name="com/google/gwt/dev/cfg/**"/>
      <include name="com/google/gwt/dev/javac/**"/>
      <include name="com/google/gwt/dev/jdt/**"/>
      <include name="com/google/gwt/dev/jjs/**"/>
      <include name="com/google/gwt/dev/js/**"/>
      <include name="com/google/gwt/dev/resource/**"/>
      <include name="com/google/gwt/dev/util/**"/>
      <include name="com/google/gwt/soyc/**"/>
      <include name="com/google/gwt/util/tools/**"/>
      <classpath>
          <pathelement location="${gwt.tools.lib}/apache/ant-1.6.5.jar" />
          <pathelement location="${gwt.tools.lib}/eclipse/jdt-3.4.2.jar" />
          <pathelement location="${gwt.tools.lib}/tomcat/commons-collections-3.1.jar" />
          <pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" />
      </classpath>
    </gwt.javac>

  </target>
  
  <target name="compile" depends="compiler.standalone, build.alldeps.jar" description="Compiles this project">
    <gwt.javac srcdir="" excludes="${filter.pattern}">
      <src path="core/src" />
      <classpath>
        <pathelement location="${alldeps.jar}" />
        <pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" />
      </classpath>
    </gwt.javac>
    <copy todir="${javac.out}">
      <fileset dir="core/src" includes="**/*.properties" excludes="${filter.pattern}"/>
    </copy>

    <!-- Files with hardcoded version information must be filtered -->
    <gwt.getsvninfo />
    <condition property="filter.uptodate">
      <and>
        <available file="${filter.sentinel}" />
        <uptodate>
          <srcfiles dir="core/src" includes="${filter.pattern}" />
          <globmapper from="*" to="${javac.out}/*" />
        </uptodate>
      </and>
    </condition>
    <antcall target="-filter.props" />
  </target>

  <target name="checkstyle" description="Static analysis of source">
    <gwt.checkstyle>
      <fileset dir="core/src">
        <filename name="com/google/gwt/dev/shell/remoteui/RemoteMessageProto.java" negate="yes" />
        <filename name="com/google/gwt/dev/asm/**/*.java" negate="yes" />
        <filename name="com/google/gwt/dev/js/rhino/**/*.java" negate="yes" />
        <filename name="org/eclipse/**/*.java" negate="yes" />
        <filename name="org/apache/**/*.java" negate="yes" />
      </fileset>
    </gwt.checkstyle>

    <gwt.checkstyle>
      <fileset dir="core/super/com/google/gwt/dev/jjs/intrinsic" />
    </gwt.checkstyle>

  </target>

  <target name="test" depends="build, compile.tests" description="Run unit tests for this project.">
    <fileset id="tests.dev.core" dir="${javac.junit.out}" includes="${gwt.junit.testcase.dev.core.includes}" excludes="${gwt.junit.testcase.dev.core.excludes}" />
    <gwt.junit test.out="${junit.out}" test.cases="tests.dev.core" >
      <extraclasspaths>
        <pathelement location="${alldeps.jar}" />
        <!-- TODO: the following six items are needed because dev (alone) does
            not adhere to the .../{src,super,test} convention, having a split
            between core and (historically) oophm and the OS platforms.  When
            that unifies, these should go away. -->
        <pathelement location="${gwt.root}/${project.tail}/core/src" />
        <pathelement location="${gwt.root}/${project.tail}/core/super" />
        <pathelement location="${gwt.root}/${project.tail}/core/test" />
        <!-- Pull in gwt-dev and gwt-user sources for .gwt.xml files -->
        <pathelement location="${gwt.root}/user/src/" />
        <pathelement location="${gwt.root}/user/super/" />
        <!-- CompilerTest compiles the hello sample. -->
        <pathelement location="${gwt.root}/samples/hello/src/" />
      </extraclasspaths>
    </gwt.junit>
  </target>

  <property.ensure name="gwt.tools.soyc" location="${gwt.root}/tools/soyc-vis" />
  <target name="build" depends="compile" description="Build and package this project">
    <mkdir dir="${gwt.build.lib}" />
    <outofdate>
      <sourcefiles>
        <fileset dir="core/src">
          <exclude name="**/package.html"/>
          <exclude name="**/*.properties"/> <!-- copied and/or filtered into bin -->
        </fileset>
        <fileset dir="core/super" excludes="**/package.html" />
        <fileset dir="${javac.out}" />
        <fileset dir="${project.build}/bin" />
        <fileset file="${project.build}/alldeps.jar" />
        <fileset file="${gwt.tools.soyc}/classLevel.css"/>
        <fileset file="${gwt.tools.soyc}/roundedCorners.css"/>
      </sourcefiles>
      <targetfiles>
        <fileset file="${project.lib}"/>
      </targetfiles>
      <sequential>
        <gwt.jar>
          <fileset dir="core/src">
            <exclude name="**/package.html"/>
            <exclude name="**/*.properties"/> <!-- copied and/or filtered into bin -->
          </fileset>
          <fileset dir="core/super" excludes="**/package.html" />
          <fileset dir="${javac.out}" />
          <zipfileset src="${alldeps.jar}" />

          <zipfileset file="${gwt.tools.soyc}/classLevel.css" prefix="com/google/gwt/soyc/resources/"/>
          <zipfileset file="${gwt.tools.soyc}/roundedCorners.css" prefix="com/google/gwt/soyc/resources/"/>

          <manifest>
            <attribute name="Main-Class" value="com.google.gwt.dev.GWTMain" />
          </manifest>
        </gwt.jar>
      </sequential>
    </outofdate>
  </target>
</project>
