<!--
    Copyright (c) 2003, 2015 IBM Corporation and others.

    This program and the accompanying materials
    are made available under the terms of the Eclipse Public License 2.0
    which accompanies this distribution, and is available at
    https://www.eclipse.org/legal/epl-2.0/

    SPDX-License-Identifier: EPL-2.0
   
    Contributors:
         IBM Corporation - initial API and implementation
 -->
<project name="Generic Build Targets" default="noDefault">

<!-- Properties that must be passed to this script:
	buildDirectory
	id
	type
	ignoreTagInfo
	recursiveGeneration
	workingDirectory
	configInfo
-->

<!-- ===================================================================== -->
<!-- Setup default values -->
<!--   configs : by default build a platform-independent configuration -->
<!--   fetchTag : by default use the CVS tags as spec'd in directory.txt -->
<!-- ===================================================================== -->
<property name="configs" value="*,*,*"/>
<property name="fetchTag" value=""/>
<property name="customEESources" value="" />
<property name="transformedRepoLocation" value="" />
<property name="generateJnlp" value="false"/>
<property name="signJars" value="false"/>
<property name="generateFeatureVersionSuffix" value="false" />
<property name="generateVersionsLists" value="true" />
<property name="groupConfigurations" value="false"/>
<property name="pluginPath" value=""/>
<property name="filteredDependencyCheck" value="false"/>
<property name="filterP2Base" value="false"/>

<!-- ===================================================================== -->
<!-- Fetch a single element (feature, plugin, fragment) -->
<!-- ===================================================================== -->
<target name="fetchElement" description="Checking out source from repository..." depends="init">
	<mkdir dir="${buildDirectory}/features"/>
	<mkdir dir="${buildDirectory}/plugins"/>
	<eclipse.fetch
		elements="${type}@${id}"
		buildDirectory="${buildDirectory}"
		directory="${buildDirectory}/directory.txt"
		fetchTag="${fetchTag}"
		configInfo="${configs}"
		baseLocation="${baseLocation}"
		pluginPath="${transformedRepoLocation}${path.separator}${pluginPath}"
	/>

	<!-- Run generated fetch script -->
	<ant antfile="${buildDirectory}/fetch_${id}.xml">
		<!-- ************  should not have to spec these  *************** -->
		<property name="featureOnly" value="true"/>
		<property name="featureAndPlugins" value="true"/>
		<property name="featuresRecursively" value="true"/>
	</ant>
</target>

<!-- ===================================================================== -->
<!-- Clean previously built elements -->
<!-- ===================================================================== -->
<target name="cleanElement" description="Scrubbing features and plugins of old jars..." depends="init">
<echo message="${elementPath}"/>
	<ant antfile="build.xml" dir="${elementPath}" target="clean"/>
</target>

<!-- ===================================================================== -->
<!-- Generate a build.xml file for an element -->
<!-- ===================================================================== -->
<target name="generateScript" description="Generating build scripts..." depends="init">
	<eclipse.buildScript
		elements="${type}@${id}"
		buildDirectory="${buildDirectory}"
		configInfo="${configs}"
		baseLocation="${baseLocation}"
		outputUpdateJars="${outputUpdateJars}"
		archivesFormat="${archivesFormat}"
		product="${product}"
		forceContextQualifier="${forceContextQualifier}"
		generateJnlp="${generateJnlp}"
		signJars="${signJars}"
		generateFeatureVersionSuffix="${generateFeatureVersionSuffix}"
		significantVersionDigits="${significantVersionDigits}"
		generatedVersionLength="${generatedVersionLength}"
		generateVersionsLists="${generateVersionsLists}"
		generateSourceReferences="${generateSourceReferences}"
		groupConfiguration="${groupConfigurations}"
		pluginPath="${transformedRepoLocation}${path.separator}${pluginPath}"
		filteredDependencyCheck="${filteredDependencyCheck}"
		platformProperties="${platformProperties}"
		filterP2Base="${filterP2Base}"
		flattenDependencies="${flattenDependencies}"
		parallelCompilation="${parallelCompilation}"
		parallelThreadCount="${parallelThreadCount}"
		parallelThreadsPerProcessor="${parallelThreadsPerProcessor}"
		customEESources="${customEESources}"
		contextRepository="${transformedRepoLocation},${p2.context.repos}"
		sourceBundleMode="${sourceBundleMode}"
		sourceBundleTemplateFeature="${sourceBundleTemplateFeature}"
		sourceBundleFeatureId="${sourceBundleFeatureId}"
		sourceBundleFeatureVersion="${sourceBundleFeatureVersion}"
	/>
</target>

<!-- ===================================================================== -->
<!-- Run build.xml for a single element-->
<!-- ===================================================================== -->
<target name="processElement" description="Processing build scripts..." depends="init">
	<antcall target="processViaFeature" />
	<antcall target="processFlat" />
</target>

