<project
    name="PDECustomTargets"
    default="noDefault"
    basedir=".">

    <property
        name="patchFeature"
        value="org.eclipse.wtp.patch.assembly.feature" />


  <!-- = = = standard properties pattern = = = -->

  <!-- 
      Note to be cross-platform, "environment variables" are only appropriate for 
      some variables, e.g. ones we set, since properties are case sensitive, even if 
      the environment variables on your operating system are not, e.g. it will 
      be ${env.Path} not ${env.PATH} on Windows -->
  <property environment="env" />

  <!-- 
      Let users override standard properties, if desired.
      If directory, file, or some properties do not exist,  
      then standard properties will be used.
  -->
  <property
      file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties" />

  <!-- let this project specify properties, if not already set -->
  <property file="build.properties" />


  <property
      name="cvsProtocol"
      value="${env.BUILD_CVS_WRITE_PROTOCOL}" />
  <property
      name="cvsUser"
      value="${env.BUILD_CVS_WRITE_USER}" />
  <property
      name="cvsServer"
      value="${env.BUILD_CVS_SERVER}" />
  <property
      name="cvsRoot"
      value="${env.BUILD_CVS_ROOT}" />
    	
    <!-- ===================================================================== -->
    <!-- Run a given ${target} on all elements being built -->
    <!-- Add on <ant> task for each top level element being built. -->
    <!-- ===================================================================== -->
    <target name="allElements">
        <echo
            level="info"
            message="Target:${target} " />
        <echo
            level="debug"
            message="basedir: ${basedir}" />
        <echo
            level="debug"
            message="component: ${component}" />
        <echo
            level="debug"
            message="buildDirectory: ${buildDirectory}" />
        <echo
            level="debug"
            message="baseLocation: ${baseLocation}" />
        <echo
            level="debug"
            message="patchFeature: ${patchFeature}" />
        <ant
            antfile="${genericTargets}"
            target="${target}">
            <property
                name="type"
                value="feature" />
            <property
                name="id"
                value="${patchFeature}" />
        </ant>
    </target>


    <!-- ===================================================================== -->
    <!-- Targets to assemble the built elements for particular configurations  -->
    <!-- These generally call the generated assemble scripts (named in -->
    <!-- ${assembleScriptName}) but may also add pre and post processing -->
    <!-- Add one target for each root element and each configuration -->
    <!-- ===================================================================== -->

    <target name="assemble.org.eclipse.wtp.patch.assembly.feature">
        <property
            name="archiveName"
            value="wtp-${buildLabel}.zip" />
        <ant
            antfile="${assembleScriptName}"
            dir="${buildDirectory}" />

    </target>

    <target name="prePackage" />

    <target name="postPackage">
        <property
            name="archiveName"
            value="wtp-${buildLabel}.zip" />

        <ant
            antfile="${wtp.builder.home}/scripts/build/buildutilities.xml"
            target="unpackUpdateJarsAndCreateZippedPackages">
            <property
                name="buildDirectory"
                value="${buildDirectory}" />
            <property
                name="buildLabel"
                value="${buildLabel}" />
            <property
                name="archiveName"
                value="${archiveName}" />
        </ant>


    </target>



    <!-- ===================================================================== -->
    <!-- Check out map files from correct repository -->
    <!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->
    <!-- ===================================================================== -->
    <target
        name="checkLocal"
        depends="check.useLocalMaps"
        if="useLocalMaps">
        <available
            property="mapsLocal"
            file="${buildDirectory}/maps/${env.RELENG}" />
    </target>
    <target
        name="getMapFiles"
        depends="checkLocal"
        unless="mapsLocal">

        <!-- ***  change the repo info -->
        <property
            name="mapCvsRoot"
            value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}" />

        <!-- if not otherwise set, assume HEAD -->
        <property
            name="mapVersionTag"
            value="HEAD" />





        <property
            name="cvsPackage"
            value="${env.RELENGMAPS}" />
        <echo
            level="debug"
            message="${mapCvsRoot} ${mapVersionTag} " />
        <echo
            level="debug"
            message="cvsPackage = ${cvsPackage} " />
        <cvs
            cvsRoot="${mapCvsRoot}"
            package="${cvsPackage}"
            dest="${buildDirectory}/maps"
            tag="${mapVersionTag}"
            quiet="${env.CVS_QUIET}"
            reallyquiet="${env.CVS_REALLY_QUIET}" />
        <!--
            <cvs
            cvsRoot="${mapCvsRoot}"
            package="${env.RELENGMAPS}"
            dest="${buildDirectory}/maps"
            tag="${mapVersionTag}"
            quiet="${env.CVS_QUIET}"
            reallyquiet="${env.CVS_REALLY_QUIET}" />            	
        -->
        <!--tag the map files project-->
        <antcall target="tagMapFiles">
            <param
                name="mapCvsRoot"
                value="${mapCvsRoot}" />
        </antcall>

        <!-- copy all maps to the same place. Be sure to copy only "maps", as there may be "dependancies" etc, 
            that could be out of date -->
        <!-- turns out this "one flat directory" appears not needed!
            <copy todir="${buildDirectory}/maps/${env.RELENG}/maps" flatten="true">
            <fileset dir="${buildDirectory}/maps/">
            <include name="**/*.map" />
            </fileset>
            </copy>
        -->
    </target>

    <target
        name="tagMapFiles"
        if="tagMaps">
        <cvs
            cvsRoot="${mapCvsRoot}"
            dest="${buildDirectory}/maps"
            command="tag v${buildType}${timestamp}"
            quiet="${env.CVS_QUIET}"
            reallyquiet="${env.CVS_REALLY_QUIET}" />
    </target>


    <!-- ===================================================================== -->
    <!-- Steps to do before setup -->
    <!-- ===================================================================== -->
    <target name="preSetup"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do after setup but before starting the build proper -->
    <!-- ===================================================================== -->
    <target name="postSetup">
        <dirname
            file="${ant.file}"
            property="component.dir" />
        <echo
            level="debug"
            message="ant.file: ${ant.file}" />
        <echo
            level="debug"
            message="component.dir: ${component.dir}" />

        <ant
            antfile="${component.dir}/dependency.xml"
            target="get">
            <property
                name="dependency.properties"
                value="${buildDirectory}/maps/${env.RELENG}/maps/dependencies.properties" />
            <property
                name="base.install.dir"
                value="${buildRoot}" />
        </ant>

    </target>

    <!-- ===================================================================== -->
    <!-- Steps to do before fetching the build elements -->
    <!-- ===================================================================== -->
    <target name="preFetch"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do after fetching the build elements -->
    <!-- ===================================================================== -->
    <target name="postFetch"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do before generating the build scripts. -->
    <!-- ===================================================================== -->
    <target name="preGenerate"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do after generating the build scripts. -->
    <!-- ===================================================================== -->
    <target name="postGenerate"></target>


    <!-- ===================================================================== -->
    <!-- Steps to do before running the build.xmls for the elements being built. -->
    <!-- ===================================================================== -->
    <target name="preProcess">
        <replace
            dir="${buildDirectory}/plugins"
            value="${timestamp}"
            token="@build@">
            <include name="**/about.mappings" />
        </replace>
    </target>

    <!-- ===================================================================== -->
    <!-- Steps to do after running the build.xmls for the elements being built. -->
    <!-- ===================================================================== -->
    <target name="postProcess">
        <condition property="logsAvailable">
            <istrue value="${javacVerbose}" />
        </condition>
        <antcall target="gatherLogs" />
    </target>


    <!-- ===================================================================== -->
    <!-- Steps to do before running assemble. -->
    <!-- ===================================================================== -->
    <target name="preAssemble"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do after  running assemble. -->
    <!-- ===================================================================== -->
    <target name="postAssemble"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do after the build is done. -->
    <!-- ===================================================================== -->
    <target name="postBuild"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do to test the build results -->
    <!-- ===================================================================== -->
    <target name="test"></target>

    <!-- ===================================================================== -->
    <!-- Steps to do to publish the build results -->
    <!-- ===================================================================== -->
    <target name="publish"></target>


    <!-- ===================================================================== -->
    <!-- Helper targets -->
    <!-- ===================================================================== -->
    <target
        name="gatherLogs"
        if="logsAvailable">
        <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
        <echo
            level="debug"
            message="logExtension: ${logExtension}" />
        <antcall target="allElements">
            <param
                name="target"
                value="gatherLogs" />
          <param
              name="logExtension"
              value="${logExtension}" />

        </antcall>

        <unzip
            dest="${buildDirectory}/${buildLabel}/compilelogs"
            overwrite="true">
            <fileset dir="${buildDirectory}/features/${patchFeature}">
                <include name="**/*.log.zip" />
            </fileset>
        </unzip>

    </target>

    <target
        name="clean"
        unless="noclean">
        <antcall target="allElements">
            <param
                name="target"
                value="cleanElement" />
        </antcall>
    </target>

    <!-- ===================================================================== -->
    <!-- Default target                                                        -->
    <!-- ===================================================================== -->
    <target name="noDefault">
        <echo
            level="error"
            message="You must specify a target when invoking this file" />
    </target>

    <target name="check.useLocalMaps">
        <condition property="useLocalMaps">
            <equals
                arg1="${env.USE_LOCAL_MAPS}"
                arg2="true" />
        </condition>
    </target>

</project>
