<?xml version="1.0" encoding="UTF-8"?>
<project name="org.eclipse.ocl.doc" default="build.jars" basedir=".">

	<property file="${buildDirectory}/finalPluginsVersions.properties"/>
	<property name="pluginVersion" value="${org.eclipse.ocl.doc}"/>

	<property name="plugin" value="org.eclipse.ocl"/>
	<property name="docPlugin" value="org.eclipse.ocl.doc"/>

	<property name="filesToInclude" value="META-INF/**,about.html,about.ini,about.mappings,about.properties,modeling*.png,plugin.xml,plugin.properties,toc.xml,schema.css,book.css,topics_*.xml,index/**,images/**,tutorials/**,references/**"/>
	<property name="filesToExclude" value="**/*.dnx"/>

	<!-- Compiler settings. -->
	<property name="javacFailOnError" value="false"/>
	<property name="javacDebugInfo" value="on"/>
	<property name="javacVerbose" value="true"/>
	<property name="javacSource" value="1.5"/>
	<property name="javacTarget" value="1.5"/>
	<property name="compilerArg" value=""/>
	<path id="path_bootclasspath">
		<fileset dir="${java.home}/lib">
			<include name="*.jar"/>
		</fileset>
	</path>
	<property name="bootclasspath" refid="path_bootclasspath"/>

	<property name="bundleJavacSource" value="${javacSource}"/>
	<property name="bundleJavacTarget" value="${javacTarget}"/>
	<property name="bundleBootClasspath" value="${bootclasspath}"/>
	<property name="basews" value="${ws}"/>
	<property name="baseos" value="${os}"/>
	<property name="basearch" value="${arch}"/>
	<property name="basenl" value="${nl}"/>

	<target name="init" depends="properties">
		<condition property="pluginTemp" value="${buildTempFolder}/plugins">
			<isset property="buildTempFolder"/>
		</condition>
		<property name="pluginTemp" value="${basedir}"/>
		<condition property="build.result.folder" value="${pluginTemp}/${docPlugin}">
			<isset property="buildTempFolder"/>
		</condition>
		<property name="build.result.folder" value="${basedir}"/>
		<property name="temp.folder" value="${basedir}/temp.folder"/>
		<property name="plugin.destination" value="${basedir}"/>
				
		<available property="javadoc.already.built" file="references/javadoc/org/eclipse/ocl/package-summary.html"/>
	</target>

	<target name="properties" if="eclipse.running">
		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>

	</target>

	<target name="build.update.jar" depends="init" description="Build the plug-in: ${plugin} for an update site.">
		<delete dir="${temp.folder}"/>
		<mkdir dir="${temp.folder}"/>
		<antcall target="build.jars"/>
		<antcall target="gather.bin.parts">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<zip destfile="${plugin.destination}/${docPlugin}_${pluginVersion}.jar" basedir="${temp.folder}/${docPlugin}_${pluginVersion}" filesonly="false" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="build.jars" depends="init" unless="javadoc.already.built" description="Build all the jars for the plug-in: ${docPlugin}.">
		<!-- adolfosbh: javadoc wont' be included in the doc plugin. See bugzilla 337202-->
		<!-- Execute a shell script that will create an ant javadoc script and then run it for us -->
		<!--
		<exec executable="sh">
			<arg value="build/antJavadoc.sh"/>
			<arg value="${eclipse.home}/../eclipse"/>
		</exec>-->
			
		<antcall target="convertSchemaToHtml"/>
		
		<antcall target="build.index"/>
	</target>

	<!-- adolfosbh: Target called by buckminster in order to create textile documentation -->
	<target name="buckminster.build.textile.doc" description="Create textile documentation creation">
		 <ant antfile="textileBuild.xml" target="build-doc" inheritall="true"/>	
	</target>
			
	<target name="build.index" depends="init" description="Builds search index for the plug-in" if="eclipse.running">
		<help.buildHelpIndex manifest="plugin.xml" destination="."/>
	</target>
	
	<target name="build.sources" depends="init">
	</target>

	<target name="gather.bin.parts" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${docPlugin}_${pluginVersion}"/>
		<copy todir="${destination.temp.folder}/${docPlugin}_${pluginVersion}" failonerror="true" overwrite="false">
			<fileset dir="${basedir}"
				includes="${filesToInclude}"
				excludes="${filesToExclude}"/>
		</copy>
		<eclipse.versionReplacer 
			path="${destination.temp.folder}/${docPlugin}_${pluginVersion}" 
			version="${pluginVersion}"/>
	</target>

	<target name="build.zips" depends="init">
	</target>

	<target name="gather.sources" depends="init" if="destination.temp.folder">
	</target>

	<target name="gather.logs" depends="init" if="destination.temp.folder">
	</target>

	<target name="clean" depends="init" description="Clean the plug-in: ${docPlugin} of all the zips, jars and logs created.">
		<delete file="${plugin.destination}/${docPlugin}_${pluginVersion}.jar"/>
		<delete file="${plugin.destination}/${docPlugin}_${pluginVersion}.zip"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="zip.plugin" depends="init" description="Create a zip containing all the elements for the plug-in: ${docPlugin}.">
		<delete dir="${temp.folder}"/>
		<mkdir dir="${temp.folder}"/>
		<antcall target="build.jars"/>
		<antcall target="build.sources"/>
		<antcall target="gather.bin.parts">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<antcall target="gather.sources">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<delete>
			<fileset dir="${temp.folder}" includes="**/*.bin.log"			/>
		</delete>
		<zip destfile="${plugin.destination}/${docPlugin}_${pluginVersion}.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="convertSchemaToHtml">
		<property name="schema-destination" value="./references/extension-points" />
		<pde.convertSchemaToHTML manifest="../org.eclipse.ocl/plugin.xml" destination="${schema-destination}" />
	</target>

</project>
