<commit_before><?xml version="1.0" encoding="UTF-8"?>
<project name="ProActive" default="compile" basedir=".">
	<property environment="env" />
	<property name="base" value=".." />
	<property name="lib" value="${base}/lib" />
	<property name="src.dir" value="${base}/src" />
	<property name="daemon.dir" value="${base}/p2p" />
	<property name="proactive.dir" value="org/objectweb/proactive" />
	<property name="proactive.core.dir" value="${proactive.dir}/core" />
	<property name="proactive.ext.dir" value="${proactive.dir}/ext" />
	<property name="proactive.tools.dir" value="${proactive.dir}/tools" />
	<property name="classes.dir" value="${base}/classes" />
	<property name="test.classes.dir" value="${base}/test-classes" />
	<property name="classlibs.dir" value="${base}/classlibs" />
	<property name="dist.dir" value="${base}/dist" />
	<property name="doc.src" value="${base}/doc-src" />
	<property name="docs.dir" value="${base}/docs" />
	<property name="docs.tmp" value="${docs.dir}/tmp" />
	<property name="docs.mainFile" value="PA_index.xml" />

	<property name="name" value="ProActive" />
	<property name="version" value="3.2" />
	<property name="version_" value="3_2" />
	<property name="debug" value="on" />
	<property name="source" value="1.5" />
	<property name="manifest.dir" value="${src.dir}/org/objectweb/proactive/osgi/Manifest/" />
	<property name="manifest.example.dir" value="${src.dir}/org/objectweb/proactive/examples/osgi/hello/Manifest/" />
	<property name="config.dir" value="${classes.dir}/${proactive.core.dir}/config/" />
	<property name="bundle.dir" value="${base}/dist/bundle" />

	<!-- ================================================================ -->
	<!--                   define the different classpaths                -->
	<!--  =============================================================== -->
	
	<path id="project.libs">
		<fileset dir="${lib}">
			<include name="*.jar" />
			<include name="jini/*.jar" />
			<include name="globus/*.jar" />
			<include name="ws/*.jar" />
			<include name="osgi/*.jar" />
			<include name="osgi/management/group/*.jar" />
			<include name="components/*.jar" />
			<include name="ibis/*.jar" />
			<include name="unicore/*.jar" />
			<include name="glite/*.jar" />
			<include name="scilab/*.jar" />
			<include name="timit/*.jar" />
		</fileset>
		<fileset dir="${lib}/ws">
			<include name="*.jar" />
			<include name="components/*.jar" />
		</fileset>
	</path>
		
	<path id="project.classpath">
		<pathelement location="${base}/classes" />
		<path refid="project.libs"/>
	</path>
	
	<path id="test.classpath">
		<pathelement location="${dist.dir}/ProActive/ProActive.jar"/>
		<path refid="project.libs"/>
		<pathelement location="${test.classes.dir}"/>
	</path>
	
	<path id="examples.classpath">
		<path refid="project.classpath" />
		<pathelement location="${lib}/examples/clibwrapper_jiio.jar" />
		<pathelement location="${lib}/examples/jai_codec.jar" />
		<pathelement location="${lib}/examples/jai_core.jar" />
		<pathelement location="${lib}/examples/mlibwrapper_jai.jar" />
		<pathelement location="${lib}/examples/jai_imageio.jar" />
	</path>


	<!-- ================================================================ -->
	<!--                       Initialisation                             -->
	<!--  =============================================================== -->
	<target name="init">
		<!-- Create the time stamp -->
		<tstamp>
			<format property="TODAY" pattern="yyyy-MM-dd" />
		</tstamp>
		<!-- Create the build directory structure used by compile -->
		<mkdir dir="${classes.dir}" />
		<echo message="--- Debugging is ${debug} ---" />
	</target>


	<!-- ================================================================ -->
	<!--                   Compile All and build the docs                 -->
	<!--  =============================================================== -->
	<target name="all" depends="compile,docs" description="Compile All and build the docs" />


	<!-- ================================================================ -->
	<!--                          Compile All                             -->
	<!--  =============================================================== -->
	<target name="compile" depends="ic2d, bnb, p2p,loadbalancing, scheduler, timit, examples, trywithcatch, stub_wrapper, scilab, osgi,jmx, mpi" description="build the class files" />


	<!-- ================================================================ -->
	<!--                   Compile ProActive Core                         -->
	<!--  =============================================================== -->
	<target name="configurationCopy">
		<copy toDir="${classes.dir}">
			<fileset dir="${src.dir}">
				<include name="org/**/*.xml" />
				<include name="org/**/*.fractal" />
				<include name="org/**/*.properties" />
				<include name="org/**/*.xsd" />
				<include name="org/objectweb/proactive/core/component/adl/xml/proactive.dtd" />
			</fileset>
		</copy>
		<!-- copy descriptor schema -->
		<copy todir="${classes.dir}/org/objectweb/proactive/core/descriptor/xml/" overwrite="yes" file="${base}/descriptors/DescriptorSchema.xsd"/>		
		<copy todir="${base}/descriptors/examples" overwrite="yes" file="${base}/descriptors/DescriptorSchema.xsd"/>
	</target>




	<target name="core" depends="init, configurationCopy" description="Compile the ProActive core classes">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/*.java" />
			<include name="${proactive.core.dir}/**/*.java" />
		</javac>

		<rmic classname="org.objectweb.proactive.core.body.jini.JiniRemoteBodyImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.body.rmi.RmiRemoteBodyImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeForwarderImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.runtime.jini.JiniRuntimeImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.body.ft.servers.FTServer" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.body.rmi.RmiRemoteBodyForwarderImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
	</target>


	<!-- ================================================================ -->
	<!--                        Compile Extensions                        -->
	<!--  =============================================================== -->
	<target name="ext" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.ext.dir}/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                           Compile Tools                          -->
	<!--  =============================================================== -->
	<target name="tools" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.tools.dir}/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Branch and Bound                    -->
	<!--  =============================================================== -->
	<target name="bnb" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/branchnbound/**/*.java" />
		</javac>
		<!-- BnB API stubs generation -->
		<echo message="Branch and Bound API stubs generating..." />
		<property name="stub_bnb.classdir" value="${basedir}/../classes" />
		<path id="bnbClassDir">
			<pathelement path="${stub_bnb.classdir}" />
		</path>
		<pathconvert pathsep=" " property="bnbClassesDir" refid="bnbClassDir" />
		<path id="bnbClasses">
			<fileset dir="${classes.dir}/org/objectweb/proactive/branchnbound">
				<include name="**/*.class" />
				<exclude name="**/*$*" />
			</fileset>
		</path>
		<pathconvert pathsep=" " property="bnb-files" refid="bnbClasses">
			<map from="${bnbClassesDir}" to="" />
		</pathconvert>
		<java classname="org.objectweb.proactive.ext.util.StubGenerator" fork="true">
			<classpath refid="project.classpath" />
			<arg line="-d ${classes.dir}
        ${bnb-files}" />
		</java>
	</target>

	<!-- ================================================================ -->
	<!--                      Compile TimIt for benchmarking              -->
	<!--  =============================================================== -->
	<target name="timit" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="off" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/benchmarks/timit/**/*.java" />
		</javac>
	</target>

	<!-- ================================================================ -->
	<!--                      Compile Calcium Stubs                       -->
	<!--  =============================================================== -->
	<target name="calcium" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/calcium/**/*.java" />
		</javac>
		<!-- Calcium stubs generation -->
		<echo message="Calcium stubs generating..." />
		<property name="stub_calcium.classdir" value="${basedir}/../classes" />
		<path id="calciumClassDir">
			<pathelement path="${stub_calcium.classdir}" />
		</path>
		<pathconvert pathsep=" " property="calciumClassesDir" refid="calciumClassDir" />
		<path id="calciumClasses">
			<fileset dir="${classes.dir}/org/objectweb/proactive/calcium/proactive">
				<include name="**/*.class" />
				<exclude name="**/*$*" />
			</fileset>
			<fileset dir="${classes.dir}/org/objectweb/proactive/calcium/">
				<include name="**/*Task.class"/>
				<exclude name="**/*$*" />
			</fileset>
		</path>
		<pathconvert pathsep=" " property="calcium-files" refid="calciumClasses">
			<map from="${calciumClassesDir}" to="" />
		</pathconvert>
		<java classname="org.objectweb.proactive.ext.util.StubGenerator" fork="true">
			<classpath refid="project.classpath" />
			<arg line="-d ${classes.dir} ${calcium-files}" />
		</java>
	</target>

	<!-- ================================================================ -->
	<!--                          Compile Scheduler                       -->
	<!--  =============================================================== -->

	<target name="scheduler" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/scheduler/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                          Compile ic2d                            -->
	<!--  =============================================================== -->
	<target name="ic2d" depends="ext" description="Compile the IC2D Tool">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/ic2d/**/*.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
		</javac>
		<copy todir="${classes.dir}/${proactive.dir}/ic2d/gui/images" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/ic2d/gui/images" />
		</copy>
		<!-- JobMonitor images -->
		<copy todir="${classes.dir}/${proactive.dir}/ic2d/gui/jobmonitor/images" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/ic2d/gui/jobmonitor/images" />
		</copy>
	</target>

	<!-- ================================================================ -->
	<!--                          Compile scilab                            -->
	<!--  =============================================================== -->
	<target name="scilab" depends="ext" description="Compile the SCILAB Tool">
		<copy todir="${classes.dir}/${proactive.dir}/ext/scilab/gui/img" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/ext/scilab/gui/img" />
		</copy>
	</target>

	<!-- ================================================================ -->
	<!--                      Compile LoadBalancing                       -->
	<!--  =============================================================== -->
	<target name="loadbalancing" depends="ext">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/loadbalancing/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile P2P                                 -->
	<!--  =============================================================== -->
	<target name="p2p" depends="ext">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/p2p/**/*.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
		</javac>
	</target>
	<target name="daemon" depends="p2p">
		<exec dir="${daemon.dir}/src/common" executable="cc" os="Linux, Darwin, SunOS">
			<arg line="-Wall -g -o proactivep2p -x c proactivep2p.cpp proactivep2p.h" />
		</exec>
		<exec dir="${daemon.dir}/src/common" executable="cc" os="Linux, Darwin, SunOS">
			<arg line="-Wall -g -o p2pctl -x c p2pctl.c proactivep2p.h" />
		</exec>
		<mkdir dir="${daemon.dir}/build" />
		<move file="${daemon.dir}/src/common/proactivep2p" todir="${daemon.dir}/build" />
		<move file="${daemon.dir}/src/common/p2pctl" todir="${daemon.dir}/build" />
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Examples                            -->
	<!--  =============================================================== -->

	<target name="examples" depends="ext" description="Compile all the examples">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/examples/**/*.java" excludes="${proactive.dir}/examples/nbody/common/NBody3DFrame.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="examples.classpath" />
		</javac>
		<copy todir="${classes.dir}/${proactive.dir}/examples" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/examples">
				<exclude name="**/*.java" />
			</fileset>
		</copy>
		<antcall target="nbody3d" />
	</target>

	<available property="java3d_present" classname="com.sun.j3d.utils.behaviors.mouse.MouseWheelZoom" />

	<target name="check_java3d" unless="java3d_present" depends="init">
		<echo message="Info: Java 3D dependencies were not resolved." />
	</target>

	<target name="nbody3d" depends="check_java3d" if="java3d_present">
		<echo message="Info: Java3D installed." />
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/examples/**/*.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="examples.classpath" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--             Copy various files to classes directory              -->
	<!--  =============================================================== -->
	<target name="copyDivers">
		<copy toDir="${classes.dir}">
			<fileset dir="${src.dir}">
				<include name="**/*.prop" />
				<include name="**/*.css" />
				<include name="**/*.xml" />
				<include name="**/*.xsl" />
				<include name="**/*.xsd" />
			</fileset>
		</copy>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Test Suite                         -->
	<!--  =============================================================== -->
	<target name="testsuite" depends="ext, copyDivers">
		<mkdir dir="${test.classes.dir}"/>
		<javac srcdir="${src.dir}" destdir="${test.classes.dir}" includes="testsuite/**" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Migration                           -->
	<!--  =============================================================== -->
	<target name="migration" depends="ext">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="migration/**" deprecation="on" source="${source}" debug="${debug}" />
	</target>


	<!-- ================================================================ -->
	<!--                      Compile JMX Connector                       -->
	<!--  =============================================================== -->
	<target name="jmx" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/jmx/**/**" deprecation="on" source="${source}" debug="${debug}" />
	</target>
	
	<!-- ================================================================ -->
	<!--                      Compile OSGi                       -->
	<!--  =============================================================== -->
	
	<target name="osgi" depends="core" description="Compile osgi related stuff">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/osgi/**/*.java" />
		</javac>
	</target>
	<!-- ================================================================ -->
	<!--                      Compile TryWithCatch annotator              -->
	<!--  =============================================================== -->
	<target name="trywithcatch">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="trywithcatch/" deprecation="on" source="${source}" debug="${debug}" />
	</target>


	<!-- ================================================================ -->
	<!--                      Compile util                                -->
	<!--  =============================================================== -->
	<target name="util" depends="">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="util/**" deprecation="on" source="${source}" debug="${debug}" />
	</target>


	<!-- ================================================================ -->
	<!--                      All the junk targets                        -->
	<!--  =============================================================== -->
	<target name="alljunk" depends="compile, migration, nonregressiontest" />


	<!-- ================================================================ -->
	<!--                  Clean up generated files                        -->
	<!--  =============================================================== -->
	<target name="clean" description="Remove all generated files">
		<delete dir="${classes.dir}" />
		<delete dir="${dist.dir}" />
		<delete dir="${docs.dir}" />
		<delete dir="${classlibs.dir}" />
		<delete dir="${test.classes.dir}" />
        <delete file="tests.log" />
        <delete file="descriptors/examples/DescriptorExamples.xsd"/>
	</target>


	<!-- ================================================================ -->
	<!--                      Create ProActive.jar                        -->
	<!--  =============================================================== -->
	<target name="proActiveJar" depends="ext,tools, bnb, p2p, calcium" description="Create the ProActive jar, to be used for instance on a distant host">
		<mkdir dir="${dist.dir}/ProActive" />
		<jar jarfile="${dist.dir}/ProActive/ProActive.jar">
			<fileset dir="${classes.dir}">
				<include name="${proactive.dir}/core/descriptor/xml/DescriptorSchema.xsd"/>
				<include name="${proactive.dir}/**" />
				<exclude name="${proactive.dir}/examples/**" />
				<exclude name="${proactive.dir}/ic2d/**" />
			</fileset>
		</jar>
	</target>


	<!-- ================================================================ -->
	<!--                    Create ProActiveBundle.jar                    -->
	<!--  =============================================================== -->
	<target name="proActiveBundle" depends="proActiveJar">
		<mkdir dir="${bundle.dir}" />
		<jar manifest="${manifest.dir}/Manifest.mf" jarfile="${bundle.dir}/proactiveBundle.jar">
			<fileset dir="${classes.dir}">
				<include name="${proactive.dir}/**" />
			</fileset>
			<fileset dir="${lib}/">
				<include name="asm.jar" />
				<include name="log4j.jar" />
				<include name="xercesImpl.jar" />
				<include name="bouncycastle.jar" />
				<include name="components/fractal.jar" />
			</fileset>

			<fileset dir="${config.dir}">
				<include name="ProActiveConfiguration.xml" />
			</fileset>
		</jar>
	</target>


	<!-- ================================================================ -->
	<!--                  Create helloWorlBundle.jar                      -->
	<!--  =============================================================== -->
	<target name="helloWorldBundle" depends="proActiveJar">
		<mkdir dir="${bundle.dir}" />
		<jar manifest="${manifest.example.dir}/Manifest.mf" jarfile="${bundle.dir}/helloWorldBundle.jar">
			<fileset dir="${classes.dir}">
				<include name="${proactive.dir}/examples/osgi/hello/HelloActivator.class" />
				<include name="${proactive.dir}/examples/hello/Hello.class" />
			</fileset>
		</jar>
	</target>


	<!-- ================================================================ -->
	<!--                  Create  distribution bin                        -->
	<!--  =============================================================== -->
	<target name="dist" depends="compile, docs" description="Create the distribution binary">
		<!-- Create the distribution directory -->
		<delete dir="${dist.dir}" />
		<mkdir dir="${dist.dir}" />
		<property name="PAdist.dir" value="${dist.dir}/ProActive" />
		<mkdir dir="${PAdist.dir}" />
		<antcall target="proActiveJar"/>
		
		<jar jarfile="${PAdist.dir}/ProActive_examples.jar" basedir="${classes.dir}" includes="${proactive.dir}/examples/**" />
		<jar jarfile="${PAdist.dir}/ic2d.jar" basedir="${classes.dir}" includes="${proactive.dir}/ic2d/**" />
		<!--        copy docs / scripts / src / compile / lib      -->
		<copy todir="${PAdist.dir}" includeEmptyDirs="no">
			<fileset dir="${base}">
				<include name="README.html" />
				<include name="docs/**" />
				<include name="scripts/**" />
				<exclude name="scripts/unix/grid5000/**" />
				<exclude name="scripts/unix/gridexperiment/**" />
				<include name="src/org/**" />
				<include name="compile/**" />
				<include name="lib/**" />
				<include name="descriptors/**" />
				<include name="p2p/**" />
				<exclude name="p2p/config/inria/**" />
				<exclude name="**/.svn" />
			</fileset>
		</copy>		
		
		<chmod dir="${PAdist.dir}/scripts/unix" perm="755" includes="**/*.sh" />
		<chmod file="${PAdist.dir}/compile/build" perm="755" />
		<!--  create zip version of ProActive without source  -->
		<zip zipfile="${dist.dir}/ProActive_${version_}.zip">
			<zipfileset dir="${PAdist.dir}" filemode="755" prefix="ProActive">
				<exclude name="src/**" />
				<exclude name="compile/**" />
			</zipfileset>
		</zip>
		<!--  create zip version of ProActive with source   -->
		<zip zipfile="${dist.dir}/ProActive-src_${version_}.zip">
			<zipfileset dir="${PAdist.dir}" filemode="755" prefix="ProActive" />
		</zip>
		<!--  create zip version of all ProActive docs    -->
		<zip zipfile="${dist.dir}/ProActiveDoc.zip">
			<zipfileset dir="${PAdist.dir}/docs" prefix="ProActive/docs" />
		</zip>
		<!--  create zip versions of ProActive Manual    -->
		<zip zipfile="${dist.dir}/ProActiveManualPdf.zip">
			<zipfileset dir="${docs.dir}/pdf/" includes="ProActiveManual.pdf" prefix="ProActive/docs/pdf" />
		</zip>
		<zip zipfile="${dist.dir}/ProActiveManualMultipleHtml.zip">
			<zipfileset dir="${docs.dir}/html/" excludes="ProActiveManual.html" prefix="ProActive/docs/html" />
		</zip>
		<zip zipfile="${dist.dir}/ProActiveManualSingleHtml.zip">
			<zipfileset dir="${docs.dir}/html/" includes="**/*" excludes="**/*.html" prefix="ProActive/docs/html" />
			<zipfileset dir="${docs.dir}/html/" includes="ProActiveManual.html" prefix="ProActive/docs/html" />
		</zip>
	</target>


	<!-- ================================================================ -->
	<!--        Add Copyright and format source files                     -->
	<!--  =============================================================== -->
	<target name="copyright_format" depends="copyright, format" />

	<target name="copyright" depends="util">
		<java classname="util.AddCopyright" fork="true">
			<classpath refid="project.classpath" />
			<arg value="${src.dir}/org/objectweb/proactive" />
		</java>
	</target>


	<!-- ================================================================ -->
	<!--            Formats the project sources                           -->
	<!-- ================================================================ -->
	<target name="format" description="Formats the project source files">

		<!-- declare the Jalopy task -->
		<taskdef name="jalopy" classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
			<classpath>
				<fileset dir="${base}/dev/lib">
					<include name="*.jar" />
				</fileset>
				<fileset dir="${lib}">
					<include name="log4j.jar" />
				</fileset>
			</classpath>
		</taskdef>
