<?xml version="1.0"?>
<!--
     Copyright (c) 2005, 2012 IBM Corporation and others.
     All rights reserved. This program and the accompanying materials
     are made available under the terms of the Eclipse Public License v1.0
     which accompanies this distribution, and is available at
     http://www.eclipse.org/legal/epl-v10.html
    
     Contributors:
         IBM Corporation             - initial API and implementation
         Anna Dushistova(MontaVista) - extracted dstore related targets from customTargets.xml
 -->
<project name="Dstore server related targets" default="noDefault">
  <target name="noDefault">
    <echo message="You must specify a target when invoking this file"/>
  </target>
  <target name="serverruntime">
    <property name="working" value="${buildDirectory}/rseserver"/>
    <mkdir dir="${working}"/>
    <mkdir dir="${working}/jars"/>
    <copy todir="${working}">
	    <fileset dir="${buildDirectory}/rse/plugins/org.eclipse.rse.services.dstore/serverruntime" includes="**"/>
    </copy>
    <copy todir="${working}/jars">
	    <fileset dir="${buildDirectory}/rse/plugins/org.eclipse.dstore.core" includes="dstore_core.jar"/>
	    <fileset dir="${buildDirectory}/rse/plugins/org.eclipse.dstore.extra" includes="dstore_extra_server.jar"/>
	    <fileset dir="${buildDirectory}/rse/plugins/org.eclipse.rse.services" includes="clientserver.jar"/>
	    <fileset dir="${buildDirectory}/rse/plugins/org.eclipse.rse.services.dstore" includes="dstore_miners.jar"/>
    </copy>
    <antcall target="rseserver-os-tar">
      <param name="os" value="unix"/>
      <param name="eol" value="lf"/>
    </antcall>
    <antcall target="rseserver-os-tar">
      <param name="os" value="macosx"/>
      <param name="eol" value="lf"/>
    </antcall>
    <antcall target="rseserver-os-tar">
      <param name="os" value="linux"/>
      <param name="eol" value="lf"/>
    </antcall>
    <antcall target="rseserver-os-zip">
      <param name="os" value="windows"/>
      <param name="eol" value="crlf"/>
    </antcall>
    <delete dir="${working}"/>
  </target>
  <target name="rseserver-os-tar" depends="rseserver-os-collect">
    <tar destfile="${buildDirectory}/rseserver-${buildId}-${os}.tar">
      <tarfileset dir="${working}/collector" mode="755" includes="*.pl,*.sh"/>
      <tarfileset dir="${working}/collector" mode="644" excludes="*.pl,*.sh"/>
    </tar>
    <delete dir="${working}/collector"/>
  </target>
  <target name="rseserver-os-zip" depends="rseserver-os-collect">
    <zip destfile="${buildDirectory}/rseserver-${buildId}-${os}.zip" basedir="${working}/collector" includes="*"/>
    <delete dir="${working}/collector"/>
  </target>
  <target name="rseserver-os-collect">
    <mkdir dir="${working}/collector"/>
    <copy todir="${working}/collector">
      <fileset dir="${working}/scripts/${os}" includes="*"/>
      <fileset dir="${working}/data" includes="*"/>
    </copy>
    <replace file="${working}/collector/build.dat">
      <replacefilter token="@build@" value="${buildId}"/>
      <replacefilter token="@version@" value="${mapVersionTag}"/>
    </replace>
    <fixcrlf srcdir="${working}/collector" eol="${eol}" eof="asis" includes="*"/>
    <copy todir="${working}/collector">
      <fileset dir="${working}/jars" includes="*"/>
      <fileset dir="${builder}/template" includes="notice.html,epl-v10.html"/>
    </copy>
  </target>
  <!-- ===================================================================== -->
  <!-- Called after invoking the gather.bin.parts targets for all plugins    -->
  <!-- and features. Results exist as folders and have not yet been jarred.  -->
  <!-- ===================================================================== -->
  <!--  <target name="post.gather.bin.parts"> -->
<!--  <target name="hideServerStuff">
    <mkdir dir="${buildDirectory}/hidden"/>
    <move todir="${buildDirectory}/hidden">
      <fileset dir="${buildDirectory}/plugins">
        <include name="**/clientserver.jar"/>
        <include name="**/dstore_core.jar"/>
        <include name="**/dstore_extra_server.jar"/>
        <include name="**/dstore_miners.jar"/>
        <include name="**/clientserversrc.zip"/>
        <include name="**/dstore_coresrc.zip"/>
        <include name="**/dstore_extra_serversrc.zip"/>
        <include name="**/dstore_minerssrc.zip"/>
      </fileset>
    </move>
    <mkdir dir="${buildDirectory}/hidden.tmp"/>
    <move todir="${buildDirectory}/hidden.tmp">
      <fileset dir="${buildDirectory}/tmp">
        <include name="**/clientserver.jar"/>
        <include name="**/dstore_core.jar"/>
        <include name="**/dstore_extra_server.jar"/>
        <include name="**/dstore_miners.jar"/>
        <include name="**/clientserversrc.zip"/>
        <include name="**/dstore_coresrc.zip"/>
        <include name="**/dstore_extra_serversrc.zip"/>
        <include name="**/dstore_minerssrc.zip"/>
      </fileset>
    </move>
  </target>-->
  <!-- </target> -->
  <!-- ===================================================================== -->
  <!-- Called after all plugins and features have been jarred                -->
  <!-- (and potentially signed)                                              -->
  <!-- ===================================================================== -->
  <!-- <target name="post.jarUp"> -->
<!--  <target name="revealServerStuff">
    <move todir="${buildDirectory}/tmp">
      <fileset dir="${buildDirectory}/hidden.tmp" includes="**"/>
    </move>
    <delete dir="${buildDirectory}/hidden.tmp"/>
    <move todir="${buildDirectory}/plugins">
      <fileset dir="${buildDirectory}/hidden" includes="**"/>
    </move>
    <delete dir="${buildDirectory}/hidden"/>
  </target>
  -->
  <!-- </target> -->
</project>
