<?xml version="1.0"?>
<!--
	Copyright (c) 2011-2016 Eike Stepper (Berlin, Germany) and others.
	All rights reserved. This program and the accompanying materials
	are made available under the terms of the Eclipse Public License v1.0
	which accompanies this distribution, and is available at
	http://www.eclipse.org/legal/epl-v10.html

	Contributors:
	  Eike Stepper - initial API and implementation
-->
<project name="CDO" default="all">

  <property file="local.properties" />
  <property file="build.properties" />
  <property environment="env" />

  <taskdef resource="net/sf/antcontrib/antlib.xml">
    <classpath>
      <pathelement location="${ant.contrib}" />
    </classpath>
  </taskdef>

  <!-- ========= -->
  <!-- Clean Dir -->
  <!-- ========= -->

  <macrodef name="cleandir">
    <attribute name="dir" />
    <attribute name="mkdir" default="true" />
    <sequential>
      <delete includeemptydirs="true" failonerror="false" verbose="false">
        <fileset dir="@{dir}" defaultexcludes="false">
          <include name="**" />
        </fileset>
      </delete>
      <if>
        <equals arg1="@{mkdir}" arg2="true" />
        <then>
          <mkdir dir="@{dir}" />
        </then>
      </if>
    </sequential>
  </macrodef>

  <!-- ======= -->
  <!-- Eclipse -->
  <!-- ======= -->

  <macrodef name="eclipse">
    <attribute name="app" />
    <element name="properties" optional="true" />
    <element name="args" optional="true" />
    <sequential>
      <!-- Find launcher -->
      <property name="@{app}.deploy.dir" value="${tools}/@{app}" />
      <pathconvert property="@{app}.launcher">
        <first count="1">
          <sort>
            <fileset dir="${@{app}.deploy.dir}/plugins" includes="**/org.eclipse.equinox.launcher_*.jar" />
            <reverse xmlns="antlib:org.apache.tools.ant.types.resources.comparators">
              <date />
            </reverse>
          </sort>
        </first>
      </pathconvert>

      <!-- Run launcher -->
      <java fork="true" jar="${@{app}.launcher}" dir="${@{app}.deploy.dir}" failonerror="true">
        <env key="no_proxy" value="${no.proxy}" />
        <properties />
        <args />
      </java>
    </sequential>
  </macrodef>

  <!-- =========== -->
  <!-- Buckminster -->
  <!-- =========== -->

  <macrodef name="buckminster">
    <attribute name="command" />
    <attribute name="workspace" default="${ws}" />
    <element name="sysproperties" optional="true" />
    <element name="globargs" optional="true" />
    <element name="cmdargs" optional="true" />
    <sequential>
      <!-- Create buckminster.properties -->
      <property name="buckminster.properties" location="${result}/buckminster.properties" />
      <echoproperties destfile="${buckminster.properties}">
        <propertyset negate="true">
          <propertyref name="basedir" />
          <propertyref name="eclipse.home" />
          <propertyref name="buckminster.properties" />
          <propertyref name="line.separator" />
          <propertyref name="path.separator" />
          <propertyref prefix="ant." />
          <propertyref prefix="file." />
          <propertyref prefix="java." />
          <propertyref prefix="sun." />
          <propertyref prefix="user." />
        </propertyset>
      </echoproperties>

      <!-- Launch Buckminster -->
      <eclipse app="buckminster">
        <properties>
          <sysproperties />
        </properties>
        <args>
          <jvmarg value="-XX:MaxPermSize=256M" />
          <jvmarg value="-Xmx4g" />
          <jvmarg value="-Dsite.pack200=false" />
          <jvmarg value="-Dsite.retain.unpacked=true" />
          <jvmarg value="-Dorg.eclipse.update.jarprocessor.pack200=/shared/common/jdk1.6.0-latest/bin" />
          <jvmarg value="-Declipse.p2.MD5Check=false" />
          <jvmarg value="-Declipse.p2.mirrors=${p2.mirrors}" />
          <jvmarg value="-Declipse.p2.unsignedPolicy=allow" />
          <jvmarg value="-Dgit.clone=${git.clone}" />
          <arg value="-data" />
          <arg value="@{workspace}" />
          <arg value="--loglevel" />
          <arg value="${loglevel}" />
          <arg value="--displaystacktrace" />
          <globargs />
          <arg value="@{command}" />
          <arg value="-P" />
          <arg value="${buckminster.properties}" />
          <cmdargs />
        </args>
      </eclipse>
    </sequential>
  </macrodef>

  <!-- ======================= -->
  <!-- Replace Product Version -->
  <!-- ======================= -->

  <macrodef name="replace.product.version">
    <attribute name="feature" />
    <attribute name="profile" />
    <attribute name="version" />
    <sequential>
    	<replace file="${features}/@{feature}-feature/@{profile}.product" token=".qualifier" value=".@{version}" />
    </sequential>
  </macrodef>

  <!-- ============= -->
  <!-- Generate Site -->
  <!-- ============= -->

  <macrodef name="generate.site">
    <attribute name="feature" />
    <attribute name="todir" default="${build.root}" />
    <sequential>
      <echo message="Generating site" />

      <!-- Clean -->
      <delete includeemptydirs="true" failonerror="false">
        <fileset dir="@{todir}" defaultexcludes="false">
          <include name="binary/**" />
          <include name="features/**" />
          <include name="plugins/**" />
          <include name="artifacts.jar" />
          <include name="content.jar" />
        </fileset>
      </delete>

      <!-- Prepare Buckminster -->
      <cleandir dir="${buckminster.output.root}" />
      <cleandir dir="${buckminster.temp.root}" />

      <!-- Perform Buckminster -->
      <buckminster command="perform">
        <cmdargs>
          <arg value="@{feature}#site.p2" />
        </cmdargs>
      </buckminster>
      <cleandir dir="${buckminster.temp.root}" mkdir="false" />

      <!-- Determine site.p2 directory -->
      <pathconvert property="@{feature}.dir">
        <dirset dir="${buckminster.output.root}">
          <filename name="@{feature}_*-eclipse.feature/site.p2" />
        </dirset>
      </pathconvert>

      <!-- Move site.p2 contents -->
      <copy todir="@{todir}" overwrite="true" includeemptydirs="true" preservelastmodified="true" failonerror="true">
        <fileset dir="${@{feature}.dir}">
          <include name="**" />
        </fileset>
      </copy>
    </sequential>
  </macrodef>

  <!-- ============= -->
  <!-- Generate Help -->
  <!-- ============= -->

  <macrodef name="generate.help">
    <sequential>
      <echo message="" />
      <echo message="Generating help center" />
      <cleandir dir="${build.root}/help" mkdir="true" />
      <copy todir="${build.root}/help">
        <fileset dir="${releng.help}/html">
          <include name="**" />
        </fileset>
        <fileset dir="${releng.help}">
          <include name="docs.txt" />
        </fileset>
      </copy>
    </sequential>
  </macrodef>

  <!-- ============== -->
  <!-- Generate Index -->
  <!-- ============== -->

  <macrodef name="generate.index">
    <sequential>
      <echo message="" />
      <echo message="Generating repository index" />
      <unzip src="${build.root}/content.jar" dest="${build.root}" />
      <property name="content.xml" location="${build.root}/content.xml" />
      <xslt style="xsl/content2html.xsl" in="${content.xml}" out="${build.root}/index.html" />
      <xslt style="xsl/content2xml.xsl" in="${content.xml}" out="${build.root}/index.xml" />
      <delete file="${content.xml}" />
    </sequential>
  </macrodef>

  <!-- =================== -->
  <!-- Generate Booksmarks -->
  <!-- =================== -->

  <macrodef name="generate.bookmarks">
    <sequential>
      <echo message="" />
      <echo message="Generating dependency bookmarks" />
      <property name="bookmarks.tmp" location="${build.root}/bookmarks.tmp" />
      <xslt style="xsl/bom2bookmarks.xsl" in="${build.root}/bom.xml" out="${bookmarks.tmp}" />
      <replace file="${bookmarks.tmp}" token="http://dev.eclipse.org" value="file://to-be-removed" />
      <replace file="${bookmarks.tmp}" token="file:/home/data/httpd/" value="http://" />
      <property name="bookmarks.xml" location="${build.root}/bookmarks.xml" />
      <concat destfile="${bookmarks.xml}">
        <header filtering="false">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;bookmarks&gt;
