<?xml version="1.0" encoding="UTF-8"?>
    <!--
        This script is to create some zips with core features only.
        Limited, specialized usefulness, so they are not linked or
        advertised. That is, could change at any time.
    -->
<project
    default="build"
    basedir=".">
    <!--
        These properties are normally set by calling task, but for
        "local" tests from command line, they can be set here
    -->
    <property
        name="buildDirectory"
        value="/shared/webtools/committers/wtp-R3.2.2-M/20100901154417"/>
    <property
        name="buildLabel"
        value="M-3.2.2-20100901154417"/>
    <property
        name="wtp.builder.home"
        value="/shared/webtools/projectBuilders/wtp-R3.2.2-M/webtools.releng/releng.wtpbuilder"/>
    <echo message="buildDirectory: ${buildDirectory}"/>
    <echo message="buildLabel: ${buildLabel}"/>
    <echo message="wtp.builder.home: ${wtp.builder.home}"/>
    <!--
        three convenience variables to help avoid typos, etc. Should
        never need to be changed
    -->
    <property
        name="tempDir"
        value="${buildDirectory}/${buildLabel}/tempdir"/>
    <property
        name="tempRunnableEclipse"
        value="${tempDir}/eclipse"/>
    <property
        name="tempRepo"
        value="${buildDirectory}/${buildLabel}/temprepo"/>
    <target name="build">

        <antcall target="createNoOptionalZip">
            <param
                name="newarchiveName"
                value="wtp-noop-${buildLabel}.zip"/>
        </antcall>
        <antcall target="createNoOptionalSDKZip">
            <param
                name="newarchiveName"
                value="wtp-sdk-noop-${buildLabel}.zip"/>
        </antcall>

        <antcall target="createNoOptionalTestZip">
            <param
                name="newarchiveName"
                value="wtp-tests-noop-${buildLabel}.zip"/>
        </antcall>
    </target>
    <target name="createNoOptionalZip">
        <ant
            antfile="${wtp.builder.home}/distribution/wtp.build/ziputils.xml"
            target="premirrortasks"/>
        <p2.mirror
            source="${buildDirectory}/${buildLabel}/repository"
            destination="${tempRepo}"
            log="${buildDirectory}/${buildLabel}/mirrorlog-${newarchiveName}.log"
            verbose="true">
            <slicingoptions
                followstrict="true"
                includeNonGreedy="false"
                includeOptional="false"/>
            <iu id="org.eclipse.wst.web_ui.feature.feature.group"/>
            <iu id="org.eclipse.jst.enterprise_ui.feature.feature.group"/>
            <iu id="org.eclipse.jpt.jpa.feature.feature.group"/>
            <iu id="org.eclipse.wst.xml_ui.feature.feature.group"/>
            <iu id="org.eclipse.wst.jsdt.feature.feature.group"/>
            <iu id="org.eclipse.wst.common.fproj.feature.group"/>
            <iu id="org.eclipse.wst.server_adapters.feature.feature.group"/>
            <iu id="org.eclipse.jst.common.fproj.enablement.jdt.feature.group"/>
            <iu id="org.eclipse.jst.server_ui.feature.feature.group"/>
            <iu id="org.eclipse.jst.server_adapters.feature.feature.group"/>
            <iu id="org.eclipse.jst.server_adapters.ext.feature.feature.group"/>
            <iu id="org.eclipse.jst.web_ui.feature.feature.group"/>
            <iu id="org.eclipse.jsf.feature.feature.group"/>
        </p2.mirror>
        <ant
            antfile="${wtp.builder.home}/distribution/wtp.build/ziputils.xml"
            target="postmirrortasks"/>
    </target>
    <target name="createNoOptionalSDKZip">
        <ant
            antfile="${wtp.builder.home}/distribution/wtp.build/ziputils.xml"
            target="premirrortasks"/>
        <p2.mirror
            source="${buildDirectory}/${buildLabel}/repository"
            destination="${tempRepo}"
            log="${buildDirectory}/${buildLabel}/mirrorlog-${newarchiveName}.log"
            verbose="true">
            <slicingoptions
                followstrict="true"
                includeNonGreedy="false"
                includeOptional="false"/>
            <iu id="org.eclipse.wst.web_sdk.feature.feature.group"/>
            <iu id="org.eclipse.jst.enterprise_sdk.feature.feature.group"/>
            <iu id="org.eclipse.jpt.jpa_sdk.feature.feature.group"/>
            <iu id="org.eclipse.wst.xml_sdk.feature.feature.group"/>
            <iu id="org.eclipse.wst.jsdt_sdk.feature.feature.group"/>
            <iu id="org.eclipse.wst.common.fproj.sdk.feature.group"/>
            <iu id="org.eclipse.wst.server_adapters.sdk.feature.feature.group"/>
            <iu id="org.eclipse.jst.common.fproj.enablement.jdt.sdk.feature.group"/>
            <iu id="org.eclipse.jst.server_sdk.feature.feature.group"/>
            <iu id="org.eclipse.jst.server_adapters.sdk.feature.feature.group"/>
            <iu id="org.eclipse.jst.server_adapters.ext.sdk.feature.feature.group"/>
            <iu id="org.eclipse.jst.web_sdk.feature.feature.group"/>
            <iu id="org.eclipse.jsf_sdk.feature.feature.group"/>
        </p2.mirror>
        <ant
            antfile="${wtp.builder.home}/distribution/wtp.build/ziputils.xml"
            target="postmirrortasks"/>
    </target>
    <target name="createNoOptionalTestZip">
        <ant
            antfile="${wtp.builder.home}/distribution/wtp.build/ziputils.xml"
            target="premirrortasks"/>
        <p2.mirror
            source="${buildDirectory}/${buildLabel}/repository"
            destination="${tempRepo}"
            log="${buildDirectory}/${buildLabel}/mirrorlog-${newarchiveName}.log"
            verbose="true">
            <slicingoptions
                followstrict="true"
                includeNonGreedy="false"
                includeOptional="false"/>
             <!--
             may eventually want to break jpt tests into "core" parts and "eclipselink" parts. For now, exclude all.
            <iu
                id="org.eclipse.jpt.jpa.tests.feature.feature.group"/>
            <iu
                id="org.eclipse.jpt.jpa.eclipselink.tests.feature.feature.group"/>
                -->
            <iu id="org.eclipse.jst.enterprise_tests.feature.feature.group"/>
            <iu id="org.eclipse.jst.jsf.tests.feature.feature.group"/>
            <iu id="org.eclipse.jst.server_adapters.ext_tests.feature.feature.group"/>
            <iu id="org.eclipse.jst.server_tests.feature.feature.group"/>
            <iu id="org.eclipse.jst.web_tests.feature.feature.group"/>
            <iu id="org.eclipse.wst.common_tests.feature.feature.group"/>
            <iu id="org.eclipse.wst.jsdt_tests.feature.feature.group"/>
            <iu id="org.eclipse.wst.server_tests.feature.feature.group"/>
            <iu id="org.eclipse.wst.web_tests.feature.feature.group"/>
            <iu id="org.eclipse.wst.ws_tests.feature.feature.group"/>
            <iu id="org.eclipse.wst.xml_tests.feature.feature.group"/>
            <iu id="org.eclipse.wtp.releng.tests.feature.feature.group"/>
        </p2.mirror>
        <ant
            antfile="${wtp.builder.home}/distribution/wtp.build/ziputils.xml"
            target="postmirrortasks"/>
    </target>
</project>