<?xml version="1.0"?>
<!--

  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="automation_airspark" default="main" basedir=".">

    <property name="FLEX_HOME" location="${basedir}/../../.."/>

    <property file="${FLEX_HOME}/env.properties"/>
    <property environment="env"/>
	<property file="${FLEX_HOME}/build.properties"/>
	
	<macrodef name="bundle">
		<attribute name="locale"/>
		<sequential>
			<echo message="Compiling frameworks/locale/@{locale}/automation_airspark_rb.swc"/>

			<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/lib/flexTasks.jar"/>
			<compc fork="true"
				   output="${FLEX_HOME}/frameworks/locale/@{locale}/automation_airspark_rb.swc">
				<jvmarg line="${compc.jvm.args}"/>
                <load-config filename="bundle-config.xml" />
                <arg value="+playerglobal.version=${playerglobal.version}" />
                <arg value="+locale=@{locale}" />
			</compc>
		</sequential>
	</macrodef>	
	
	<macrodef name="fat-swc">
		<attribute name="locale"/>
		<sequential>
			<mkdir dir="${basedir}/bundles/@{locale}/docs" />
			<zip destfile="${FLEX_HOME}/frameworks/locale/@{locale}/automation_airspark_rb.swc" update="true">
				<zipfileset dir="${basedir}/bundles/@{locale}/docs" prefix="docs">
					<include name="*.*"/>
				</zipfileset>
			</zip>
		</sequential>
	</macrodef>	
	
	<macrodef name="bundler">
		<attribute name="locale"/>
		<sequential>
			<bundle locale="@{locale}"/>
			<fat-swc locale="@{locale}"/>
		</sequential>
	</macrodef>
	
	<target name="main" depends="clean,compile" description="Clean build of automation_airspark.swc"/>
			
	<!--<target name="other.locales" depends="bundles-clean,bundles" description="Build other locale SWCs"/>-->
	
	<!-- This is a private target for building automation_rb.swc for various locales. -->
	<!-- The targets below set the 'locale' parameter  -->
	<!--<target name="bundles">
		<bundler locale="da_DK"/>
		<bundler locale="de_DE"/>
		<bundler locale="en_US"/>
		<bundler locale="en_AU"/>
		<bundler locale="en_GB"/>
		<bundler locale="en_CA"/>
		<bundler locale="es_ES"/>
		<bundler locale="fi_FI"/>
		<bundler locale="fr_FR"/>
		<bundler locale="it_IT"/>
		<bundler locale="ja_JP"/>
		<bundler locale="ko_KR"/>
		<bundler locale="nb_NO"/>
		<bundler locale="nl_NL"/>
		<bundler locale="pt_BR"/>
		<bundler locale="ru_RU"/>
		<bundler locale="sv_SE"/>
		<bundler locale="zh_CN"/>
		<bundler locale="zh_TW"/>
		<bundler locale="el_GR"/>
	</target>-->
		
	<target name="compile" description="Compiles automation_airspark.swc">
		<echo message="Compiling frameworks/libs/automation/automation_airspark.swc"/>
		<echo message="Using ${env.AIR_HOME}/frameworks/libs/air/airglobal.swc" level="info"/>

		<!-- Load the <compc> task. We can't do this at the <project> level -->
		<!-- because targets that run before flexTasks.jar gets built would fail. -->
		<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/lib/flexTasks.jar"/>
		<!--
			Link in the classes (and their dependencies) for the MXML tags
			listed in this project's manifest.xml.
			Also link the additional classes (and their dependencies)
			listed in FrameworkClasses.as,
			because these aren't referenced by the manifest classes.
			Keep the standard metadata when compiling.
			Link in accessibility support.
			Include the appropriate CSS files and assets in the SWC.
			Don't include any resources in the SWC.
			Write a bundle list of referenced resource bundles
			into the file bundles.properties in this directory.
		-->
	
		<compc fork="true"
			   output="${FLEX_HOME}/frameworks/libs/automation/automation_airspark.swc"
			   resource-bundle-list="${basedir}/bundles.properties">
			<jvmarg line="${compc.jvm.args}"/>
            <load-config filename="compile-config.xml" />
            <arg value="+playerglobal.version=${playerglobal.version}" />
            <arg value="+env.AIR_HOME=${env.AIR_HOME}" />
		</compc>
	</target>
			
	<target name="doc" depends="clean-temp-docs" description="updates framework.swc with asdoc xml">
		<!-- Load the <asdoc> task. We can't do this at the <project> level -->
		<!-- because targets that run before flexTasks.jar gets built would fail. -->
		<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/lib/flexTasks.jar"/>

	    <condition property="asdoc.jvm.args" value="-Xmx384m">
	        <os family="windows"/>
	    </condition>

	    <condition property="asdoc.jvm.args" value="-Xmx512m">
	        <os family="mac"/>
	    </condition>

	    <condition property="asdoc.jvm.args" value="-Xmx512m">
	        <os family="unix"/>
	    </condition>

		<!-- Call asdoc to generate dita xml files -->
		<asdoc output="${FLEX_HOME}/tempDoc" lenient="true" failonerror="true" keep-xml="true" skip-xsl="true" fork="true">
			<compiler.source-path path-element="${basedir}/src"/>
			<doc-classes>AutomationAirSparkClasses</doc-classes>
			<doc-namespaces uri="http://www.adobe.com/2006/mxml"/>
		    <namespace uri="http://www.adobe.com/2006/mxml" manifest="${basedir}/manifest_automation_airspark.xml"/>
		    <jvmarg line="${asdoc.jvm.args}"/>
			<library-path/>
            <external-library-path dir="${env.AIR_HOME}/frameworks/libs/air">
                <include name="airglobal.swc"/>
            </external-library-path>
            <external-library-path dir="${FLEX_HOME}/frameworks/libs">
                <include name="framework.swc"/>
				<include name="mx/mx.swc"/>
				<include name="spark.swc"/>
                <include name="textLayout.swc"/>
				<include name="air/airframework.swc"/>
				<include name="air/airspark.swc"/>
				<include name="automation/automation.swc"/>
				<include name="automation/automation_spark.swc"/>
				<include name="automation/automation_air.swc"/>
				<include name="automation/automation_agent.swc"/>
				<include name="automation/qtp.swc"/>
				<include name="automation/qtp_air.swc"/>
			</external-library-path>
		</asdoc>

		<!-- updates automation_airspark.swc with asdoc xml -->
		<zip destfile="${FLEX_HOME}/frameworks/libs/automation_airspark.swc" update="true">
		    <zipfileset dir="${FLEX_HOME}/tempDoc/tempdita" prefix="docs">
			    <include name="*.*"/>
				<exclude name="ASDoc_Config.xml"/>
				<exclude name="overviews.xml"/>
		    </zipfileset>
		</zip>
	</target>

	<target name="clean">
		<delete failonerror="false">
			<fileset dir="${basedir}" >
				<include name="bundles.properties"/>
			</fileset>
			<fileset dir="${FLEX_HOME}/frameworks/libs/automation">
				<include name="automation_airspark.swc"/>
				<include name="automation_airspark.swc.incr"/>
			</fileset>
			<fileset dir="${FLEX_HOME}/frameworks/libs">
				<include name="automation_airspark.swc"/>
				<include name="automation_airspark.swc.incr"/>
			</fileset>
		</delete>
	</target>
	
	<!--<target name="bundles-clean">
		<delete failonerror="false">
			<fileset dir="${FLEX_HOME}/frameworks/locale">
				<include name="*/automation_airspark_rb.swc"/>
				<include name="*/automation_airspark_rb.swc.incr"/>
			</fileset>
		</delete>
	</target>-->
	
	<target name="clean-temp-docs">
		<delete dir="${FLEX_HOME}/tempDoc" failonerror="false" includeEmptyDirs="true"/>
	</target>
</project>
