<?xml version="1.0" encoding="UTF-8"?>
<project default="no-build-macros-default">
	<!-- $Id: cc-macros.xml,v 1.6 2007/09/12 19:32:13 mrussell Exp $ -->
	<target name="no-build-macros-default">
		<fail>This file does not contain a default target</fail>
	</target>

	<import file="build-macros.xml"/>
	
	<!-- ================================================= 
		Cruise Control Initialization          
	-->
	<macrodef name="cc_init">
		<sequential>
			<echo>ccproject=${ccproject} cctimestamp=${cctimestamp} cclogdir=${cclogdir}</echo>

			<property name="build.num" value="${cctimestamp}" />
			<property name="log.dir" location="${cclogdir}/${build.num}" />
			<property name="lines.to.tail" value="2000"/>
			
			<mkdir dir="${log.dir}" />
			<property name="log2.dir" location="/opt/download/logs/${ccproject}/${cctimestamp}"/>
			<mkdir dir="${log2.dir}" />

			<copy file="/opt/cruisecontrol/config.xml"
			      tofile="${log.dir}/copy-of-cc-config-xml.txt" />
			
			<cc_clean_link_files/>
			<set_java/>
			<echo>log.dir           = ${log.dir}</echo>
			<echo>log2.dir          = ${log2.dir}</echo>
			<echo>java.prefix.path  = ${java.prefix.path}</echo>
			<echo>java.5.path       = ${java.5.path}</echo>
			<echo>java.4.path       = ${java.4.path}</echo>
			<echo>java.3.path       = ${java.3.path}</echo>
			<echo>The default value for java.home is ${java.4.path}/bin</echo>
		
		</sequential>
	</macrodef>

	<!-- ================================================= 
		Clean all link files from the required eclipses
	-->
	<macrodef name="cc_clean_link_files">
		<sequential>
			<delete failonerror="false">
				<fileset dir="/opt/eclipses" >
				    <include name="eclipse_*/links/*.link"/>
				</fileset>
			</delete>
		</sequential>
	</macrodef>

	<!-- ================================================= 
		Cruise Control Setup for 1st call to Eclipse
	-->
	<macrodef name="cc_setup">
		<sequential>
			<copy file="build-settings/downloads.html"
			      todir="${log.dir}"
			      failonerror="false" />
			<!-- needed for the dynamic creation of link files -->
			<read_product_properties/>
			<init_root_properties/>
			<property name="product.build.location" location=".."/>
			<basename file="${product.build.location}" property="Project-Name"/>

		</sequential>
	</macrodef>

	<!-- ================================================= 
		Launch Ant inside Eclipse to perform the actual build      
		
		=== Required Parameters:
		
		buildfile - the build file to be executed
			(e.g. "build-product.xml")
		log - the log file capturing console output
			(e.g. "build-tools.log")
			
	-->
	<macrodef name="cc_eclipse_ant">
		<attribute name="buildfile" />
		<attribute name="log" />
		<attribute name="buildTarget" default="" />
		<attribute name="eclipseDirName" default="eclipse_330" />
		<attribute name="javaPath" default="${java.4.path}"/>
    	<attribute name="cleanBuildTagFile" default=".clean_build"/>
		<attribute name="configuration" default="../../../../epp-configuration"/>
		<attribute name="workspace" default="../../../../epp-workspace"/>
		<attribute name="dir" default="."/>
		<sequential>
			<echo>***********************************************</echo>
			<echo>cc_eclipse_ant</echo>
			<echo>buildfile 		= @{buildfile}</echo>
			<echo>log 				= @{log}</echo>
			<echo>buildTarget 		= @{buildTarget}</echo>
			<echo>eclipseDirName 	= @{eclipseDirName}</echo>
			<echo>javaPath 			= @{javaPath}</echo>
			<echo>cleanBuildTagFile = @{cleanBuildTagFile}</echo>
			<echo>configuration 	= @{configuration}</echo>
			<echo>workspace 		= @{workspace}</echo>
			<echo>dir				= @{dir}</echo>
			<echo>***********************************************</echo>

			<echo>deleting @{configuration}</echo>
			<delete dir="@{configuration}" failonerror="false"/>
			
			<fileset dir="/opt/eclipses/@{eclipseDirName}/plugins" id="equinox.jar.fs"
		    			includes="org.eclipse.equinox.launcher_*.jar"/>
			<pathconvert property="equinox.jar" refid="equinox.jar.fs" />
			<available file="/opt/eclipses/@{eclipseDirName}/startup.jar" type="file"
						property="eclipse.startup"
						value="/bin/java -Xms64M -Xmx256M -cp /opt/eclipses/@{eclipseDirName}/startup.jar org.eclipse.core.launcher.Main"/>
			<property name="eclipse.startup" value="/bin/java -Xms64M -Xmx256M -cp ${equinox.jar} org.eclipse.equinox.launcher.Main" />
			
			<echo message="Running eclipse from java @{javaPath}/bin/java" />
			<echo message="         using eclipse startup @{javaPath}${eclipse.startup}" />
			<echo file="${log.dir}/eclipse-ant.sh">#!/bin/bash
