<!--
Copyright (c) 2011, 2019 Mia-Software and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v2.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v20.html

Contributors:
    Nicolas BROS (Mia-Software)
    Gregoire DUPE (Mia-Software)
-->

<project name="Build documentation" default="all">

	<taskdef classpath="bin" name="generateApiJavadoc" classname="org.eclipse.modisco.doc.internal.GenerateApiJavadocTask"/>
	
	<target name="build.javadoc">
		<delete includeemptydirs="true">
		  <fileset dir="./javadoc" includes="**/*" />
		</delete>
		
		<available file="../org.eclipse.modisco.infra.common.core" type="dir" property="plugins.path" value="../"/>
		<!-- with the sourceTree containing plugins, doc, etc. subdirs -->
		<available file="../../plugins/" type="dir" property="plugins.path" value="../../plugins/"/>
	
		<echo>javadoc generation from plug-ins in "${plugins.path}"</echo> 
		
		<generateApiJavadoc sourceTreePath="${plugins.path}"
				access="public" author="true" destdir="./javadoc" 
				splitindex="true" doctitle="MoDisco Javadoc" use="true" version="true"
				pattern="^org\.eclipse(\.gmt)?\.modisco\..*$">
			<tag name="generated"/>
			<tag name="model"/>
			<tag name="ordered"/>
			<!-- executable="C:/Program Files/Java/jdk1.6.0_24/bin/javadoc.exe" -->
		</generateApiJavadoc>
	</target>

	<target name="all" depends="build.javadoc"/>

	
</project>
