You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2016/05/26 23:05:20 UTC
[36/51] [abbrv] git commit: [flex-asjs] [refs/heads/spark] - clean up
build scripts
clean up build scripts
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/155b292a
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/155b292a
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/155b292a
Branch: refs/heads/spark
Commit: 155b292ac7134844e5dcd3e1ab33b0f898c37040
Parents: 817b0e7
Author: Alex Harui <ah...@apache.org>
Authored: Wed May 18 21:51:41 2016 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Thu May 26 16:04:23 2016 -0700
----------------------------------------------------------------------
.../js/FlexJS/projects/BindingJS/build.xml | 117 +++++++-------
.../js/FlexJS/projects/ChartsJS/build.xml | 115 ++++++++------
.../js/FlexJS/projects/CollectionsJS/build.xml | 115 ++++++++------
frameworks/js/FlexJS/projects/CoreJS/build.xml | 132 ++++++++--------
.../js/FlexJS/projects/CreateJSJS/build.xml | 131 ++++++++--------
.../js/FlexJS/projects/DragDropJS/build.xml | 125 ++++++++-------
.../js/FlexJS/projects/EffectsJS/build.xml | 127 ++++++++-------
frameworks/js/FlexJS/projects/FlatJS/build.xml | 116 +++++++-------
.../js/FlexJS/projects/FormattersJS/build.xml | 112 ++++++++------
.../js/FlexJS/projects/GoogleMapsJS/build.xml | 124 ++++++++-------
.../js/FlexJS/projects/GraphicsJS/build.xml | 116 +++++++-------
frameworks/js/FlexJS/projects/HTML5JS/build.xml | 112 ++++++++------
frameworks/js/FlexJS/projects/HTMLJS/build.xml | 119 ++++++++-------
.../js/FlexJS/projects/JQueryJS/build.xml | 115 ++++++++------
.../js/FlexJS/projects/MobileJS/build.xml | 112 ++++++++------
.../js/FlexJS/projects/NetworkJS/build.xml | 112 ++++++++------
.../js/FlexJS/projects/ReflectionJS/build.xml | 113 ++++++++------
.../js/FlexJS/projects/StorageJS/build.xml | 140 +++++++++--------
frameworks/js/FlexJS/projects/XMLJS/build.xml | 78 ++++------
frameworks/js/build.xml | 153 -------------------
frameworks/projects/Binding/build.xml | 86 ++++++-----
frameworks/projects/Charts/build.xml | 86 ++++++-----
frameworks/projects/Collections/build.xml | 86 ++++++-----
frameworks/projects/Core/build.xml | 95 +++++++-----
frameworks/projects/CreateJS/build.xml | 89 ++++++-----
frameworks/projects/DragDrop/build.xml | 89 ++++++-----
frameworks/projects/Effects/build.xml | 96 ++++++------
frameworks/projects/Flat/build.xml | 83 +++++-----
frameworks/projects/Formatters/build.xml | 83 ++++++----
frameworks/projects/GoogleMaps/build.xml | 90 ++++++-----
frameworks/projects/Graphics/build.xml | 83 +++++-----
frameworks/projects/HTML/build.xml | 82 +++++-----
frameworks/projects/HTML5/build.xml | 83 ++++++----
frameworks/projects/JQuery/build.xml | 85 ++++++-----
frameworks/projects/Mobile/build.xml | 83 ++++++----
frameworks/projects/Network/build.xml | 81 +++++-----
frameworks/projects/Reflection/build.xml | 80 +++++-----
frameworks/projects/Storage/build.xml | 99 ++++++------
frameworks/projects/XML/build.xml | 94 +++++-------
39 files changed, 2168 insertions(+), 1869 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/BindingJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/BindingJS/build.xml b/frameworks/js/FlexJS/projects/BindingJS/build.xml
index 8b94560..f5be9ab 100644
--- a/frameworks/js/FlexJS/projects/BindingJS/build.xml
+++ b/frameworks/js/FlexJS/projects/BindingJS/build.xml
@@ -26,39 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="BindingJS.swc" />
- <property name="target.name.no.version" value="BindingJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js,test-js" description="Full build of Binding.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- -->
- </target>
+ <property name="target.name" value="${ant.project.name}.swc" />
- <target name="test-js" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="js/tests" />
- -->
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
<target name="clean">
<delete failonerror="false">
- <fileset dir="${FLEXJS_HOME}/frameworks/libs">
- <include name="${target.name.no.version}"/>
+ <fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -68,11 +45,7 @@
</delete>
</target>
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -83,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -96,7 +70,7 @@
<arg value="-define=COMPILE::JS,true" />
</java>
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -104,36 +78,22 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
+
<target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
@@ -142,5 +102,58 @@
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/ChartsJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/ChartsJS/build.xml b/frameworks/js/FlexJS/projects/ChartsJS/build.xml
index f57933e..dbc5c58 100644
--- a/frameworks/js/FlexJS/projects/ChartsJS/build.xml
+++ b/frameworks/js/FlexJS/projects/ChartsJS/build.xml
@@ -26,33 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="ChartsJS.swc" />
- <property name="target.name.no.version" value="ChartsJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js,test" description="Full build of ChartsJS.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- -->
+ <property name="target.name" value="${ant.project.name}.swc" />
+
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -62,11 +45,7 @@
</delete>
</target>
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -77,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -90,7 +70,7 @@
<arg value="-define=COMPILE::JS,true" />
</java>
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -98,43 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
- <target name="copy-js">
+
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/CollectionsJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/CollectionsJS/build.xml b/frameworks/js/FlexJS/projects/CollectionsJS/build.xml
index 2b9ceb1..8de2c5a 100644
--- a/frameworks/js/FlexJS/projects/CollectionsJS/build.xml
+++ b/frameworks/js/FlexJS/projects/CollectionsJS/build.xml
@@ -26,33 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="CollectionsJS.swc" />
- <property name="target.name.no.version" value="CollectionsJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js,test" description="Full build of CollectionsJS.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- -->
+ <property name="target.name" value="${ant.project.name}.swc" />
+
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -62,11 +45,7 @@
</delete>
</target>
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -77,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -90,7 +70,7 @@
<arg value="-define=COMPILE::JS,true" />
</java>
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -98,43 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
- <target name="copy-js">
+
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/CoreJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/CoreJS/build.xml b/frameworks/js/FlexJS/projects/CoreJS/build.xml
index ce9bc6f..9a27073 100644
--- a/frameworks/js/FlexJS/projects/CoreJS/build.xml
+++ b/frameworks/js/FlexJS/projects/CoreJS/build.xml
@@ -21,44 +21,21 @@
<project name="CoreJS" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../../../../.."/>
-
+
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="CoreJS.swc" />
- <property name="target.name.no.version" value="CoreJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js" description="Full build of CoreJS.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="src/test/flex"/>
- -->
- </target>
-
- <target name="test-js" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="js/tests" />
- -->
+ <property name="target.name" value="${ant.project.name}.swc" />
+
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
-
+
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -67,15 +44,10 @@
</fileset>
</delete>
</target>
-
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
- <!-- make JS output folder now so include-file doesn't error -->
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
<java jar="${FALCONJX_HOME}/lib/compc.jar" fork="true" >
<jvmarg value="-Xmx384m" />
@@ -84,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -96,12 +69,8 @@
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</java>
- <!-- hack: inject some jsdoc to get rid of a warning when building examples -->
- <replace file="${basedir}/target/generated-sources/flexjs/org/apache/flex/events/IEventDispatcher.js"
- token="org.apache.flex.events.IEventDispatcher.prototype.dispatchEvent"
- value="/** @param {(Object|null|string)} event The event. 
@return {boolean} The return. */
org.apache.flex.events.IEventDispatcher.prototype.dispatchEvent" />
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -109,43 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
- <target name="copy-js">
+
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/CreateJSJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/CreateJSJS/build.xml b/frameworks/js/FlexJS/projects/CreateJSJS/build.xml
index 7cac9e3..aea3544 100644
--- a/frameworks/js/FlexJS/projects/CreateJSJS/build.xml
+++ b/frameworks/js/FlexJS/projects/CreateJSJS/build.xml
@@ -26,45 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <condition property="CREATEJS.SWC" value="${FALCONJX_HOME}/../js/libs/createjs.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/createjs.swc" />
- </condition>
- <property name="CREATEJS.SWC" value="${FALCONJX_HOME}/../externs/createjs/target/createjs.swc" />
- <condition property="no.lint" value="true">
- <os family="windows"/>
- </condition>
- <property name="target.name" value="CreateJSJS.swc" />
- <property name="target.name.no.version" value="CreateJSJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js,test" description="Full build of CreateJS.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- -->
- </target>
- <target name="test-js" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="js/tests" />
- -->
+ <property name="target.name" value="${ant.project.name}.swc" />
+
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -74,11 +45,7 @@
</delete>
</target>
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -89,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -103,7 +71,7 @@
<arg value="-define=COMPILE::JS,true" />
</java>
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -111,44 +79,87 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<arg value="-external-library-path+=${CREATEJS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
- <target name="copy-js">
+
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <condition property="CREATEJS.SWC" value="${FALCONJX_HOME}/../js/libs/createjs.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/createjs.swc" />
+ </condition>
+ <property name="CREATEJS.SWC" value="${FALCONJX_HOME}/../externs/createjs/target/createjs.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/DragDropJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/DragDropJS/build.xml b/frameworks/js/FlexJS/projects/DragDropJS/build.xml
index 7dbb419..2e8cc87 100644
--- a/frameworks/js/FlexJS/projects/DragDropJS/build.xml
+++ b/frameworks/js/FlexJS/projects/DragDropJS/build.xml
@@ -26,40 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="DragDropJS.swc" />
- <property name="target.name.no.version" value="DragDropJS.swc" />
+ <property name="target.name" value="${ant.project.name}.swc" />
- <target name="main" depends="clean,compile-js-swc,compile-asjs" description="Full build of DragDrop.swc">
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- <ant dir="asjs/tests" />
- -->
- </target>
-
- <target name="test-js" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="js/tests" />
- -->
- </target>
-
<target name="clean">
<delete failonerror="false">
- <fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJSlibs">
- <include name="${target.name.no.version}"/>
+ <fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -68,12 +44,8 @@
</fileset>
</delete>
</target>
-
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -84,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -97,7 +70,7 @@
<arg value="-define=COMPILE::JS,true" />
</java>
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -105,44 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
- <target name="copy-js">
+
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/EffectsJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/EffectsJS/build.xml b/frameworks/js/FlexJS/projects/EffectsJS/build.xml
index 0dfd396..82d25cc 100644
--- a/frameworks/js/FlexJS/projects/EffectsJS/build.xml
+++ b/frameworks/js/FlexJS/projects/EffectsJS/build.xml
@@ -26,41 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="EffectsJS.swc" />
- <property name="target.name.no.version" value="EffectsJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js" description="Full build of Effects.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- <ant dir="asjs/tests" />
- -->
- </target>
-
- <target name="test-js" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="js/tests" />
- -->
+ <property name="target.name" value="${ant.project.name}.swc" />
+
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
-
-
+
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -69,12 +44,8 @@
</fileset>
</delete>
</target>
-
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -85,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -98,7 +70,7 @@
<arg value="-define=COMPILE::JS,true" />
</java>
</target>
-
+
<target name="compile-js-swc" description="Compiles .as files into .swc used for cross-compiling other projects">
<echo message="Compiling target/${target.name}"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
@@ -106,43 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
-
- <target name="copy-js">
+
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/FlatJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/FlatJS/build.xml b/frameworks/js/FlexJS/projects/FlatJS/build.xml
index 0cf230f..5fa5d49 100644
--- a/frameworks/js/FlexJS/projects/FlatJS/build.xml
+++ b/frameworks/js/FlexJS/projects/FlatJS/build.xml
@@ -26,40 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="FlatJS.swc" />
- <property name="target.name.no.version" value="FlatJS.swc" />
+ <property name="target.name" value="${ant.project.name}.swc" />
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js,test" description="Full build of Flat.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- <ant dir="asjs/tests" />
- -->
- </target>
-
- <target name="test-js" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="js/tests" />
- -->
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -69,11 +45,7 @@
</delete>
</target>
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -84,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -105,43 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
- <target name="copy-js">
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/155b292a/frameworks/js/FlexJS/projects/FormattersJS/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/projects/FormattersJS/build.xml b/frameworks/js/FlexJS/projects/FormattersJS/build.xml
index 182526f..aaf97a6 100644
--- a/frameworks/js/FlexJS/projects/FormattersJS/build.xml
+++ b/frameworks/js/FlexJS/projects/FormattersJS/build.xml
@@ -26,32 +26,16 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
- <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
- </condition>
- <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
- <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
- <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
- </condition>
- <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
- <property name="target.name" value="FormattersJS.swc" />
- <property name="target.name.no.version" value="FormattersJS.swc" />
-
- <target name="main" depends="clean,compile-js-swc,compile-asjs,copy-js,test" description="Full build of Formatters.swc">
- </target>
-
- <target name="test" unless="is.jenkins">
- <!-- no tests yet
- <ant dir="as/tests" />
- -->
+
+ <property name="target.name" value="${ant.project.name}.swc" />
+
+ <target name="main" depends="clean,check-compiler,compile-js-swc,compile-asjs,copy-js" description="Full build of ${ant.project.name}.swc">
</target>
<target name="clean">
<delete failonerror="false">
<fileset dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs">
- <include name="${target.name.no.version}"/>
+ <include name="${target.name}"/>
</fileset>
</delete>
<delete failonerror="false" includeemptydirs="true">
@@ -61,11 +45,7 @@
</delete>
</target>
- <path id="lib.path">
- <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
- </path>
-
- <target name="compile-asjs">
+ <target name="compile-asjs" depends="check-compiler">
<echo message="Cross-compiling ${target.name}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<mkdir dir="${basedir}/target/generated-sources/flexjs"/>
@@ -76,6 +56,7 @@
<jvmarg value="-Dflexlib=${FLEXJS_HOME}/frameworks" />
<arg value="+flexlib=${FLEX_HOME}/frameworks" />
<arg value="-js-output-type=FLEXJS" />
+ <arg value="-compiler.strict-xml=true" />
<arg value="-keep-asdoc" /><!-- allows compiler to see @flexjsignorecoercion annotations -->
<arg value="-output=${basedir}/target/generated-sources/flexjs" />
<arg value="-load-config=${basedir}/src/main/config/compile-js-config.xml" />
@@ -97,43 +78,82 @@
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/libs"/>
<mkdir dir="${basedir}/target"/>
- <!-- 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" classpathref="lib.path"/>
- <!--
- 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 CoreClasses.as,
- because these aren't referenced by the manifest classes.
- Keep the standard metadata when compiling.
- 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="${basedir}/target/${target.name}">
<jvmarg line="${compc.jvm.args}"/>
<load-config filename="src/main/config/compile-js-config.xml" />
<arg value="+playerglobal.version=${playerglobal.version}" />
<arg value="+env.AIR_HOME=${env.AIR_HOME}" />
- <arg value="-external-library-path+=${JS.SWC}" />
+ <arg value="-compiler.strict-xml=true" />
+ <arg value="-external-library-path=${JS.SWC}" />
<!-- this is not on external-library path otherwise goog.requires are not generated -->
<arg value="-library-path+=${GCL.SWC}" />
<arg value="-define=COMPILE::AS3,false" />
<arg value="-define=COMPILE::JS,true" />
</compc>
- <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name.no.version}" />
+ <copy file="${basedir}/target/${target.name}" tofile="${FLEXJS_HOME}/frameworks/js/FlexJS/libs/${target.name}" />
</target>
- <target name="copy-js">
+ <target name="copy-js" >
<mkdir dir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources"/>
<copy todir="${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources">
<fileset dir="${basedir}/target/generated-sources/flexjs">
- <include name="**/**"/>
+ <include name="**/**" />
</fileset>
</copy>
</target>
-
+
+ <target name="check-compiler" depends="check-falcon-home, check-falconjx-home">
+ <condition property="JS.SWC" value="${FALCONJX_HOME}/../js/libs/js.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/js.swc" />
+ </condition>
+ <property name="JS.SWC" value="${FALCONJX_HOME}/../externs/js/target/js.swc" />
+ <condition property="GCL.SWC" value="${FALCONJX_HOME}/../js/libs/GCL.swc" >
+ <available file="${FALCONJX_HOME}/../js/libs/GCL.swc" />
+ </condition>
+ <property name="GCL.SWC" value="${FALCONJX_HOME}/../externs/GCL/target/GCL.swc" />
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+ <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ </target>
+
+ <target name="check-falcon-home" unless="FALCON_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCON_HOME is ${env.FALCON_HOME}"/>
+
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${env.FALCON_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar"
+ type="file"
+ property="FALCON_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler"/>
+
+ <fail message="FALCON_HOME must be set to a folder with a lib sub-folder containing falcon-mxmlc.jar such as the compiler folder in flex-falcon repo or a FlexJS SDK folder"
+ unless="FALCON_HOME"/>
+ </target>
+
+ <target name="check-falconjx-home" unless="FALCONJX_HOME"
+ description="Check FALCON_HOME is a directory.">
+
+ <echo message="FALCONJX_HOME is ${env.FALCONJX_HOME}"/>
+
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${env.FALCONJX_HOME}"/>
+
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
+ type="file"
+ property="FALCONJX_HOME"
+ value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
+
+ <fail message="FALCONJX_HOME must be set to a folder with a lib sub-folder containing jsc.jar such as the compiler-jx folder in flex-falcon repo or the js folder of a FlexJS SDK"
+ unless="FALCONJX_HOME"/>
+ </target>
+
</project>