<target name="processViaFeature" unless="flattenDependencies" description="Compile in order of feature containment">
	<ant antfile="build.xml" dir="${elementPath}" target="build.jars">
		<property name="target" value="build.jars"/>
	</ant>
</target>

<target name="processFlat" if="flattenDependencies" description="Compile in flattened dependency order">
	<ant antfile="compile.${id}.xml" dir="${buildDirectory}"/>
</target>

<!-- **********************
1) the gather targets do more than just gather.  These are packaging targets.
We need to continue ot separate the two concepts (gather and package) as
the packaging is different if we wanted to create an update site packaging
(for example).  The gathers are commented out for now as the new generated
scripts do not seem to have them.

2) do we really need the ws and os properties?  In all cases?  Do they have to be
set here?
-->

<!-- ===================================================================== -->
<!-- Gather items listed in bin.includes -->
<!-- ===================================================================== -->
<target name="gatherBinaries" description="Gathering binary distribution..." depends="init">
	<!-- ant antfile="build.xml" dir="${elementPath}" target="gather.bin.parts"/ -->
	<ant antfile="build.xml" dir="${elementPath}" target="zip.distribution">
		<property name="os" value="${os}" />
		<property name="ws" value="${ws}" />
	</ant>
</target>

<!-- ===================================================================== -->
<!-- Gather source for a build element -->
<!-- ===================================================================== -->
<target name="gatherSources" description="Gathering source distribution..." depends="init">
	<!--suspect:  this call is required to create the *.src.zip inside each plugin-->
	<ant antfile="build.xml" dir="${elementPath}" target="build.sources">
		<property name="os" value="${os}" />
		<property name="ws" value="${ws}" />
	</ant>
	<ant antfile="build.xml" dir="${elementPath}" target="zip.sources">
		<property name="os" value="${os}" />
		<property name="ws" value="${ws}" />
	</ant>
</target>

<!-- ===================================================================== -->
<!-- Gather log files for an element -->
<!-- Suspect: We just unzip these right away -->
<!-- ===================================================================== -->
<target name="gatherLogs" description="Gathering build logs..." depends="init">
	<ant antfile="build.xml" dir="${elementPath}" target="zip.logs" >
		<property name="buildDirectory" value="${buildDirectory}" />
	</ant>
</target>

<!-- ===================================================================== -->
<!-- Default target                                                        -->
<!-- ===================================================================== -->
<target name="noDefault">
	<echo message="This file must be called with explicit targets" />
</target>

<!-- ===================================================================== -->
<!-- Assemble one build element -->
<!-- ===================================================================== -->
<target name="assembleElement" description="Assembling the build..." depends="init">
	<ant antfile="assemble.${id}.all.xml" dir="${buildDirectory}"/>
</target>

<!-- ===================================================================== -->
<!-- Package one build element -->
<!-- ===================================================================== -->
<target name="packageElement" description="Packaging the build..." depends="init">
	<ant antfile="package.${id}.all.xml" dir="${buildDirectory}"/>
</target>

<!-- ===================================================================== -->
<!-- Miscellaneous helper targets -->
<!-- ===================================================================== -->
<target name="init">
	<condition property="elementPath" value="${buildDirectory}/plugins/${id}">
		<equals arg1="${type}" arg2="fragment" />
	</condition>
	<property name="elementPath" value="${buildDirectory}/${type}s/${id}" />
</target>

<!-- ===================================================================== -->
<!-- Invokes the p2 transformer to process all the repositories found in repoBaseLocation -->
<!-- ===================================================================== -->
<target name="transformRepos">
	<property name="repoBaseLocation.excludes" value=".*" />
	<p2.repo2runnable destination="${transformedRepoLocation}">
		<source dir="${repoBaseLocation}/" includes="*" excludes="${repoBaseLocation.excludes}"/>
	</p2.repo2runnable>
</target>

<!-- Invoke the p2 director to perform an install  -->
<target name="runDirector" >
	<property name="p2.director.bundlepool" value="${p2.director.installPath}"/>
	<property name="p2.director.dataArea" value="${p2.director.installPath}/p2"/>
	<property name="p2.director.extraArgs" value="-profileProperties org.eclipse.update.install.features=true" />
	<property name="p2.director.extraVMArgs" value="-Declipse.p2.MD5Check=false" />
	<property name="p2.director.profile" value="profile" />
	<property name="p2.director.version" value="" />
	
	<p2.director 
		os="${os}" ws="${ws}" arch="${arch}" 
		flavor="${p2.flavor}" 
		roaming="true" 
		profile="${p2.director.profile}"
		extraArguments="${p2.director.extraArgs}"
		metadataRepository="${p2.repo}" 
		artifactRepository="${p2.repo}" 
		destination="${p2.director.installPath}" 
		outputProperty="p2.director.java.output"
		logFile="${p2.director.log}">
		<iu id="${p2.director.iu}" version="${p2.director.version}" />
	</p2.director>
</target>
	
</project>
