<?xml version="1.0" encoding="UTF-8"?>
<!--
    * Licensed to the Apache Software Foundation (ASF) under one
    * or more contributor license agreements.  See the NOTICE file
    * distributed with this work for additional information
    * regarding copyright ownership.  The ASF licenses this file
    * to you under the Apache License, Version 2.0 (the
    * "License"); you may not use this file except in compliance
    * with the License.  You may obtain a copy of the License at
    * 
    *   http://www.apache.org/licenses/LICENSE-2.0
    * 
    * Unless required by applicable law or agreed to in writing,
    * software distributed under the License is distributed on an
    * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    * KIND, either express or implied.  See the License for the
    * specific language governing permissions and limitations
    * under the License.    
-->
<project name="project" default="install">

    <property name="prefix" value="tuscany-sca-1.0-incubator-M2"/>
    <property name="url" value="http://svn.apache.org/repos/asf/incubator/tuscany"/>

    <target name="clean">
	<delete dir="target/javadoc" quiet="true"/>
	<delete dir="target/source" quiet="true"/>
	<delete dir="target" quiet="true">
            <include name="*.zip"/>
            <include name="*.tar.gz"/>
        </delete>
    </target>

    <target name="install" depends="spec.sca, spec.commonj, source, sample, javadoc" />

    <target name="javadoc" depends="spec.sca">

	<delete dir="target/javadoc" quiet="true"/>

        <javadoc packagenames="org.osoa.*" sourcepath="target/source/zip/spec/sca/src/main/java"
               defaultexcludes="yes"
               destdir="target/javadoc/spec/sca"
               author="true"
               version="true"
               use="true">
            <link href="http://java.sun.com/j2se/1.5.0/docs/api/"/>
        </javadoc>

        <javadoc packagenames="commonj.*" sourcepath="target/source/zip/spec/commonj/src/main/java"
               defaultexcludes="yes"
               destdir="target/javadoc/spec/commonj"
               author="true"
               version="true"
               use="true">
            <link href="http://java.sun.com/j2se/1.5.0/docs/api/"/>
        </javadoc>

        <unzip dest="target/javadoc/api">
            <fileset dir="../kernel/api">
                <include name="target/*javadoc.jar"/>
            </fileset>
        </unzip>
        <unzip dest="target/javadoc/host-api">
            <fileset dir="../kernel/host-api">
                <include name="target/*javadoc.jar"/>
            </fileset>
        </unzip>
        <unzip dest="target/javadoc/spi">
            <fileset dir="../kernel/spi">
                <include name="target/*javadoc.jar"/>
            </fileset>
        </unzip>

	<copy todir="target/javadoc">
            <fileset dir=".."> 
                <include name="LICENSE.txt"/>
                <include name="NOTICE.txt"/>
                <include name="STATUS.txt"/>
            </fileset>
	</copy>

        <zip destfile="target/${prefix}-javadoc.zip">
            <zipfileset dir="target/javadoc" prefix="javadoc"/>
        </zip>
        <tar destfile="target/${prefix}-javadoc.tar" longfile="gnu">
            <tarfileset dir="target/javadoc" prefix="javadoc"/>
        </tar>
        <gzip zipfile="target/${prefix}-javadoc.tar.gz" src="target/${prefix}-javadoc.tar" />
	<delete file="target/${prefix}-javadoc.tar" />
    </target>

    <target name="spec.sca">
	<property name="archive.prefix.sca" value="target/${prefix}-spec-sca-src"/>
	<property name="target.zip.sca" value="target/source/zip/spec/sca"/>
	<property name="target.gz.sca" value="target/source/gz/spec/sca"/>

	<delete dir="${target.zip.sca}" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol CRLF ${url}/tags/java/spec/sca/1.0-incubator-M2 ${target.zip.sca}"/>
        </exec>

        <zip destfile="${archive.prefix.sca}.zip">
            <zipfileset dir="${target.zip.sca}" prefix="src/spec/sca"/>
        </zip>

	<delete dir="${target.gz.sca}" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol LF ${url}/tags/java/spec/sca/1.0-incubator-M2 ${target.gz.sca}"/>
        </exec>

        <tar destfile="${archive.prefix.sca}.tar" longfile="gnu">
            <tarfileset dir="${target.gz.sca}" prefix="src/spec/sca"/>
        </tar>
        <gzip zipfile="${archive.prefix.sca}.tar.gz" src="${archive.prefix.sca}.tar" />
	<delete file="${archive.prefix.sca}.tar" />

    </target>

    <target name="spec.commonj">
	<property name="archive.prefix.commonj" value="target/${prefix}-spec-commonj-src"/>
	<property name="target.zip.commonj" value="target/source/zip/spec/commonj"/>
	<property name="target.gz.commonj" value="target/source/gz/spec/commonj"/>

	<delete dir="${target.zip.commonj}" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol CRLF ${url}/tags/java/spec/commonj/1.0-incubator-M2 ${target.zip.commonj}"/>
        </exec>

        <zip destfile="${archive.prefix.commonj}.zip">
            <zipfileset dir="${target.zip.commonj}" prefix="src/spec/commonj"/>
        </zip>

	<delete dir="${target.gz.commonj}" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol LF ${url}/tags/java/spec/commonj/1.0-incubator-M2 ${target.gz.commonj}"/>
        </exec>

        <tar destfile="${archive.prefix.commonj}.tar" longfile="gnu">
            <tarfileset dir="${target.gz.commonj}" prefix="src/spec/commonj"/>
        </tar>
        <gzip zipfile="${archive.prefix.commonj}.tar.gz" src="${archive.prefix.commonj}.tar" />
	<delete file="${archive.prefix.commonj}.tar" />

    </target>


    <target name="source">

	<delete dir="target/source/zip/sca" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol CRLF ${url}/branches/sca-java-M2/sca target/source/zip/sca"/>
        </exec>

        <zip destfile="target/${prefix}-src.zip">
            <zipfileset dir="target/source/zip/sca" prefix="src/sca"/>
        </zip>

	<delete dir="target/source/gz/sca" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol LF ${url}/branches/sca-java-M2/sca target/source/gz/sca"/>
        </exec>

        <tar destfile="target/${prefix}-src.tar" longfile="gnu">
            <tarfileset dir="target/source/gz/sca" prefix="src/sca"/>
        </tar>
        <gzip zipfile="target/${prefix}-src.tar.gz" src="target/${prefix}-src.tar" />
	<delete file="target/${prefix}-src.tar" />

    </target>

    <target name="sample">

	<delete dir="target/source/zip/samples" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol CRLF ${url}/branches/sca-java-M2/samples target/source/zip/samples"/>
        </exec>

        <zip destfile="target/${prefix}-sample-src.zip">
            <zipfileset dir="target/source/zip/samples" prefix="src/samples"/>
        </zip>

	<delete dir="target/source/gz/samples" quiet="true"/>
	<exec executable="svn">
            <arg line="export --native-eol LF ${url}/branches/sca-java-M2/samples target/source/gz/samples"/>
        </exec>

        <tar destfile="target/${prefix}-sample-src.tar" longfile="gnu">
            <tarfileset dir="target/source/gz/samples" prefix="src/samples"/>
        </tar>
        <gzip zipfile="target/${prefix}-sample-src.tar.gz" src="target/${prefix}-sample-src.tar" />
	<delete file="target/${prefix}-sample-src.tar" />

    </target>

</project>
