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

	<property name="postingDirectory" value="${buildDirectory}" />
	<property name="package.version" value="1_6_0" />
	<property name="archiveName" value="dtp-all-${package.version}.zip"/>

	
	<!-- ===================================================================== -->
	<!-- Run a given ${target} on all elements being built -->
	<!-- ===================================================================== -->
	<target name="allElements">
		<ant antfile="${genericTargets}" target="${target}" >
			<property name="type" value="feature" />
			<property name="id" value="org.eclipse.datatools.sdk-all.feature" />
		</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.datatools.sdk-all.feature">
		<property name="archiveName" value="dtp-all-${package.version}.zip"/>
		<antcall target="assemble" />
	</target>


	<target name="assemble">
		<property name="archiveFullPath" value="${buildDirectory}/${buildLabel}/${archiveName}" />
		<ant antfile="${assembleScriptName}" />
	</target>
	
	<target name="postPackage">
	</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/org.eclipse.datatools.releng" />
	</target>
	
	<target name="getMapFiles" depends="checkLocal" unless="mapsLocal">

		<!-- ***  change the repo info -->
		<property name="mapCvsRoot" value=":pserver:anonymous@dev.eclipse.org:/cvsroot/datatools" />
		<property name="mapVersionTag" value="HEAD" />

        <cvs cvsRoot="${mapCvsRoot}" 
             package="org.eclipse.datatools.releng" dest="${buildDirectory}/maps" tag="${mapVersionTag}" />

        <cvs cvsRoot="${mapCvsRoot}" 
             package="org.eclipse.datatools.connectivity/releng/org.eclipse.datatools.connectivity.releng" 
             dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
        <cvs cvsRoot="${mapCvsRoot}" 
             package="org.eclipse.datatools.enablement/releng/org.eclipse.datatools.enablement.releng" 
             dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
        <cvs cvsRoot="${mapCvsRoot}" 
             package="org.eclipse.datatools.modelbase/releng/org.eclipse.datatools.modelbase.releng" 
             dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
        <cvs cvsRoot="${mapCvsRoot}" 
             package="org.eclipse.datatools.sqltools/releng/org.eclipse.datatools.sqltools.releng" 
             dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
        <cvs cvsRoot="${mapCvsRoot}" 
             package="org.eclipse.datatools.incubator/releng/org.eclipse.datatools.incubator.releng" 
             dest="${buildDirectory}/maps" tag="${mapVersionTag}" />


		<!--compare the map files project-->
		<antcall target="compareMapFiles" />
		<!--tag the map files project-->
		<antcall target="tagMapFiles" />

	</target>
	<target name="compareMapFiles" if="compareMaps">
		<property file="${mapTag.properties}"/>
		<property name="cvsDiffFile" value="${buildDirectory}/cvsDiff.txt" />
		<cvs cvsRoot="${mapCvsRoot}" dest="${buildDirectory}/maps" command="diff -w -r ${lastMapTag}" output="${cvsDiffFile}" />
		<modifiedMaps mapDiffFile="${cvsDiffFile}" />
	</target>

	<target name="tagMapFiles" if="tagMaps">
		<!-- Stores tag on the filesystem so map files can be compared -->
		<echo file="${mapTag.properties}">
		lastMapTag=r18_${buildId}
		</echo>
		<echo message="tagging org.eclipse.datatools.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.releng" command="tag r18_${buildId}" />
		<echo message="tagging org.eclipse.datatools.connectivity.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.connectivity/releng/org.eclipse.datatools.connectivity.releng" command="tag r18_${buildId}" />
		<echo message="tagging org.eclipse.datatools.enablement.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.enablement/releng/org.eclipse.datatools.enablement.releng" command="tag r18_${buildId}" />
		<echo message="tagging org.eclipse.datatools.modelbase.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.modelbase/releng/org.eclipse.datatools.modelbase.releng" command="tag r18_${buildId}" />
		<echo message="tagging org.eclipse.datatools.sqltools.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.sqltools/releng/org.eclipse.datatools.sqltools.releng" command="tag r18_${buildId}" />
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.incubator/releng/org.eclipse.datatools.incubator.releng" command="tag r18_${buildId}" />

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

	<!-- ===================================================================== -->
	<!-- Steps to do after setup but before starting the build proper -->
	<!-- ===================================================================== -->
	<target name="postSetup">
	</target>

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

	<!-- ===================================================================== -->
	<!-- Steps to do after the fetch -->
	<!-- ===================================================================== -->
	<target name="postFetch">
		<copy todir="${buildDirectory}/plugins">
			<fileset dir="${buildDirectory}/../staticFiles" includes="*.jar"/>
		</copy>
                <replace dir="${buildDirectory}/plugins" value="1.7.2.${buildId}" token="@BUILD@">
                        <include name="**/about.mappings" />
                </replace>
                <replace dir="${buildDirectory}/features" value="1.7.2.${buildId}" token="@BUILD@">
                        <include name="**/about.mappings" />
                </replace>
                <replace dir="${buildDirectory}/features" value="1.7.2.${buildId}" token="@BUILD@">
                        <include name="**/about.mappings" />
                </replace>
	</target>
	
	<!-- ===================================================================== -->
	<!-- Steps to do before generating build scripts -->
	<!-- ===================================================================== -->
	<target name="preGenerate">
	</target>

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


	<!-- ===================================================================== -->
	<!-- Steps to do before assembling -->
	<!-- ===================================================================== -->
	<target name="preAssemble">
	
	</target>

	<!-- ===================================================================== -->
	<!-- Steps to do after assembling-->
	<!-- ===================================================================== -->
	<target name="postAssemble">
	</target>

	<!-- ===================================================================== -->
	<!-- Steps to do before running the build.xmls for the elements being built. -->
	<!-- ===================================================================== -->
	<target name="preProcess">
		<replace dir="${buildDirectory}/plugins" value="${buildId}" token="@Replace_By_Date@">
			<include name="**/about.mappings" />
		</replace>
		<!--
		<replace dir="${buildDirectory}/plugins/" value="1.3.0.${buildId}" token="@Replace_By_Version@">
			<include name="org.w3c.sac/about.properties" />
		</replace>
		<replace dir="${buildDirectory}/plugins/" value="1.6.7.${buildId}" token="@Replace_By_Version@">
			<include name="org.mozilla.rhino/about.properties" />
		</replace>
		<replace dir="${buildDirectory}/plugins/" value="1.4.6.${buildId}" token="@Replace_By_Version@">
			<include name="com.lowagie.itext/about.properties" />
		</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>

	<target name="prePackage" />
	

	<!-- ===================================================================== -->
	<!-- Steps to do after everything is built and assembled -->
	<!-- (e.g., testing, posting, emailing, ...) -->
	<!-- ===================================================================== -->
	<target name="postBuild">
	</target>

	<!-- ===================================================================== -->
	<!-- Helper targets -->
	<!-- ===================================================================== -->
	<target name="gatherLogs" if="logsAvailable">
		<mkdir dir="${postingDirectory}/${buildLabel}/compilelogs" />
		<antcall target="allElements">
			<param name="target" value="gatherLogs" />
		</antcall>

                <unzip dest="${postingDirectory}/${buildLabel}/compilelogs" overwrite="true">
                        <fileset dir="${buildDirectory}/features/org.eclipse.datatools.sdk-all.feature">
                                <include name="*.log.zip" />
                        </fileset>
                </unzip>

                <copy todir="${postingDirectory}/${buildLabel}/compilelogs" overwrite="true" failonerror="false">
                        <fileset dir="${buildDirectory}/features/org.eclipse.datatools.sdk.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.sqldevtools.data.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.sqldevtools.ddl.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.sqldevtools.ddlgen.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.sqldevtools.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.sqldevtools.parsers.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.sqldevtools.results.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.modelbase.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.intro/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.connectivity.oda.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.connectivity.oda.designer.feature/feature.temp.folder"/>
			<fileset dir="${buildDirectory}/features/org.eclipse.datatools.connectivity.feature/feature.temp.folder"/>
		</copy> 
	
	</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>
