<project
    name="Build specific targets and properties"
    default="noDefault">



    <!-- ===================================================================== -->
    <!-- Run a given ${target} on all elements being built -->
    <!-- Add on <ant> task for each top level element being built. -->
    <!-- ===================================================================== -->
    <target name="allElements">
        <echo message="Target:${target} " />
        <echo message="basedir: ${basedir}" />
        <echo message="buildDirectory: ${buildDirectory}" />
        <echo message="baseLocation: ${baseLocation}" />
        <ant
            antfile="${genericTargets}"
            target="${target}">
            <property
                name="type"
                value="feature" />
            <property
                name="id"
                value="org.eclipse.dltk.python.tests" />
        </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.dltk.python.tests">
        <property
            name="archiveName"
            value="dltk-python-Automated_Tests-${buildLabel}-incubation.zip" />
        <ant
            antfile="${assembleScriptName}"
            dir="${buildDirectory}" />
    </target>

    <target name="prePackage" />


    <target name="postPackage">
        <property
            name="archiveName"
            value="dltk-python-Automated_Tests-${buildLabel}-incubation.zip" />

        <ant
            antfile="${dltk.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">
        <available
            property="mapsLocal"
            file="${buildDirectory}/maps/${cvsPrefix}/releng.maps/maps" />
    </target>
    <target
        name="getMapFiles"
        depends="checkLocal"
        unless="mapsLocal">

        <!-- ***  change the repo info -->
        <property
            name="mapCvsRoot"
            value=":${cvsProtocol}:${cvsUser}@${cvsMapsServer}:${cvsRoot}" />
        <property
            name="mapVersionTag"
            value="HEAD" />
        <property
            name="cvsPackage"
            value="${cvsPrefix}/releng.maps/maps" />
        <echo message="${mapCvsRoot} ${mapVersionTag} " />
        <echo message="cvsPackage = ${cvsPackage} " />
        <cvs
            cvsRoot="${mapCvsRoot}"
            package="${cvsPackage}"
            dest="${buildDirectory}/maps"
            tag="${mapVersionTag}" />
        <!--tag the map files project-->
        <antcall target="tagMapFiles">
            <param
                name="mapCvsRoot"
                value="${mapCvsRoot}" />
        </antcall>
    </target>

    <target
        name="tagMapFiles"
        if="tagMaps">
        <cvs
            cvsRoot="${mapCvsRoot}"
            dest="${buildDirectory}/maps"
            command="tag v${buildType}${timestamp}" />
    </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 message="ant.file: ${ant.file}" />
        <echo message="component.dir: ${component.dir}" />

        <ant
            antfile="${component.dir}/dependency.xml"
            target="get">
            <property
                name="dependency.properties"
                value="${buildDirectory}/maps/${cvsPrefix}/releng.maps/maps/dependencies.properties" />
            <property
                name="base.install.dir"
                value="${buildRoot}" />
        </ant>
        <!--fetch the additional pieces to build wst tests -->
        <property
            name="featureOnly"
            value="false" />
        <property
            name="featureAndPlugins"
            value="true" />
        <property
            name="featuresRecursively"
            value="true" />
        <ant
            antfile="genericTargets.xml"
            dir="${pde.build.scripts}"
            target="fetchElement">
            <property
                name="type"
                value="feature" />
            <property
                name="id"
                value="org.eclipse.dltk.python" />
        </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="postGenerate">
        <customizeAccessRules bundleDirectory="${buildDirectory}/plugins" defaultRules="+org/eclipse/dltk/**/*" />
    </target>
    <!-- ===================================================================== -->
    <!-- Steps to do after generating the build scripts. -->
    <!-- ===================================================================== -->
    <target name="preGenerate"></target>


    <!-- ===================================================================== -->
    <!-- Steps to do before running the build.xmls for the elements being built. -->
    <!-- ===================================================================== -->
    <target name="preProcess"></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 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}/testcompilelogs" />
        <echo message="logExtension: ${logExtension}" />
        <antcall target="allElements">
            <param
                name="target"
                value="gatherLogs" />
            <param
                name="logExtension"
                value="${logExtension}" />
        </antcall>
        <unzip
            dest="${buildDirectory}/${buildLabel}/testcompilelogs"
            overwrite="true">
            <fileset dir="${buildDirectory}/features/org.eclipse.dltk.python.tests">
                <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 message="You must specify a target when invoking this file" />
    </target>

</project>
