| <?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="flash-integration" 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}/flash-integration_rb.swc"/> |
| <!-- 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"/> |
| <compc fork="true" |
| output="${FLEX_HOME}/frameworks/locale/@{locale}/flash-integration_rb.swc"> |
| <jvmarg line="${compc.jvm.args}"/> |
| <load-config filename="bundle-config.xml" /> |
| <arg value="+playerglobal.version=${playerglobal.version}" /> |
| <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" /> |
| <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}/flash-integration_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 flash-integration.swc and en_US"> |
| <bundle locale="${locale}"/> |
| </target> |
| |
| <target name="other.locales" depends="bundles" description="Build other locale SWCs"/> |
| |
| <!-- This is a private target for building automation_flashflexkit_rb.swc for various locales. --> |
| <!-- The targets below set the 'locale' parameter and call it with <antcall>. --> |
| <target name="bundles"> |
| <bundler locale="de_DE"/><!-- German resources --> |
| <bundler locale="fr_FR"/><!-- French resources --> |
| <bundler locale="ja_JP"/><!-- Japanese resources --> |
| <bundler locale="ru_RU"/><!-- Russian resources --> |
| <bundler locale="zh_CN"/><!-- Simplified Chinese resources --> |
| </target> |
| |
| <target name="clean" depends="bundles-clean"> |
| <delete failonerror="false" includeemptydirs="true"> |
| <fileset dir="${basedir}"> |
| <include name="bundles.properties"/> |
| <include name="libs/flash-integration.swc"/> |
| </fileset> |
| <fileset dir="${FLEX_HOME}/frameworks/libs"> |
| <include name="flash-integration.swc"/> |
| <include name="flash-integration.swc.incr"/> |
| </fileset> |
| <fileset dir="${FLEX_HOME}/frameworks/flash-integration"/> |
| <fileset dir="${FLEX_HOME}/frameworks/projects/flash-integration/libs"/> |
| </delete> |
| </target> |
| |
| <target name="bundles-clean"> |
| <delete failonerror="false"> |
| <fileset dir="${FLEX_HOME}/frameworks/locale"> |
| <include name="*/flash-integration_rb.swc"/> |
| <include name="*/flash-integration_rb.swc.incr"/> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="compile" description="Compiles flash-integration.swc"> |
| <echo message="Compiling frameworks/projects/flash-integration/libs/flash-integration.swc"/> |
| |
| <!-- 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 manifest.xml. |
| Compile against framework source, and link it into flash-integration.swc |
| (only a few interfaces will be linked in). |
| Don't put any resources into the SWC. |
| Write a bundle list of referenced resource bundles |
| into the file bundles.properties in this directory. |
| (This should be an empty list.) |
| --> |
| <compc fork="true" |
| output="${FLEX_HOME}/frameworks/libs/flash-integration.swc"> |
| <jvmarg line="${compc.jvm.args}"/> |
| <load-config filename="${FLEX_HOME}/frameworks/projects/framework/framework-config.xml"/> |
| <load-config filename="compile-config.xml" /> |
| <arg value="+playerglobal.version=${playerglobal.version}" /> |
| <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" /> |
| </compc> |
| |
| <!-- need to copy the file produced over so that the MXI |
| can refer to the flash-integration.swc --> |
| <copy todir="${basedir}/libs" verbose="true"> |
| <fileset dir="${FLEX_HOME}/frameworks/libs"> |
| <include name="flash-integration.swc"/> |
| </fileset> |
| </copy> |
| |
| <antcall target="FlashMXP" /> |
| </target> |
| |
| <target name="FlashMXP" description="builds flash-integration.MXP"> |
| <echo message="ADOBE_EXTENSION_MANAGER is ${env.ADOBE_EXTENSION_MANAGER}"/> |
| |
| <available file="${env.ADOBE_EXTENSION_MANAGER}" |
| type="file" |
| property="ADOBE_EXTENSION_MANAGER.set"/> |
| |
| <antcall target="ReportNoExtensionManager" /> |
| <antcall target="PackageMXP" /> |
| </target> |
| |
| <target name="ReportNoExtensionManager" unless="ADOBE_EXTENSION_MANAGER.set" > |
| <echo message="Adobe ExtensionManager not found. MXP file will not be created" /> |
| </target> |
| |
| <target name="PackageMXP" if="ADOBE_EXTENSION_MANAGER.set" > |
| <echo message="Creating MXP file ${FLEX_HOME}/frameworks/flash-integration/FlexComponentKit.mxp" /> |
| <mkdir dir="${FLEX_HOME}/frameworks/flash-integration" /> |
| <exec executable="${env.ADOBE_EXTENSION_MANAGER}" dir="${basedir}" failonerror="true"> |
| <arg value="-suppress" /> |
| <arg value="-package" /> |
| <arg value="mxi=FlexComponentKit.mxi" /> |
| <arg value="mxp=${FLEX_HOME}/frameworks/flash-integration/FlexComponentKit.mxp" /> |
| </exec> |
| </target> |
| |
| <target name="doc" depends="clean-temp-docs" description="updates flash-integration.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"/> |
| <!-- doesn't matter what we put in here as long as it links in the classes. |
| Flash Authoring ignores this and the namespace it's mapped too... |
| it just needs to be linked through a manifest file --> |
| <namespace uri="http://www.adobe.com/someNonSensicalURI" manifest="${basedir}/manifest.xml"/> |
| <doc-namespaces uri="http://www.adobe.com/someNonSensicalURI"/> |
| <external-library-path dir="${env.PLAYERGLOBAL_HOME}"> |
| <include name="${playerglobal.version}/playerglobal.swc"/> |
| </external-library-path> |
| <external-library-path dir="${FLEX_HOME}/frameworks/libs"> |
| <include name="framework.swc" /> |
| <include name="mx/mx.swc"/> |
| <include name="textLayout.swc" /> |
| </external-library-path> |
| |
| <library-path/> |
| |
| <jvmarg line="${asdoc.jvm.args}"/> |
| </asdoc> |
| |
| <!-- updates FlexComponentBase.swc with asdoc xml --> |
| |
| <zip destfile="${FLEX_HOME}/frameworks/locale/en_US/flash-integration_rb.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-temp-docs"> |
| <delete dir="${FLEX_HOME}/tempDoc" failonerror="false" includeEmptyDirs="true"/> |
| </target> |
| |
| </project> |