view mercurial.xml @ 956:1ba5cc4c9ca4 Hajipur-9.1.x

TW-46340 compute from revisions more correctly Endpoints should contain minimal set of uniteresting revisions. Now we don't add endpoint if it is already filtered out by another endpoint.
author Dmitry Neverov <dmitry.neverov@gmail.com>
date Fri, 22 Jul 2016 12:26:37 +0200
parents 31a1aca3305c
children
line wrap: on
line source
<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2000-2014 JetBrains s.r.o.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->

<project name="mercurial" default="all">
  
  
  <property file="mercurial.properties"/>
  <!-- Uncomment the following property if no tests compilation is needed -->
  <!-- 
  <property name="skip.tests" value="true"/>
   -->
  
  <!-- Compiler options -->
  
  <property name="compiler.debug" value="on"/>
  <property name="compiler.generate.no.warnings" value="off"/>
  <property name="compiler.args" value=""/>
  <property name="compiler.max.memory" value="128m"/>
  <patternset id="ignored.files">
    <exclude name="**/CVS/**"/>
    <exclude name="**/SCCS/**"/>
    <exclude name="**/RCS/**"/>
    <exclude name="**/rcs/**"/>
    <exclude name="**/.DS_Store/**"/>
    <exclude name="**/.svn/**"/>
    <exclude name="**/.pyc/**"/>
    <exclude name="**/.pyo/**"/>
    <exclude name="**/*.pyc/**"/>
    <exclude name="**/*.pyo/**"/>
    <exclude name="**/.git/**"/>
    <exclude name="**/*.hprof/**"/>
    <exclude name="**/_svn/**"/>
    <exclude name="**/.hg/**"/>
    <exclude name="**/*.lib/**"/>
    <exclude name="**/*~/**"/>
    <exclude name="**/__pycache__/**"/>
    <exclude name="**/.bundle/**"/>
    <exclude name="**/*.rbc/**"/>
    <exclude name="**/*.orig/**"/>
  </patternset>
  <patternset id="library.patterns">
    <include name="*.zip"/>
    <include name="*.apk"/>
    <include name="*.war"/>
    <include name="*.egg"/>
    <include name="*.ear"/>
    <include name="*.ane"/>
    <include name="*.swc"/>
    <include name="*.jar"/>
  </patternset>
  <patternset id="compiler.resources">
    <include name="**/?*.properties"/>
    <include name="**/?*.xml"/>
    <include name="**/?*.gif"/>
    <include name="**/?*.png"/>
    <include name="**/?*.jpeg"/>
    <include name="**/?*.jpg"/>
    <include name="**/?*.html"/>
    <include name="**/?*.dtd"/>
    <include name="**/?*.tld"/>
    <include name="**/?*.jsp"/>
    <include name="**/?*.tag"/>
    <include name="**/?*.template"/>
  </patternset>
  
  
  <!-- Project Libraries -->
  
  <path id="library.idea-openapi.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/annotations.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/openapi.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/resources_en.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/util.jar"/>
  </path>
  
  <path id="library.jdom.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/jdom.jar"/>
  </path>
  
  <path id="library.jmock.classpath">
    <pathelement location="${basedir}/mercurial-tests/lib/hamcrest-core-1.1.jar"/>
    <pathelement location="${basedir}/mercurial-tests/lib/hamcrest-integration-1.1.jar"/>
    <pathelement location="${basedir}/mercurial-tests/lib/hamcrest-library-1.1.jar"/>
    <pathelement location="${basedir}/mercurial-tests/lib/jmock-2.5.1.jar"/>
    <pathelement location="${basedir}/mercurial-tests/lib/jmock-SNAPSHOT.jar"/>
  </path>
  
  <path id="library.junit.classpath">
    <pathelement location="${basedir}/mercurial-tests/lib/junit-3.8.1.jar"/>
  </path>
  
  <path id="library.log4j.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/log4j-1.2.12.jar"/>
  </path>
  
  <path id="library.teamcity-impl.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/patches-impl.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/trove4j.jar"/>
  </path>
  
  <path id="library.teamcity-testsapi.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/tests/patches-test.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/tests/tests-support.jar"/>
  </path>
  
  <path id="library.teamcity_vcs_api.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/server-common-api.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/server-vcs-api.jar"/>
  </path>
  
  <path id="library.teamcityapi-agent.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/buildAgent/lib/agent.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/agent-api.jar"/>
  </path>
  
  <path id="library.teamcityapi-common.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/common-api.jar"/>
  </path>
  
  <path id="library.teamcityapi-server.classpath">
    <pathelement location="${path.variable.teamcitydistribution}/devPackage/server-api.jar"/>
    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/server.jar"/>
  </path>
  
  <path id="library.testng.classpath">
    <pathelement location="${basedir}/mercurial-tests/lib/testng-5.7-jdk15.jar"/>
  </path>
  
  
  <!-- Application Server Libraries -->
  
  <!-- Modules -->
  
  
  <!-- Module main -->
  
  <dirname property="module.main.basedir" file="${ant.file}"/>
  
  
  
  <property name="compiler.args.main" value="${compiler.args}"/>
  
  <property name="main.output.dir" value="undefined"/>
  <property name="main.testoutput.dir" value="undefined"/>
  
  <path id="main.module.bootclasspath">
    <!-- Paths to be included in compilation bootclasspath -->
  </path>
  
  <path id="main.module.production.classpath"/>
  
  <path id="main.runtime.production.module.classpath"/>
  
  <path id="main.module.classpath"/>
  
  <path id="main.runtime.module.classpath"/>
  
  
  <patternset id="excluded.from.module.main">
    <patternset refid="ignored.files"/>
  </patternset>
  
  <patternset id="excluded.from.compilation.main">
    <patternset refid="excluded.from.module.main"/>
  </patternset>
  
  
  <target name="compile.module.main" depends="compile.module.main.production,compile.module.main.tests" description="Compile module main"/>
  
  <target name="compile.module.main.production" description="Compile module main; production classes"/>
  
  <target name="compile.module.main.tests" depends="compile.module.main.production" description="compile module main; test classes" unless="skip.tests"/>
  
  <target name="clean.module.main" description="cleanup module">
    <delete dir="${main.output.dir}"/>
    <delete dir="${main.testoutput.dir}"/>
  </target>
  
  
  <!-- Module mercurial-common -->
  
  <dirname property="module.mercurial-common.basedir" file="${ant.file}"/>
  
  
  
  <property name="compiler.args.mercurial-common" value="${compiler.args}"/>
  
  <property name="mercurial-common.output.dir" value="${module.mercurial-common.basedir}/mercurial-common/classes"/>
  <property name="mercurial-common.testoutput.dir" value="${module.mercurial-common.basedir}/mercurial-common/classes"/>
  
  <path id="mercurial-common.module.bootclasspath">
    <!-- Paths to be included in compilation bootclasspath -->
  </path>
  
  <path id="mercurial-common.module.production.classpath">
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.jdom.classpath"/>
  </path>
  
  <path id="mercurial-common.runtime.production.module.classpath">
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.jdom.classpath"/>
  </path>
  
  <path id="mercurial-common.module.classpath">
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.jdom.classpath"/>
  </path>
  
  <path id="mercurial-common.runtime.module.classpath">
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.jdom.classpath"/>
  </path>
  
  
  <patternset id="excluded.from.module.mercurial-common">
    <patternset refid="ignored.files"/>
  </patternset>
  
  <patternset id="excluded.from.compilation.mercurial-common">
    <patternset refid="excluded.from.module.mercurial-common"/>
  </patternset>
  
  <path id="mercurial-common.module.sourcepath">
    <dirset dir="${module.mercurial-common.basedir}/mercurial-common">
      <include name="src"/>
    </dirset>
  </path>
  
  
  <target name="compile.module.mercurial-common" depends="compile.module.mercurial-common.production,compile.module.mercurial-common.tests" description="Compile module mercurial-common"/>
  
  <target name="compile.module.mercurial-common.production" description="Compile module mercurial-common; production classes">
    <mkdir dir="${mercurial-common.output.dir}"/>
    <javac destdir="${mercurial-common.output.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}" memorymaximumsize="${compiler.max.memory}" fork="true">
      <compilerarg line="${compiler.args.mercurial-common}"/>
      <bootclasspath refid="mercurial-common.module.bootclasspath"/>
      <classpath refid="mercurial-common.module.production.classpath"/>
      <src refid="mercurial-common.module.sourcepath"/>
      <patternset refid="excluded.from.compilation.mercurial-common"/>
    </javac>
    
    <copy todir="${mercurial-common.output.dir}">
      <fileset dir="${module.mercurial-common.basedir}/mercurial-common/src">
        <patternset refid="compiler.resources"/>
        <type type="file"/>
      </fileset>
    </copy>
  </target>
  
  <target name="compile.module.mercurial-common.tests" depends="compile.module.mercurial-common.production" description="compile module mercurial-common; test classes" unless="skip.tests"/>
  
  <target name="clean.module.mercurial-common" description="cleanup module">
    <delete dir="${mercurial-common.output.dir}"/>
    <delete dir="${mercurial-common.testoutput.dir}"/>
  </target>
  
  
  <!-- Module mercurial-agent -->
  
  <dirname property="module.mercurial-agent.basedir" file="${ant.file}"/>
  
  
  
  <property name="compiler.args.mercurial-agent" value="${compiler.args}"/>
  
  <property name="mercurial-agent.output.dir" value="${module.mercurial-agent.basedir}/mercurial-agent/classes"/>
  <property name="mercurial-agent.testoutput.dir" value="${module.mercurial-agent.basedir}/mercurial-agent/classes"/>
  
  <path id="mercurial-agent.module.bootclasspath">
    <!-- Paths to be included in compilation bootclasspath -->
  </path>
  
  <path id="mercurial-agent.module.production.classpath">
    <path refid="library.teamcityapi-agent.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
  </path>
  
  <path id="mercurial-agent.runtime.production.module.classpath">
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.jdom.classpath"/>
  </path>
  
  <path id="mercurial-agent.module.classpath">
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
  </path>
  
  <path id="mercurial-agent.runtime.module.classpath">
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.jdom.classpath"/>
  </path>
  
  
  <patternset id="excluded.from.module.mercurial-agent">
    <patternset refid="ignored.files"/>
  </patternset>
  
  <patternset id="excluded.from.compilation.mercurial-agent">
    <patternset refid="excluded.from.module.mercurial-agent"/>
  </patternset>
  
  <path id="mercurial-agent.module.sourcepath">
    <dirset dir="${module.mercurial-agent.basedir}/mercurial-agent">
      <include name="src"/>
    </dirset>
  </path>
  
  
  <target name="compile.module.mercurial-agent" depends="compile.module.mercurial-agent.production,compile.module.mercurial-agent.tests" description="Compile module mercurial-agent"/>
  
  <target name="compile.module.mercurial-agent.production" depends="compile.module.mercurial-common" description="Compile module mercurial-agent; production classes">
    <mkdir dir="${mercurial-agent.output.dir}"/>
    <javac destdir="${mercurial-agent.output.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}" memorymaximumsize="${compiler.max.memory}" fork="true">
      <compilerarg line="${compiler.args.mercurial-agent}"/>
      <bootclasspath refid="mercurial-agent.module.bootclasspath"/>
      <classpath refid="mercurial-agent.module.production.classpath"/>
      <src refid="mercurial-agent.module.sourcepath"/>
      <patternset refid="excluded.from.compilation.mercurial-agent"/>
    </javac>
    
    <copy todir="${mercurial-agent.output.dir}">
      <fileset dir="${module.mercurial-agent.basedir}/mercurial-agent/src">
        <patternset refid="compiler.resources"/>
        <type type="file"/>
      </fileset>
    </copy>
  </target>
  
  <target name="compile.module.mercurial-agent.tests" depends="compile.module.mercurial-agent.production" description="compile module mercurial-agent; test classes" unless="skip.tests"/>
  
  <target name="clean.module.mercurial-agent" description="cleanup module">
    <delete dir="${mercurial-agent.output.dir}"/>
    <delete dir="${mercurial-agent.testoutput.dir}"/>
  </target>
  
  
  <!-- Module mercurial-server -->
  
  <dirname property="module.mercurial-server.basedir" file="${ant.file}"/>
  
  
  
  <property name="compiler.args.mercurial-server" value="${compiler.args}"/>
  
  <property name="mercurial-server.output.dir" value="${module.mercurial-server.basedir}/mercurial-server/classes"/>
  <property name="mercurial-server.testoutput.dir" value="${module.mercurial-server.basedir}/mercurial-server/classes"/>
  
  <path id="mercurial-server.module.bootclasspath">
    <!-- Paths to be included in compilation bootclasspath -->
  </path>
  
  <path id="mercurial-server.module.production.classpath">
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
  </path>
  
  <path id="mercurial-server.runtime.production.module.classpath">
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.jdom.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
  </path>
  
  <path id="mercurial-server.module.classpath">
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
  </path>
  
  <path id="mercurial-server.runtime.module.classpath">
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.jdom.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
  </path>
  
  
  <patternset id="excluded.from.module.mercurial-server">
    <patternset refid="ignored.files"/>
  </patternset>
  
  <patternset id="excluded.from.compilation.mercurial-server">
    <patternset refid="excluded.from.module.mercurial-server"/>
  </patternset>
  
  <path id="mercurial-server.module.sourcepath">
    <dirset dir="${module.mercurial-server.basedir}/mercurial-server">
      <include name="resources"/>
      <include name="src"/>
    </dirset>
  </path>
  
  
  <target name="compile.module.mercurial-server" depends="compile.module.mercurial-server.production,compile.module.mercurial-server.tests" description="Compile module mercurial-server"/>
  
  <target name="compile.module.mercurial-server.production" depends="compile.module.mercurial-common" description="Compile module mercurial-server; production classes">
    <mkdir dir="${mercurial-server.output.dir}"/>
    <javac destdir="${mercurial-server.output.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}" memorymaximumsize="${compiler.max.memory}" fork="true">
      <compilerarg line="${compiler.args.mercurial-server}"/>
      <bootclasspath refid="mercurial-server.module.bootclasspath"/>
      <classpath refid="mercurial-server.module.production.classpath"/>
      <src refid="mercurial-server.module.sourcepath"/>
      <patternset refid="excluded.from.compilation.mercurial-server"/>
    </javac>
    
    <copy todir="${mercurial-server.output.dir}">
      <fileset dir="${module.mercurial-server.basedir}/mercurial-server/resources">
        <patternset refid="compiler.resources"/>
        <type type="file"/>
      </fileset>
      <fileset dir="${module.mercurial-server.basedir}/mercurial-server/src">
        <patternset refid="compiler.resources"/>
        <type type="file"/>
      </fileset>
    </copy>
  </target>
  
  <target name="compile.module.mercurial-server.tests" depends="compile.module.mercurial-server.production" description="compile module mercurial-server; test classes" unless="skip.tests"/>
  
  <target name="clean.module.mercurial-server" description="cleanup module">
    <delete dir="${mercurial-server.output.dir}"/>
    <delete dir="${mercurial-server.testoutput.dir}"/>
  </target>
  
  
  <!-- Module mercurial-tests -->
  
  <dirname property="module.mercurial-tests.basedir" file="${ant.file}"/>
  
  
  
  <property name="compiler.args.mercurial-tests" value="${compiler.args}"/>
  
  <property name="mercurial-tests.output.dir" value="${module.mercurial-tests.basedir}/mercurial-tests/classes"/>
  <property name="mercurial-tests.testoutput.dir" value="${module.mercurial-tests.basedir}/mercurial-tests/classes"/>
  
  <path id="mercurial-tests.module.bootclasspath">
    <!-- Paths to be included in compilation bootclasspath -->
  </path>
  
  <path id="mercurial-tests.module.production.classpath">
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <path refid="library.junit.classpath"/>
    <path refid="library.testng.classpath"/>
    <path refid="library.jmock.classpath"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcity-testsapi.classpath"/>
    <path refid="library.teamcity-impl.classpath"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
  </path>
  
  <path id="mercurial-tests.runtime.production.module.classpath">
    <pathelement location="${mercurial-tests.output.dir}"/>
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.jdom.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
    <path refid="library.junit.classpath"/>
    <path refid="library.testng.classpath"/>
    <path refid="library.jmock.classpath"/>
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <path refid="library.teamcity-testsapi.classpath"/>
    <path refid="library.teamcity-impl.classpath"/>
  </path>
  
  <path id="mercurial-tests.module.classpath">
    <pathelement location="${mercurial-tests.output.dir}"/>
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <path refid="library.junit.classpath"/>
    <path refid="library.testng.classpath"/>
    <path refid="library.jmock.classpath"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcity-testsapi.classpath"/>
    <path refid="library.teamcity-impl.classpath"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
  </path>
  
  <path id="mercurial-tests.runtime.module.classpath">
    <pathelement location="${mercurial-tests.output.dir}"/>
    <pathelement location="${mercurial-server.output.dir}"/>
    <path refid="library.teamcityapi-server.classpath"/>
    <path refid="library.idea-openapi.classpath"/>
    <path refid="library.log4j.classpath"/>
    <pathelement location="${mercurial-common.output.dir}"/>
    <path refid="library.teamcityapi-common.classpath"/>
    <path refid="library.jdom.classpath"/>
    <path refid="library.teamcity_vcs_api.classpath"/>
    <path refid="library.junit.classpath"/>
    <path refid="library.testng.classpath"/>
    <path refid="library.jmock.classpath"/>
    <pathelement location="${mercurial-agent.output.dir}"/>
    <path refid="library.teamcityapi-agent.classpath"/>
    <path refid="library.teamcity-testsapi.classpath"/>
    <path refid="library.teamcity-impl.classpath"/>
  </path>
  
  
  <patternset id="excluded.from.module.mercurial-tests">
    <patternset refid="ignored.files"/>
  </patternset>
  
  <patternset id="excluded.from.compilation.mercurial-tests">
    <patternset refid="excluded.from.module.mercurial-tests"/>
  </patternset>
  
  <path id="mercurial-tests.module.test.sourcepath">
    <dirset dir="${module.mercurial-tests.basedir}/mercurial-tests">
      <include name="src"/>
    </dirset>
  </path>
  
  
  <target name="compile.module.mercurial-tests" depends="compile.module.mercurial-tests.production,compile.module.mercurial-tests.tests" description="Compile module mercurial-tests"/>
  
  <target name="compile.module.mercurial-tests.production" depends="compile.module.mercurial-server,compile.module.mercurial-common,compile.module.mercurial-agent" description="Compile module mercurial-tests; production classes"/>
  
  <target name="compile.module.mercurial-tests.tests" depends="compile.module.mercurial-tests.production" description="compile module mercurial-tests; test classes" unless="skip.tests">
    <mkdir dir="${mercurial-tests.testoutput.dir}"/>
    <javac destdir="${mercurial-tests.testoutput.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}" memorymaximumsize="${compiler.max.memory}" fork="true">
      <compilerarg line="${compiler.args.mercurial-tests}"/>
      <bootclasspath refid="mercurial-tests.module.bootclasspath"/>
      <classpath refid="mercurial-tests.module.classpath"/>
      <src refid="mercurial-tests.module.test.sourcepath"/>
      <patternset refid="excluded.from.compilation.mercurial-tests"/>
    </javac>
    
    <copy todir="${mercurial-tests.testoutput.dir}">
      <fileset dir="${module.mercurial-tests.basedir}/mercurial-tests/src">
        <patternset refid="compiler.resources"/>
        <type type="file"/>
      </fileset>
    </copy>
  </target>
  
  <target name="clean.module.mercurial-tests" description="cleanup module">
    <delete dir="${mercurial-tests.output.dir}"/>
    <delete dir="${mercurial-tests.testoutput.dir}"/>
  </target>
  
  <target name="init" description="Build initialization">
    <!-- Perform any build initialization in this target -->
  </target>
  
  <target name="clean" depends="clean.module.main, clean.module.mercurial-common, clean.module.mercurial-agent, clean.module.mercurial-server, clean.module.mercurial-tests" description="cleanup all"/>
  
  <target name="build.modules" depends="init, clean, compile.module.main, compile.module.mercurial-common, compile.module.mercurial-agent, compile.module.mercurial-server, compile.module.mercurial-tests" description="build all modules"/>
  
  <target name="all" depends="build.modules" description="build all"/>
</project>