| <?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="framework" 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}/framework_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}/framework_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}/framework_rb.swc" update="true"> |
| <zipfileset dir="${basedir}/bundles/@{locale}/docs" prefix="docs"> |
| <include name="*.*"/> |
| </zipfileset> |
| <zipfileset dir="${basedir}/bundles/en_US" prefix="docs"> |
| <include name="packages.dita"/> |
| </zipfileset> |
| </zip> |
| </sequential> |
| </macrodef> |
| |
| <macrodef name="bundle-clean"> |
| <attribute name="locale"/> |
| <sequential> |
| <delete failonerror="false"> |
| <fileset dir="${FLEX_HOME}/frameworks/locale"> |
| <include name="@{locale}/framework_rb.swc"/> |
| <include name="@{locale}/framework_rb.swc.incr"/> |
| </fileset> |
| </delete> |
| </sequential> |
| </macrodef> |
| |
| <macrodef name="bundler"> |
| <attribute name="locale"/> |
| <element name="run.fat.swc" optional="yes"/> |
| <sequential> |
| <bundle-clean locale="@{locale}"/> |
| <bundle locale="@{locale}"/> |
| <run.fat.swc/> |
| </sequential> |
| </macrodef> |
| |
| <condition property="isMac"> |
| <os family="mac"/> |
| </condition> |
| <condition property="isWindows"> |
| <os family="windows" /> |
| </condition> |
| <condition property="isLinux"> |
| <and> |
| <os family="unix"/> |
| <not> |
| <os family="mac"/> |
| </not> |
| </and> |
| </condition> |
| |
| <target name="main" depends="clean,compile" description="Clean build of framework.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"> |
| <!-- these languages do not have localized docs--> |
| <bundler locale="en_AU"/><!-- Australian resources --> |
| <bundler locale="en_GB"/><!-- United Kingdom resources --> |
| <bundler locale="en_CA"/><!-- Canadian resources --> |
| <bundler locale="da_DK"/><!-- Danish resources --> |
| <bundler locale="de_DE"><!-- German resources --> |
| <run.fat.swc> |
| <fat-swc locale="de_DE"/> |
| </run.fat.swc> |
| </bundler> |
| <bundler locale="de_CH"/><!-- Swiss German resources --> |
| <bundler locale="es_ES"/><!-- Spanish resources --> |
| <bundler locale="fi_FI"/><!-- Finnish resources--> |
| <bundler locale="fr_CH"/><!-- Swiss French resources--> |
| <bundler locale="fr_FR"><!-- French resources --> |
| <run.fat.swc> |
| <fat-swc locale="fr_FR"/> |
| </run.fat.swc> |
| </bundler> |
| <bundler locale="it_IT"/><!-- Italian resources --> |
| <bundler locale="ja_JP"><!-- Japanese resources --> |
| <run.fat.swc> |
| <fat-swc locale="ja_JP"/> |
| </run.fat.swc> |
| </bundler> |
| <bundler locale="ko_KR"/><!-- Korean resources --> |
| <bundler locale="nb_NO"/><!-- Norwegian Bokmal resources --> |
| <bundler locale="nl_NL"/><!-- Dutch resources --> |
| <bundler locale="pt_BR"/><!-- Brazilian Portuguese resources --> |
| <bundler locale="pt_PT"/><!-- Portugal Portuguese resources --> |
| <bundler locale="ru_RU"><!-- Russian resources --> |
| <run.fat.swc> |
| <fat-swc locale="ru_RU"/> |
| </run.fat.swc> |
| </bundler> |
| <bundler locale="sv_SE"/><!-- Swedish resources --> |
| <bundler locale="zh_CN"><!-- Simplified Chinese resources --> |
| <run.fat.swc> |
| <fat-swc locale="zh_CN"/> |
| </run.fat.swc> |
| </bundler> |
| <bundler locale="zh_TW"/><!-- Traditional Chinese resources --> |
| <bundler locale="el_GR"/><!-- Greek Language resources --> |
| </target> |
| |
| <target name="clean" depends="bundles-clean, assets-clean"> |
| <delete failonerror="false"> |
| <fileset dir="${basedir}" > |
| <include name="bundles.properties"/> |
| <include name="bundles/en_US/packages.dita"/> |
| </fileset> |
| <fileset dir="${FLEX_HOME}/frameworks/libs"> |
| <include name="framework.swc"/> |
| <include name="framework.swc.incr"/> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="bundles-clean"> |
| <delete failonerror="false"> |
| <fileset dir="${FLEX_HOME}/frameworks/locale"> |
| <include name="*/framework_rb.swc"/> |
| <include name="*/framework_rb.swc.incr"/> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="pixelbender-clean"> |
| <delete failonerror="false"> |
| <fileset dir="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses"> |
| <include name="**/*.pbj"/> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="assets-clean"> |
| <delete failonerror="false"> |
| <fileset dir="${FLEX_HOME}/frameworks/projects/framework/assets"> |
| <include name="**/*.swf"/> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="pixelbender-compile" unless="isLinux"> |
| <!-- diagnose GPU and OpenGL --> |
| <exec executable="${env.PIXELBENDER_HOME}/sniffer_gpu.exe" os="windows"/> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Color.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Color.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/ColorBurn.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/ColorBurn.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/ColorDodge.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/ColorDodge.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Exclusion.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Exclusion.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Hue.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Hue.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Luminosity.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Luminosity.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/LuminosityMaskFilter.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/LuminosityMaskFilter.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Saturation.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/Saturation.pbj" /> |
| </exec> |
| <exec executable="${env.PIXELBENDER_HOME}/pbutil"> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/SoftLight.pbk" /> |
| <arg value="${FLEX_HOME}/frameworks/projects/framework/src/mx/graphics/shaderClasses/SoftLight.pbj" /> |
| </exec> |
| </target> |
| |
| <target name="assets-compile"> |
| <!-- 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"/> |
| <mxmlc fork="true" |
| file="${FLEX_HOME}/frameworks/projects/framework/assets/Assets.as" |
| output="${FLEX_HOME}/frameworks/projects/framework/assets/Assets.swf" |
| > |
| <jvmarg line="${compc.jvm.args}"/> |
| <target-player>${playerglobal.version}</target-player> |
| <library-path/> |
| <external-library-path dir="${env.PLAYERGLOBAL_HOME}"> |
| <include name="${playerglobal.version}/playerglobal.swc"/> |
| </external-library-path> |
| </mxmlc> |
| </target> |
| |
| <target name="compile" depends="assets-compile" description="Compiles framework.swc"> |
| <echo message="Compiling frameworks/libs/framework.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 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/framework.swc"> |
| <jvmarg line="${compc.jvm.args}"/> |
| <load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/> |
| <load-config filename="framework-config.xml"/> |
| <load-config filename="compile-config.xml" /> |
| <arg value="+playerglobal.version=${playerglobal.version}" /> |
| <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_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"/> |
| <load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/> |
| <load-config filename="framework-config.xml"/> |
| <doc-classes class="FrameworkClasses"/> |
| <doc-namespaces uri="http://www.adobe.com/2006/mxml"/> |
| <namespace uri="http://www.adobe.com/2006/mxml" manifest="${basedir}/manifest.xml"/> |
| <jvmarg line="${asdoc.jvm.args}"/> |
| </asdoc> |
| |
| <!-- updates framework.swc with asdoc xml --> |
| <zip destfile="${FLEX_HOME}/frameworks/locale/en_US/framework_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> |
| <copy file="${FLEX_HOME}/tempDoc/tempdita/packages.dita" tofile="${basedir}/bundles/en_US/packages.dita"/> |
| </target> |
| |
| <target name="clean-temp-docs"> |
| <delete dir="${FLEX_HOME}/tempDoc" failonerror="false" includeEmptyDirs="true"/> |
| <delete file="${basedir}/bundles/en_US/packages.dita" failonerror="false"/> |
| </target> |
| |
| <target name="test" description="Runs the FlexUnit tests for this project"> |
| <ant antfile="${FLEX_HOME}/flexunit-tests.xml"> |
| <property name="project.root" value="${basedir}"/> |
| </ant> |
| </target> |
| </project> |