</header>
        <union>
          <sort>
            <tokens>
              <file file="${bookmarks.tmp}" />
              <linetokenizer includedelims="true" />
            </tokens>
          </sort>
        </union>
        <filterchain>
          <linecontains>
            <contains value="http://" />
          </linecontains>
        </filterchain>
        <footer filtering="false">&lt;/bookmarks&gt;
			</footer>
      </concat>
      <delete file="${bookmarks.tmp}" />
    </sequential>
  </macrodef>

  <!-- ================ -->
  <!-- Generate Dropins -->
  <!-- ================ -->

  <macrodef name="generate.dropins">
    <sequential>
      <echo message="" />
      <echo message="Generating dropin archives" />
      <property name="temp.dropins" location="${result}/temp.dropins" />
      <cleandir dir="${temp.dropins}" />

      <copy todir="${temp.dropins}" failonerror="true">
        <fileset dir="${features}/org.eclipse.emf.cdo.server.product-feature/rootfiles">
          <include name="epl-v10.html" />
          <include name="notice.html" />
        </fileset>
      </copy>

      <copy todir="${temp.dropins}/features" flatten="true">
        <fileset dir="${buckminster.output.root}">
          <include name="*-eclipse.feature/jar/*" />
          <include name="*-eclipse.feature/source.jar/*" />
          <exclude name="org.eclipse.emf.cdo.site*/**/*" />
          <exclude name="org.eclipse.emf.cdo.epp*/**/*" />
          <exclude name="org.eclipse.emf.cdo.license*/**/*" />
        </fileset>
      </copy>

      <copy todir="${temp.dropins}/plugins" flatten="true">
        <fileset dir="${buckminster.output.root}">
          <include name="*-osgi.bundle/jar/*" />
          <include name="*-osgi.bundle/source.jar/*" />
        </fileset>
      </copy>

      <mkdir dir="${zips}" />
      <zip destfile="${zips}/emf-cdo-${build.qualifier}-Dropins.zip">
        <fileset dir="${temp.dropins}">
          <include name="**/*" />
        </fileset>
      </zip>
      <echo message=" for use with a &lt;a href=&quot;http://help.eclipse.org/indigo/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/misc/p2_dropins_format.html&quot;&gt;dropins&lt;/a&gt; folder."
            file="${zips}/emf-cdo-${build.qualifier}-Dropins.properties" />
    </sequential>
  </macrodef>

  <!-- ============ -->
  <!-- Generate API -->
  <!-- ============ -->

  <macrodef name="generate.apireports">
    <sequential>
      <echo message="" />
      <echo message="Generating API reports" />
      <buckminster command="perform">
        <cmdargs>
          <arg value="-D" />
          <arg value="api.report=${build.root}/api.xml" />
          <arg value="org.eclipse.emf.cdo.releng#generate.apireports" />
        </cmdargs>
      </buckminster>
      <echo message="Converting to HTML" />
      <java classname="org.eclipse.emf.cdo.releng.Api2Html">
        <classpath>
          <pathelement location="${releng}/bin/" />
          <pathelement location="/opt/public/common/apache-ant-1.7.1/lib/xercesImpl.jar" />
        </classpath>
        <arg value="${build.root}" />
        <arg value="${build.qualifier}" />
        <arg value="${plugins}" />
        <arg value="${tp}/plugins" />
      </java>
      <copy file="${releng}/hudson/api.css" todir="${build.root}" overwrite="true" />
    </sequential>
  </macrodef>

  <!-- ==================== -->
  <!-- Check Commit Message -->
  <!-- ==================== -->

  <target name="check.commit.msg" if="GERRIT_CHANGE_SUBJECT">
  	<condition property="commit.msg.ok" value="true">
  		<matches pattern="^\[[1-9][0-9]*\] .*$" string="${GERRIT_CHANGE_SUBJECT}"/>
  	</condition>
  	<fail message="The commit message is not of the form '[bug-id] bug-subject'." unless="commit.msg.ok"/>
  </target>

  <!-- =========== -->
  <!-- Init Hudson -->
  <!-- =========== -->

  <target name="init.hudson" if="env.HUDSON_URL" depends="check.commit.msg">
    <property name="build.root" value="${env.WORKSPACE}" />
    <property name="build.location" value="hudson" />
    <property name="build.timestamp" value="${env.BUILD_ID}" />
    <property name="loglevel" value="${env.LOG_LEVEL}" />
    <property name="skip.test" value="${env.SKIP_TEST}" />
    <property name="jarprocessor.dir" value="${env.org.eclipse.update.jarprocessor.pack200}" />
    <property name="p2.mirrors" value="false" />

    <!-- build.trigger -->
    <if>
      <not>
        <isset property="build.trigger" />
      </not>
      <then>
        <xmlproperty keeproot="false">
          <url url="${env.BUILD_URL}/api/xml?tree=actions[causes[shortDescription]]" />
        </xmlproperty>
        <loadresource property="build.trigger">
          <propertyresource name="action.cause.shortDescription" />
          <filterchain>
            <replaceregex pattern="^Triggered by " replace="" />
            <replaceregex pattern="^Gerrit: .*" replace="gerrit" />
            <replaceregex pattern="^Started by " replace="" />
            <replaceregex pattern="^Gestartet durch " replace="" />
            <replaceregex pattern="Benutzer" replace="user" />
          </filterchain>
        </loadresource>
      </then>
    </if>

    <!-- build.type -->
    <if>
      <equals arg1="${env.BUILD_TYPE}" arg2="&lt;default&gt;" />
      <then>
        <condition property="build.type" value="${weekly}" else="N">
          <equals arg1="${build.trigger}" arg2="timer" />
        </condition>
      </then>
      <else>
        <property name="build.type" value="${env.BUILD_TYPE}" />
      </else>
    </if>

    <!-- site.signing -->
    <condition property="site.signing" value="true" else="false">
      <and>
        <not>
          <equals arg1="${build.type}" arg2="N" />
        </not>
      	<or>
      	  <equals arg1="${env.HUDSON_URL}" arg2="https://hudson.eclipse.org/cdo/" />
      	  <equals arg1="${env.HUDSON_URL}" arg2="https://hudson.eclipse.org/hudson/" />
      	</or>
      </and>
    </condition>

    <!-- eclipse.staging.area -->
    <if>
      <equals arg1="${site.signing}" arg2="true" />
      <then>
        <property name="eclipse.staging.area" value="/shared/download-staging.priv/modeling/emf/cdo/${env.JOB_NAME}" />
      </then>
    </if>
  </target>

  <!-- ========== -->
  <!-- Init Local -->
  <!-- ========== -->

  <target name="init.local" unless="env.HUDSON_URL">
    <fail unless="build.root" message="The property 'build.root' must be defined in a 'local.properties' file" />

    <property name="build.location" value="local" />
    <property name="build.trigger" value="manual" />
    <property name="site.signing" value="false" />
    <property name="git.clone" value="${build.root}/git" />

    <!-- build.timestamp -->
    <tstamp>
      <format property="build.timestamp" pattern="yyyy-MM-dd_HH-mm-ss" />
    </tstamp>

    <!-- git.clone -->
    <if>
      <and>
        <equals arg1="${keep.git}" arg2="true" />
        <available file="${git.clone}" type="dir" />
      </and>
      <then>
        <echo message="Keeping Git clone" />
      </then>
      <else>
        <echo message="Copying Git clone from ${original.git.dir}" />
        <cleandir dir="${git.clone}" />
        <copy todir="${git.clone}">
          <fileset dir="${original.git.dir}" defaultexcludes="false">
            <exclude name="**/*.class" />
          </fileset>
        </copy>
      </else>
    </if>
  </target>

  <!-- =============== -->
  <!-- Init Properties -->
  <!-- =============== -->

  <target name="init.properties" depends="init.hudson,init.local">
    <condition property="no.proxy" value="${env.no_proxy}, dev.eclipse.org" else="dev.eclipse.org">
      <isset property="env.no_proxy" />
    </condition>

    <property name="git.clone" location="${build.root}/git" />
    <property name="features" location="${git.clone}/features" />
    <property name="plugins" location="${git.clone}/plugins" />
    <property name="releng" location="${plugins}/org.eclipse.emf.cdo.releng" />
    <property name="releng.help" location="${plugins}/org.eclipse.emf.cdo.releng.help" />
    <property name="test.report" location="${build.root}/test-report.xml" />
    <property name="tools" location="${build.root}/tools" />
    <property name="zips" location="${build.root}/zips" />

    <property name="result" location="${build.root}/result" />
    <property name="ws" location="${result}/ws" />
    <property name="tp" location="${result}/tp" />

    <property name="buckminster.output.root" location="${result}/output" />
    <property name="buckminster.temp.root" location="${result}/temp" />

    <!-- build.qualifier -->
    <tempfile property="build.qualifier.tmp"
              destdir="${java.io.tmpdir}"
              prefix="build-qualifier-"
              suffix=".tmp"
              deleteonexit="true" />
    <echo message="build.qualifier.date=${build.timestamp}" file="${build.qualifier.tmp}" />
    <replaceregexp file="${build.qualifier.tmp}">
      <regexp pattern="([0-9]*)-([0-9]*)-([0-9]*)_([0-9]*)-([0-9]*)-([0-9]*)" />
      <substitution expression="\1\2\3-\4\5" />
    </replaceregexp >
    <property file="${build.qualifier.tmp}" />
  	<property name="build.qualifier" value="${build.type}${build.qualifier.date}" />
  	<property name="build.version" value="v${build.qualifier.date}" />

    <!-- build-info.xml -->
    <echoxml file="${build.root}/build-info.xml">
      <build stream="${stream}"
             branch="${branch}"
             train="${train}"
             eclipse="${eclipse}"
             emf="${emf}"
             type="${build.type}"
             timestamp="${build.timestamp}"
             qualifier="${build.qualifier}"
             trigger="${build.trigger}"
             hudson="${env.HUDSON_URL}"
             revision="${env.GIT_COMMIT}"
             job="${env.JOB_NAME}"
             number="${env.BUILD_NUMBER}" />
    </echoxml>

    <!-- Echo -->
    <echo message="stream = ${stream}" />
    <echo message="branch = ${branch}" />
    <echo message="train = ${train}" />
    <echo message="build.type = ${build.type}" />
    <echo message="build.location = ${build.location}" />
    <echo message="build.trigger = ${build.trigger}" />
    <echo message="build.timestamp = ${build.timestamp}" />
    <echo message="build.qualifier = ${build.qualifier}" />
    <echo message="site.signing = ${site.signing}" />
  </target>

  <!-- ========== -->
  <!-- Init Tools -->
  <!-- ========== -->

  <target name="init.tools" depends="init.properties">
    <if>
      <and>
        <equals arg1="${keep.tools}" arg2="true" />
        <available file="${tools}/director" type="dir" />
        <available file="${tools}/buckminster" type="dir" />
      </and>
      <then>
        <echo message="Keeping tool installation" />
      </then>
      <else>
        <!-- Delete existing tool installations -->
        <delete includeemptydirs="true" failonerror="false">
          <fileset dir="${tools}" defaultexcludes="false">
            <include name="director/**" />
            <include name="buckminster/**" />
          </fileset>
        </delete>

        <!-- Install director -->
        <echo message="" />
        <echo message="Installing director" />
        <tempfile destdir="${java.io.tmpdir}"
                  prefix="director-"
                  suffix=".zip"
                  property="director.zip"
                  deleteonexit="true" />
        <get src="http://download.eclipse.org/tools/buckminster/products/director_latest.zip" dest="${director.zip}" />
        <mkdir dir="${tools}" />
        <unzip src="${director.zip}" dest="${tools}" />
        <delete file="${director.zip}" />

        <!-- Install buckminster -->
        <echo message="" />
        <echo message="Installing buckminster" />
        <eclipse app="director">
          <properties>
            <sysproperty key="org.eclipse.update.jarprocessor.pack200" value="/shared/common/jdk1.8.0_x64-latest/bin" />
            <sysproperty key="eclipse.p2.mirrors" value="false" />
            <sysproperty key="eclipse.p2.MD5Check" value="false" />
          </properties>
          <args>
            <arg value="-r" />
            <arg value="http://download.eclipse.org/tools/buckminster/headless-4.5" />
            <arg value="-r" />
            <arg value="http://download.eclipse.org/releases/mars" />
            <arg value="-r" />
            <arg value="http://download.eclipse.org/oomph/updates/latest" />
            <arg value="-r" />
            <arg value="http://download.eclipse.org/modeling/emf/cdo/drops/R20160607-1209" />
            <arg value="-d" />
            <arg value="${tools}/buckminster" />
            <arg value="-p" />
            <arg value="Buckminster" />
            <arg value="-i" />
            <arg value="org.eclipse.buckminster.cmdline.product" />
            <arg value="-i" />
            <arg value="org.eclipse.buckminster.core.headless.feature.feature.group" />
            <arg value="-i" />
            <arg value="org.eclipse.buckminster.pde.headless.feature.feature.group" />
            <arg value="-i" />
            <arg value="org.eclipse.buckminster.git.headless.feature.feature.group" />
            <arg value="-i" />
            <arg value="org.eclipse.ant.launching" />
            <arg value="-i" />
            <arg value="org.eclipse.pde.api.tools.ee.feature.feature.group" />
            <arg value="-i" />
            <arg value="org.eclipse.oomph.version.headless.feature.group" />
            <arg value="-i" />
            <arg value="org.eclipse.emf.cdo.releng.apireports.feature.group" />
          </args>
        </eclipse>

        <!-- See http://wiki.eclipse.org/Hudson#Configuring_a_proxy_for_the_p2_director -->
        <copy file="${releng}/${build.location}/org.eclipse.core.net.prefs"
              todir="${tools}/buckminster/configuration/.settings"
              overwrite="true" />
      </else>
    </if>
  </target>

  <!-- ========= -->
  <!-- Provision -->
  <!-- ========= -->

  <target name="provision" depends="init.tools" description="Imports projects and binaries">
    <if>
      <not>
        <equals arg1="${skip.provision}" arg2="true" />
      </not>
      <then>
        <!-- Cleanup build.root -->
        <delete failonerror="false" includeemptydirs="true">
          <fileset dir="${build.root}" defaultexcludes="false">
            <include name="zips/**" />
            <include name="*.css" />
            <include name="*.html" />
            <include name="*.xml" />
            <include name="*.log" />
            <include name="*.txt" />
            <exclude name="build-info.xml" />
          </fileset>
        </delete>

        <!-- Test Report -->
        <copy file="${releng}/hudson/test-report-empty.xml" tofile="${test.report}" overwrite="true" verbose="true" />

        <!-- Workspace -->
        <echo message="Initializing workspace" />
        <delete includeemptydirs="true" failonerror="false">
          <fileset dir="${result}" defaultexcludes="false">
            <include name="ws/**" />
            <include name="*.properties" />
          </fileset>
        </delete>
        <mkdir dir="${result}" />
        <unzip dest="${ws}" src="${releng}/hudson/workspace.zip" />

        <!-- API Baseline -->
        <if>
          <equals arg1="${build.location}" arg2="local" />
          <then>
            <echo message="Using local baseline ${baseline.dir}" />
            <replaceregexp file="${releng}/hudson/api_baseline.xml"
                           match="path=&quot;[^&quot;]+&quot;"
                           replace="path=&quot;${baseline.dir}&quot;" />
          </then>
        </if>
        <copy file="${releng}/hudson/api_baseline.xml" tofile="${releng}/hudson/api_baseline.target" verbose="true" />

        <!-- Target Platform -->
        <if>
          <and>
            <equals arg1="${keep.tp}" arg2="true" />
            <available file="${tp}" type="dir" />
          </and>
          <then>
            <echo message="Keeping target platform ${tp}" />
          </then>
          <else>
            <echo message="Purging target platform ${tp}" />
            <delete failonerror="false" includeemptydirs="true">
              <fileset dir="${result}" defaultexcludes="false">
                <include name="tp/**" />
              </fileset>
            </delete>
          </else>
        </if>
        <echo message="Importing binaries into ${tp}" />
        <mkdir dir="${tp}" />

        <!-- Import MSpec -->
        <echo message="Importing projects into ${ws}" />
        <buckminster command="setpref">
          <cmdargs>
            <arg value="maxParallelResolutions=1" />
          </cmdargs>
        </buckminster>
        <buckminster command="import">
          <cmdargs>
            <arg value="-B" />
            <arg value="${build.root}/bom.xml" />

            <arg value="-P" />
            <arg value="${basedir}/build.properties" />

            <!-- Last argument: -->
            <arg value="${basedir}/build.mspec" />
          </cmdargs>
        </buckminster>

        <echo message="" />
        <echo message="Setting API baseline" />
        <buckminster command="addbaseline">
          <cmdargs>
            <arg value="-A" />
            <arg value="CDO Baseline" />
          </cmdargs>
        </buckminster>

      	<replace.product.version feature="org.eclipse.emf.cdo.explorer.product" profile="CDOExplorer" version="${build.version}" />
      	<replace.product.version feature="org.eclipse.emf.cdo.server.product" profile="CDOServer" version="${build.version}" />
      </then>
    </if>
  </target>

  <!-- ===== -->
  <!-- Build -->
  <!-- ===== -->

  <target name="build" depends="provision" description="Builds all projects and generates build-infos.xml">
    <if>
      <not>
        <equals arg1="${skip.build}" arg2="true" />
      </not>
      <then>
        <echo message="Building all projects in workspace ${ws}" />
        <buckminster command="build">
          <cmdargs>
            <arg value="--thorough" />
            <arg value="--logfile" />
            <arg value="${build.root}/build-log.txt" />
          </cmdargs>
        </buckminster>

        <delete failonerror="false" includeemptydirs="true">
          <fileset dir="${plugins}">
            <exclude name="org.eclipse.emf.cdo.releng.doc/**" />
            <include name="*.doc/bin/**" />
            <include name="*.help/bin/**" />
          </fileset>
        </delete>
      </then>
    </if>
  </target>

  <!-- ==== -->
  <!-- Test -->
  <!-- ==== -->

  <target name="test" depends="build" description="Runs the tests">
    <if>
      <equals arg1="${skip.test}" arg2="true" />
      <then>
        <echo message="Skipping test" />
      </then>
      <else>
        <condition property="launch.config"
                   value="org.eclipse.emf.cdo.tests.all/CDO GerritTests"
                   else="org.eclipse.emf.cdo.tests.db/CDO AllTests (H2 ALL)">
          <isset property="GERRIT_CHANGE_ID" />
        </condition>
        <echo message="Running ${launch.config}" />
        <buckminster command="junit">
          <cmdargs>
            <arg value="-l" />
            <arg value="${launch.config}.launch" />
            <arg value="-o" />
            <arg value="${test.report}" />
            <arg value="--terseXML" />
            <arg value="--flatXML" />
          </cmdargs>
        </buckminster>
      </else>
    </if>
  </target>

  <!-- ======== -->
  <!-- Generate -->
  <!-- ======== -->

  <target name="generate" depends="build" description="Generates the site and other artifacts">
    <if>
      <or>
        <isset property="GERRIT_CHANGE_ID" />
        <equals arg1="${skip.generate}" arg2="true" />
      </or>
      <then>
        <echo message="Skipping generate" />
      </then>
      <else>
        <if>
          <not>
            <equals arg1="${skip.generate.site}" arg2="true" />
          </not>
          <then>
            <generate.site feature="org.eclipse.emf.cdo.site" />
          </then>
        </if>

        <if>
          <not>
            <equals arg1="${skip.generate.help}" arg2="true" />
          </not>
          <then>
            <generate.help />
          </then>
        </if>

        <if>
          <not>
            <equals arg1="${skip.generate.index}" arg2="true" />
          </not>
          <then>
            <generate.index />
          </then>
        </if>

        <if>
          <not>
            <equals arg1="${skip.generate.bookmarks}" arg2="true" />
          </not>
          <then>
            <generate.bookmarks />
          </then>
        </if>

        <if>
          <not>
            <equals arg1="${skip.generate.dropins}" arg2="true" />
          </not>
          <then>
            <generate.dropins />
          </then>
        </if>

        <if>
          <not>
            <equals arg1="${skip.generate.apireports}" arg2="true" />
          </not>
          <then>
            <generate.apireports />
          </then>
        </if>
      </else>
    </if>
  </target>

  <!-- === -->
  <!-- All -->
  <!-- === -->

  <target name="all" depends="test,generate" description="Runs the tests and generates the site and other artifacts" />

</project>