cd @{dir}
@{javaPath}${eclipse.startup} -clean -noupdate -configuration @{configuration} -data @{workspace} -application org.eclipse.ant.core.antRunner -Dbuild.num=${build.num} -Dlog.dir=${log.dir} -verbose -file @{buildfile} @{buildTarget}
ret=$?
echo eclipse exited with $ret
exit $ret
</echo>
			<echo>Eclipse Build Starting: ${log.dir}/eclipse-ant.sh</echo>
			<cc_exec file="${log.dir}/eclipse-ant.sh"
			         log="@{log}"
			         resultproperty="result.@{log}" />
			<copy file="../.metadata/.log"
			      tofile="${log.dir}/eclipse-@{log}"
			      failonerror="false" />
			<basename file="@{log}" property="base.name.for.log.zip.file"/>
			<zip destfile="${log.dir}/${base.name.for.log.zip.file}.zip">
				<zipfileset dir="${log.dir}" prefix="/">
					<include name="@{log}" />
					<include name="eclipse-@{log}" />
				</zipfileset>
			</zip>
			<exec executable="tail" failifexecutionfails="false" failonerror="false"
					output="${log.dir}/${base.name.for.log.zip.file}.tail.txt">
				<arg value="-${lines.to.tail}"/>
				<arg value="${log.dir}/@{log}" />
			</exec>
			<copy todir="${log2.dir}" failonerror="false">
				<fileset dir="${log.dir}">
					<include name="@{log}" />
					<include name="*.tail.txt" />
					<include name="eclipse-@{log}" />
				</fileset>
			</copy>
			<fail message="Eclipse build failed: result.@{log} = ${result.@{log}}">
				<condition>
					<not>
						<equals arg1="${result.@{log}}" arg2="0" />
					</not>
				</condition>
			</fail>
			<touch file="${log2.dir}/@{cleanBuildTagFile}" />
			<echo>Eclipse Build Ended</echo>
		</sequential>
	</macrodef>

	<!-- ================================================= 
		Execute the specified file and redirect the output          
		
		=== Required Parameters:
		
		file - the build file to be executed
			(e.g. "cc-info.sh")
		log - the log file capturing console output
			(e.g. "info.log")
			
		=== Optional Parameters:
		
		failonerror - whether the build should fail if the exec fails
			(defaults to "false")
			
	-->
	<macrodef name="cc_exec">
		<attribute name="file" />
		<attribute name="log" />
		<attribute name="errorProperty" default="error.@{log}" />
		<attribute name="resultProperty" default="result.@{log}" />
		<sequential>
			<chmod file="@{file}" perm="740" />
			<exec executable="@{file}"
			      output="${log.dir}/@{log}"
			      errorproperty="@{errorProperty}" 
				  resultproperty="@{resultProperty}"/>
			<echo>executable @{file} ended with errorProperty @{errorProperty} = ${@{errorProperty}}</echo>
			<echo>                              resultProperty @{resultProperty} = ${@{resultProperty}}</echo>
		</sequential>
	</macrodef>

	<!-- ================================================= 
		Execute the specified file and redirect the output          
		
		=== Required Parameters:
		
		file - the build file to be executed
			(e.g. "cc-info.sh")
		log - the log file capturing console output
			(e.g. "info.log")
			
		=== Optional Parameters:
		
		failonerror - whether the build should fail if the exec fails
			(defaults to "false")
			
	-->
	<macrodef name="cc_exec_with">
		<attribute name="file" />
		<attribute name="log" />
		<attribute name="argumentLine" default="" />
		<attribute name="errorProperty" default="error.@{log}" />
		<attribute name="resultProperty" default="result.@{log}" />
		<sequential>
			<chmod file="@{file}" perm="740" />
			<exec executable="@{file}"
			      output="${log.dir}/@{log}"
			      errorproperty="@{errorProperty}" 
				  resultproperty="@{resultProperty}">
				<arg line="@{argumentLine}"/>
			</exec>
			<echo>executable @{file} ended with errorProperty @{errorProperty} = ${@{errorProperty}}</echo>
			<echo>                              resultProperty @{resultProperty} = ${@{resultProperty}}</echo>
		</sequential>
	</macrodef>

	<!-- = = = = = = = = = = = = = = = = =
          macrodef: createLinkFile          
         = = = = = = = = = = = = = = = = = -->
    <macrodef name="createLinkFile">
        <attribute name="product" />
        <attribute name="eclipseTarget" />
        <attribute name="eclipseDir" />
        <sequential>
        	<checkfile file="${@{product}.load-image}/E-@{eclipseTarget}"
        				message="Prerequisit ${@{product}.load-image}/E-@{eclipseTarget} does not exist aborting build"/>
    		<echo file="/opt/eclipses/@{eclipseDir}/links/@{product}.link">
path=${@{product}.load-image}/E-@{eclipseTarget}
    		</echo>
            
        </sequential>
    </macrodef>

	<!-- = = = = = = = = = = = = = = = = =
	      macrodef: removeLinkFile          
	     = = = = = = = = = = = = = = = = = -->
	<macrodef name="removeLinkFile">
	    <attribute name="product" />
	    <attribute name="eclipseDir" />
	    <sequential>
			<delete file="/opt/eclipses/@{eclipseDir}/links/@{product}.link"/>
	    </sequential>
	</macrodef>

</project>