<project name="dist-mac" default="build" basedir=".">
  <property name="dist.platform" value="mac" />
  <import file="../common.ant.xml" />
  <property name="project.dist" location="${gwt.build.dist}/${project.distname}.tar.gz" />

  <target name="build" depends="filter" description="Packages the distro">
    <!-- TODO: figure out how to share most of this across platforms -->
    <mkdir dir="${gwt.build.dist}" />
    <gwt.tgz.cat destfile="${project.dist}">
      <!-- jars -->
      <tarfileset file="${gwt.build.lib}/gwt-dev-${dist.platform}.jar" prefix="${project.distname}" />
      <tarfileset file="${gwt.build.lib}/gwt-user.jar" prefix="${project.distname}" />
      <tarfileset file="${gwt.build.lib}/gwt-servlet.jar" prefix="${project.distname}" />
      <tarfileset file="${gwt.build.lib}/gwt-benchmark-viewer.war" prefix="${project.distname}" />
      <tarfileset file="${gwt.build.lib}/gwt-api-checker.jar" prefix="${project.distname}" />

      <!-- jni libs-->
      <tarfileset dir="${gwt.build.jni}/${dist.platform}" prefix="${project.distname}" />
      <tarfileset dir="${gwt.tools.lib}/eclipse" prefix="${project.distname}">
        <include name="libswt-*carbon-3235.jnilib" />
        <!-- Use our modified version instead of this stock version -->
        <exclude name="libswt-webkit-carbon-3235.jnilib" />
      </tarfileset>

      <!-- raw files -->
      <tarfileset dir="${dist.resources}" prefix="${project.distname}" mode="755">
        <patternset refid="chmod.executables" />
      </tarfileset>
      <tarfileset dir="${dist.resources}" prefix="${project.distname}">
        <patternset refid="chmod.not.executables" />
      </tarfileset>
      <tarfileset dir="src" prefix="${project.distname}" mode="755">
        <patternset refid="chmod.executables" />
      </tarfileset>
      <tarfileset dir="src" prefix="${project.distname}">
        <patternset refid="chmod.not.executables" />
      </tarfileset>

      <!-- doc -->
      <tarfileset dir="${gwt.build.out}" prefix="${project.distname}">
        <include name="doc" />
        <include name="doc/html/**" />
        <include name="doc/css/**" />
        <include name="doc/javadoc/**" />
      </tarfileset>

      <!-- samples -->
      <tarfileset dir="${gwt.build.out}" prefix="${project.distname}">
        <include name="samples" />
        <include name="samples/*" />
        <include name="samples/*/src/**" />
        <include name="samples/*/war/**" />
      </tarfileset>
      <tarfileset dir="${gwt.build.out}/samples-scripts/${dist.platform}" mode="755" prefix="${project.distname}/samples">
        <include name="*/*" />
      </tarfileset>
    </gwt.tgz.cat>

    <if>
      <isset property="build.host.ismac" />
      <then>
        <!--
          Untar distro into the staging directory.  Must use GNU tar
          to handle permissions and symlinks correctly.
        -->
        <mkdir dir="${gwt.build.staging}" />
        <exec executable="tar" failonerror="true">
          <arg value="-xpzf" />
          <arg file="${project.dist}" />
          <arg value="-C" />
          <arg file="${gwt.build.staging}" />
        </exec>
      </then>
    </if>
  </target>
</project>