<commit_msg>Modified dist target in order to generate several zip files: 	- ProActive-src-version.zip 	- ProActive-doc-version.zip 	- ProActive-bin-version.zip 	- ProActibe-bundle-version.zip<commit_after><?xml version="1.0" encoding="UTF-8"?>
<project name="ProActive" default="compile" basedir=".">
	<property environment="env" />
	<property name="base" value=".." />
	<property name="lib" value="${base}/lib" />
	<property name="src.dir" value="${base}/src" />
	<property name="daemon.dir" value="${base}/p2p" />
	<property name="proactive.dir" value="org/objectweb/proactive" />
	<property name="proactive.core.dir" value="${proactive.dir}/core" />
	<property name="proactive.ext.dir" value="${proactive.dir}/ext" />
	<property name="proactive.tools.dir" value="${proactive.dir}/tools" />
	<property name="classes.dir" value="${base}/classes" />
	<property name="test.classes.dir" value="${base}/test-classes" />
	<property name="classlibs.dir" value="${base}/classlibs" />
	<property name="dist.dir" value="${base}/dist" />
	<property name="PAdist.dir" value="${dist.dir}/ProActive" />
	<property name="doc.src" value="${base}/doc-src" />
	<property name="docs.dir" value="${base}/docs" />
	<property name="docs.tmp" value="${docs.dir}/tmp" />
	<property name="docs.mainFile" value="PA_index.xml" />

	<property name="name" value="ProActive" />
	<property name="version" value="3.2" />
	<property name="version_" value="3_2" />
	<property name="debug" value="on" />
	<property name="source" value="1.5" />
	<property name="manifest.dir" value="${src.dir}/org/objectweb/proactive/osgi/Manifest/" />
	<property name="manifest.example.dir" value="${src.dir}/org/objectweb/proactive/examples/osgi/hello/Manifest/" />
	<property name="config.dir" value="${classes.dir}/${proactive.core.dir}/config/" />
	<property name="bundle.dir" value="${base}/dist/bundle" />

	<!-- ================================================================ -->
	<!--                   define the different classpaths                -->
	<!--  =============================================================== -->
	
	<path id="project.libs">
		<fileset dir="${lib}">
			<include name="*.jar" />
			<include name="jini/*.jar" />
			<include name="globus/*.jar" />
			<include name="ws/*.jar" />
			<include name="osgi/*.jar" />
			<include name="osgi/management/group/*.jar" />
			<include name="components/*.jar" />
			<include name="ibis/*.jar" />
			<include name="unicore/*.jar" />
			<include name="glite/*.jar" />
			<include name="scilab/*.jar" />
			<include name="timit/*.jar" />
		</fileset>
		<fileset dir="${lib}/ws">
			<include name="*.jar" />
			<include name="components/*.jar" />
		</fileset>
	</path>
		
	<path id="project.classpath">
		<pathelement location="${base}/classes" />
		<path refid="project.libs"/>
	</path>
	
	<path id="test.classpath">
		<pathelement location="${dist.dir}/ProActive/ProActive.jar"/>
		<path refid="project.libs"/>
		<pathelement location="${test.classes.dir}"/>
	</path>
	
	<path id="examples.classpath">
		<path refid="project.classpath" />
		<pathelement location="${lib}/examples/clibwrapper_jiio.jar" />
		<pathelement location="${lib}/examples/jai_codec.jar" />
		<pathelement location="${lib}/examples/jai_core.jar" />
		<pathelement location="${lib}/examples/mlibwrapper_jai.jar" />
		<pathelement location="${lib}/examples/jai_imageio.jar" />
	</path>


	<!-- ================================================================ -->
	<!--                       Initialisation                             -->
	<!--  =============================================================== -->
	<target name="init">
		<!-- Create the time stamp -->
		<tstamp>
			<format property="TODAY" pattern="yyyy-MM-dd" />
		</tstamp>
		<!-- Create the build directory structure used by compile -->
		<mkdir dir="${classes.dir}" />
		<echo message="--- Debugging is ${debug} ---" />
	</target>


	<!-- ================================================================ -->
	<!--                   Compile All and build the docs                 -->
	<!--  =============================================================== -->
	<target name="all" depends="compile,docs" description="Compile All and build the docs" />


	<!-- ================================================================ -->
	<!--                          Compile All                             -->
	<!--  =============================================================== -->
	<target name="compile" depends="ic2d, bnb, p2p,loadbalancing, scheduler, timit, examples, trywithcatch, stub_wrapper, scilab, osgi,jmx, mpi" description="build the class files" />


	<!-- ================================================================ -->
	<!--                   Compile ProActive Core                         -->
	<!--  =============================================================== -->
	<target name="configurationCopy">
		<copy toDir="${classes.dir}">
			<fileset dir="${src.dir}">
				<include name="org/**/*.xml" />
				<include name="org/**/*.fractal" />
				<include name="org/**/*.properties" />
				<include name="org/**/*.xsd" />
				<include name="org/objectweb/proactive/core/component/adl/xml/proactive.dtd" />
			</fileset>
		</copy>
		<!-- copy descriptor schema -->
		<copy todir="${classes.dir}/org/objectweb/proactive/core/descriptor/xml/" overwrite="yes" file="${base}/descriptors/DescriptorSchema.xsd"/>		
		<copy todir="${base}/descriptors/examples" overwrite="yes" file="${base}/descriptors/DescriptorSchema.xsd"/>
	</target>




	<target name="core" depends="init, configurationCopy" description="Compile the ProActive core classes">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/*.java" />
			<include name="${proactive.core.dir}/**/*.java" />
		</javac>

		<rmic classname="org.objectweb.proactive.core.body.jini.JiniRemoteBodyImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.body.rmi.RmiRemoteBodyImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.runtime.rmi.RmiProActiveRuntimeForwarderImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.runtime.jini.JiniRuntimeImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.body.ft.servers.FTServer" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
		<rmic classname="org.objectweb.proactive.core.body.rmi.RmiRemoteBodyForwarderImpl" base="${classes.dir}" sourcebase="${classes.dir}" stubversion="1.2">
			<classpath refid="project.classpath" />
		</rmic>
	</target>


	<!-- ================================================================ -->
	<!--                        Compile Extensions                        -->
	<!--  =============================================================== -->
	<target name="ext" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.ext.dir}/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                           Compile Tools                          -->
	<!--  =============================================================== -->
	<target name="tools" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.tools.dir}/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Branch and Bound                    -->
	<!--  =============================================================== -->
	<target name="bnb" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/branchnbound/**/*.java" />
		</javac>
		<!-- BnB API stubs generation -->
		<echo message="Branch and Bound API stubs generating..." />
		<property name="stub_bnb.classdir" value="${basedir}/../classes" />
		<path id="bnbClassDir">
			<pathelement path="${stub_bnb.classdir}" />
		</path>
		<pathconvert pathsep=" " property="bnbClassesDir" refid="bnbClassDir" />
		<path id="bnbClasses">
			<fileset dir="${classes.dir}/org/objectweb/proactive/branchnbound">
				<include name="**/*.class" />
				<exclude name="**/*$*" />
			</fileset>
		</path>
		<pathconvert pathsep=" " property="bnb-files" refid="bnbClasses">
			<map from="${bnbClassesDir}" to="" />
		</pathconvert>
		<java classname="org.objectweb.proactive.ext.util.StubGenerator" fork="true">
			<classpath refid="project.classpath" />
			<arg line="-d ${classes.dir}
        ${bnb-files}" />
		</java>
	</target>

	<!-- ================================================================ -->
	<!--                      Compile TimIt for benchmarking              -->
	<!--  =============================================================== -->
	<target name="timit" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="off" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/benchmarks/timit/**/*.java" />
		</javac>
	</target>

	<!-- ================================================================ -->
	<!--                      Compile Calcium Stubs                       -->
	<!--  =============================================================== -->
	<target name="calcium" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/calcium/**/*.java" />
		</javac>
		<!-- Calcium stubs generation -->
		<echo message="Calcium stubs generating..." />
		<property name="stub_calcium.classdir" value="${basedir}/../classes" />
		<path id="calciumClassDir">
			<pathelement path="${stub_calcium.classdir}" />
		</path>
		<pathconvert pathsep=" " property="calciumClassesDir" refid="calciumClassDir" />
		<path id="calciumClasses">
			<fileset dir="${classes.dir}/org/objectweb/proactive/calcium/proactive">
				<include name="**/*.class" />
				<exclude name="**/*$*" />
			</fileset>
			<fileset dir="${classes.dir}/org/objectweb/proactive/calcium/">
				<include name="**/*Task.class"/>
				<exclude name="**/*$*" />
			</fileset>
		</path>
		<pathconvert pathsep=" " property="calcium-files" refid="calciumClasses">
			<map from="${calciumClassesDir}" to="" />
		</pathconvert>
		<java classname="org.objectweb.proactive.ext.util.StubGenerator" fork="true">
			<classpath refid="project.classpath" />
			<arg line="-d ${classes.dir} ${calcium-files}" />
		</java>
	</target>

	<!-- ================================================================ -->
	<!--                          Compile Scheduler                       -->
	<!--  =============================================================== -->

	<target name="scheduler" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/scheduler/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                          Compile ic2d                            -->
	<!--  =============================================================== -->
	<target name="ic2d" depends="ext" description="Compile the IC2D Tool">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/ic2d/**/*.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
		</javac>
		<copy todir="${classes.dir}/${proactive.dir}/ic2d/gui/images" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/ic2d/gui/images" />
		</copy>
		<!-- JobMonitor images -->
		<copy todir="${classes.dir}/${proactive.dir}/ic2d/gui/jobmonitor/images" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/ic2d/gui/jobmonitor/images" />
		</copy>
	</target>

	<!-- ================================================================ -->
	<!--                          Compile scilab                            -->
	<!--  =============================================================== -->
	<target name="scilab" depends="ext" description="Compile the SCILAB Tool">
		<copy todir="${classes.dir}/${proactive.dir}/ext/scilab/gui/img" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/ext/scilab/gui/img" />
		</copy>
	</target>

	<!-- ================================================================ -->
	<!--                      Compile LoadBalancing                       -->
	<!--  =============================================================== -->
	<target name="loadbalancing" depends="ext">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/loadbalancing/**/*.java" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile P2P                                 -->
	<!--  =============================================================== -->
	<target name="p2p" depends="ext">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/p2p/**/*.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
		</javac>
	</target>
	<target name="daemon" depends="p2p">
		<exec dir="${daemon.dir}/src/common" executable="cc" os="Linux, Darwin, SunOS">
			<arg line="-Wall -g -o proactivep2p -x c proactivep2p.cpp proactivep2p.h" />
		</exec>
		<exec dir="${daemon.dir}/src/common" executable="cc" os="Linux, Darwin, SunOS">
			<arg line="-Wall -g -o p2pctl -x c p2pctl.c proactivep2p.h" />
		</exec>
		<mkdir dir="${daemon.dir}/build" />
		<move file="${daemon.dir}/src/common/proactivep2p" todir="${daemon.dir}/build" />
		<move file="${daemon.dir}/src/common/p2pctl" todir="${daemon.dir}/build" />
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Examples                            -->
	<!--  =============================================================== -->

	<target name="examples" depends="ext" description="Compile all the examples">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/examples/**/*.java" excludes="${proactive.dir}/examples/nbody/common/NBody3DFrame.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="examples.classpath" />
		</javac>
		<copy todir="${classes.dir}/${proactive.dir}/examples" includeEmptyDirs="no">
			<fileset dir="${src.dir}/${proactive.dir}/examples">
				<exclude name="**/*.java" />
			</fileset>
		</copy>
		<antcall target="nbody3d" />
	</target>

	<available property="java3d_present" classname="com.sun.j3d.utils.behaviors.mouse.MouseWheelZoom" />

	<target name="check_java3d" unless="java3d_present" depends="init">
		<echo message="Info: Java 3D dependencies were not resolved." />
	</target>

	<target name="nbody3d" depends="check_java3d" if="java3d_present">
		<echo message="Info: Java3D installed." />
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/examples/**/*.java" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="examples.classpath" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--             Copy various files to classes directory              -->
	<!--  =============================================================== -->
	<target name="copyDivers">
		<copy toDir="${classes.dir}">
			<fileset dir="${src.dir}">
				<include name="**/*.prop" />
				<include name="**/*.css" />
				<include name="**/*.xml" />
				<include name="**/*.xsl" />
				<include name="**/*.xsd" />
			</fileset>
		</copy>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Test Suite                         -->
	<!--  =============================================================== -->
	<target name="testsuite" depends="ext, copyDivers">
		<mkdir dir="${test.classes.dir}"/>
		<javac srcdir="${src.dir}" destdir="${test.classes.dir}" includes="testsuite/**" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
		</javac>
	</target>


	<!-- ================================================================ -->
	<!--                      Compile Migration                           -->
	<!--  =============================================================== -->
	<target name="migration" depends="ext">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="migration/**" deprecation="on" source="${source}" debug="${debug}" />
	</target>


	<!-- ================================================================ -->
	<!--                      Compile JMX Connector                       -->
	<!--  =============================================================== -->
	<target name="jmx" depends="core">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="${proactive.dir}/jmx/**/**" deprecation="on" source="${source}" debug="${debug}" />
	</target>
	
	<!-- ================================================================ -->
	<!--                      Compile OSGi                       -->
	<!--  =============================================================== -->
	
	<target name="osgi" depends="core" description="Compile osgi related stuff">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" deprecation="on" source="${source}" debug="${debug}">
			<classpath refid="project.classpath" />
			<include name="${proactive.dir}/osgi/**/*.java" />
		</javac>
	</target>
	<!-- ================================================================ -->
	<!--                      Compile TryWithCatch annotator              -->
	<!--  =============================================================== -->
	<target name="trywithcatch">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="trywithcatch/" deprecation="on" source="${source}" debug="${debug}" />
	</target>


	<!-- ================================================================ -->
	<!--                      Compile util                                -->
	<!--  =============================================================== -->
	<target name="util" depends="">
		<javac srcdir="${src.dir}" destdir="${classes.dir}" includes="util/**" deprecation="on" source="${source}" debug="${debug}" />
	</target>


	<!-- ================================================================ -->
	<!--                      All the junk targets                        -->
	<!--  =============================================================== -->
	<target name="alljunk" depends="compile, migration, nonregressiontest" />


	<!-- ================================================================ -->
	<!--                  Clean up generated files                        -->
	<!--  =============================================================== -->
	<target name="clean" description="Remove all generated files">
		<delete dir="${classes.dir}" />
		<delete dir="${dist.dir}" />
		<delete dir="${docs.dir}" />
		<delete dir="${classlibs.dir}" />
		<delete dir="${test.classes.dir}" />
        <delete file="tests.log" />
        <delete file="descriptors/examples/DescriptorExamples.xsd"/>
	</target>


	<!-- ================================================================ -->
	<!--                      Create ProActive.jar                        -->
	<!--  =============================================================== -->
	<target name="proActiveJar" depends="dist-mk-dir,ext,tools, bnb, p2p, calcium" description="Create the ProActive jar, to be used for instance on a distant host">
		<jar jarfile="${PAdist.dir}/ProActive.jar">
			<fileset dir="${classes.dir}">
				<include name="${proactive.dir}/core/descriptor/xml/DescriptorSchema.xsd"/>
				<include name="${proactive.dir}/**" />
				<exclude name="${proactive.dir}/examples/**" />
				<exclude name="${proactive.dir}/ic2d/**" />
			</fileset>
		</jar>
	</target>


	<!-- ================================================================ -->
	<!--                    Create OSGI ProActiveBundle.jar                    -->
	<!--  =============================================================== -->
	<target name="proActiveBundle" depends="proActiveJar">
		<mkdir dir="${bundle.dir}" />
		<jar manifest="${manifest.dir}/Manifest.mf" jarfile="${bundle.dir}/proactiveBundle.jar">
			<fileset dir="${classes.dir}">
				<include name="${proactive.dir}/**" />
			</fileset>
			<fileset dir="${lib}/">
				<include name="asm.jar" />
				<include name="log4j.jar" />
				<include name="xercesImpl.jar" />
				<include name="bouncycastle.jar" />
				<include name="components/fractal.jar" />
			</fileset>

			<fileset dir="${config.dir}">
				<include name="ProActiveConfiguration.xml" />
			</fileset>
		</jar>
	</target>


	<!-- ================================================================ -->
	<!--                  Create OSGI helloWorlBundle.jar                      -->
	<!--  =============================================================== -->
	<target name="helloWorldBundle" depends="proActiveJar">
		<mkdir dir="${bundle.dir}" />
		<jar manifest="${manifest.example.dir}/Manifest.mf" jarfile="${bundle.dir}/helloWorldBundle.jar">
			<fileset dir="${classes.dir}">
				<include name="${proactive.dir}/examples/osgi/hello/HelloActivator.class" />
				<include name="${proactive.dir}/examples/hello/Hello.class" />
			</fileset>
		</jar>
	</target>


	<!-- ================================================================ -->
	<!--                  Create  distribution bin                        -->
	<!--  =============================================================== -->

	<target name="dist-mk-dir" description="Make distribution directories">
		<delete dir="${dist.dir}" />
		<mkdir dir="${dist.dir}" />
		<mkdir dir="${PAdist.dir}" />
	</target>
	
	<target name="dist-cp-files" depends="dist-mk-dir, configurationCopy" 
		description="Copy files for the release">
		<!--        copy docs / scripts / src / compile / lib      -->
		<copy todir="${PAdist.dir}" includeEmptyDirs="no">
			<fileset dir="${base}">
				<include name="README.html" />
				<include name="docs/**" />
				<include name="doc-src/**" />
				<include name="scripts/**" />
				<include name="src/org/**" />
				<include name="compile/**" />
				<include name="lib/**" />
				<include name="descriptors/**" />
				<include name="p2p/**" />
				<include name="ic2d-plugins-src/**" />
				
				<exclude name="p2p/config/**" />
				<exclude name="**/.svn" />
				<exclude name="scripts/unix/grid5000/**" />
				<exclude name="scripts/unix/gridexperiment/**" />
			</fileset>
		</copy>		
		<!-- set right files permissions -->
		<chmod dir="${PAdist.dir}/scripts/unix" perm="755" includes="**/*.sh" />
		<chmod file="${PAdist.dir}/compile/build" perm="755" />
	</target>
	
	<target name="dist-examples_ic2d-jar" 
		depends="dist-mk-dir, compile, proActiveJar, dist-cp-files">
		<!-- Build the examples Jar -->
		<jar jarfile="${PAdist.dir}/ProActive_examples.jar" 
			basedir="${classes.dir}" 
			includes="${proactive.dir}/examples/**" />
		<!-- Build ic2d (NOT ECLIPSE version) Jar -->
		<jar jarfile="${PAdist.dir}/ic2d.jar" basedir="${classes.dir}"
			includes="${proactive.dir}/ic2d/**" />
	</target>
		
	<target name="dist-bin"
		depends="dist-examples_ic2d-jar"
		description="Create zip with only jars">
		<!-- Zip with Jars: PA, PAExamples, required libs, scripts -->
		<zip zipfile="${dist.dir}/ProActive-bin-${version_}.zip">
			<zipfileset dir="${PAdist.dir}" filemode="755" prefix="ProActive">
				<exclude name="src/**" />
				<exclude name="compile/**" />
				<exclude name="doc-src/**" />
				<exclude name="p2p/**" />
				<exclude name="docs/**" />
				<exclude name="README.html" />
				<exclude name="ic2d-plugins-src/**" />
			</zipfileset>
		</zip>
	</target>
	
	<target name="dist-doc" depends="dist-mk-dir, docs, dist-cp-files"
		description="Create zip with only doc">
		<zip zipfile="${dist.dir}/ProActive-doc-${version_}.zip">
			<zipfileset dir="${PAdist.dir}/docs" prefix="ProActive/docs" />
		</zip>
	</target>
	
	<target name="dist-src" depends="dist-mk-dir, dist-cp-files"
		description="Create zip with only sources and libs">
		<zip zipfile="${dist.dir}/ProActive-src-${version_}.zip">
			<zipfileset dir="${PAdist.dir}" filemode="755" prefix="ProActive" >
				<exclude name="docs/**"/>
				<exclude name="ProActive_examples.jar" />
				<exclude name="ic2d.jar" />
				<exclude name="ProActive.jar" />
			</zipfileset>
		</zip>
	</target>
	
	<target name="dist-bundle" depends="dist-mk-dir, compile, proActiveJar, dist-examples_ic2d-jar, docs, dist-cp-files"
		description="Create a zip with everythings">
		<zip zipfile="${dist.dir}/ProActive-bundle-${version_}.zip">
			<zipfileset dir="${PAdist.dir}" filemode="755" prefix="ProActive">
				<exclude name="doc-src/**" />
			</zipfileset>
		</zip>
	</target>
	
	<target name="dist" depends="dist-doc, dist-bin, dist-src, dist-bundle" 
		description="Create zips for release"/>

	<!-- ================================================================ -->
	<!--        Add Copyright and format source files                     -->
	<!--  =============================================================== -->
	<target name="copyright_format" depends="copyright, format" />

	<target name="copyright" depends="util">
		<java classname="util.AddCopyright" fork="true">
			<classpath refid="project.classpath" />
			<arg value="${src.dir}/org/objectweb/proactive" />
		</java>
	</target>


	<!-- ================================================================ -->
	<!--            Formats the project sources                           -->
	<!-- ================================================================ -->
	<target name="format" description="Formats the project source files">

		<!-- declare the Jalopy task -->
		<taskdef name="jalopy" classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
			<classpath>
				<fileset dir="${base}/dev/lib">
					<include name="*.jar" />
				</fileset>
				<fileset dir="${lib}">
					<include name="log4j.jar" />
				</fileset>
			</classpath>
		</taskdef>

{'fraction_non_alphanumeric': 0.3370334679959972, 'fraction_numerical': 0.003205959749453319, 'mean_word_length': 3.705118144563606, 'pattern_counts': {'":': 0, '<': 1036, '<?xml version=': 2, '>': 1036, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 16}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3354416', 'n_tokens_mistral': 17079, 'n_tokens_neox': 14972, 'n_words': 2461}