Awesome! This is exactly what I was looking for.

I’ll copy this info to the wiki.

On May 9, 2016, at 7:59 PM, Alex Harui <aha...@adobe.com> wrote:

> Falcon (SWF Compiler) should support all MXMLC inputs from the regular
> Flex SDK except the "keep-generated-actionscript" option which I think it
> just ignores (Falcon does not generate ActionScript from MXML, it goes
> straight from MXML to ABC).  I think there are some embedded font options
> that aren't supported either.
> 
> In addition, Falcon supports:
> 
> -compiler.mxml.children-as-data (this is required to be true for FlexJS
> MXMLC compilation).  It changes the MXML code generation to be a data
> structure instead of a bunch of run-once methods.
> -compiler.mxml.implicitImports.  In FlexJS we change the set of classes
> you don't have to import in your MXML script blocks and event handlers.
> -compiler.binding-value-change-event.  The name of the event class the
> DataBinding subsystem uses for detecting change events
> -compiler.binding-value-change-event-type.  The name of the event in the
> event class.
> -compiler.binding-event-handler-event  This is used in code generation for
> [Bindable] vars
> -compiler.binding-event-handler-class  This is used in code generation for
> [Bindable] vars
> -compiler.binding-event-handler-interface  This is used in code generation
> for [Bindable] vars
> -compiler.states-class                     This is used in code generation
> for states.
> -compiler.states-instance-override-class   This is used in code generation
> for states.
> -compiler.states-property-override-class   This is used in code generation
> for states.
> -compiler.states-event-override-class      This is used in code generation
> for states.
> -compiler.states-style-override-class      This is used in code generation
> for states.
> -compiler.component-factory-class      This is used in code generation for
> fx:Components.
> 
> -compiler.component-factory-interface  This is used in code generation for
> fx:Components.
> -compiler.proxy-base-class  This is used in code generation for Proxy
> -compiler.allow-subclass-overrides   This does what it says.
> -compiler.strict-xml
> -use-flashbuilder-project-files <path to project>.  This has the compiler
> use most of the settings that Flash Builder uses.  You can use -fb as well.
> 
> 
> 
> -isExcludeNativeJSLibraries  This removes the externs swcs from the
> library path and external library path.  I don't think we need this, but
> not sure.
> 
> These configurations are contained in this class:
> compiler/src/org/apache/flex/compiler/config/Configuration.java
> 
> 
> 
> 
> 
> FalconJX supports all of these options plus:
> -js-output-type  Options to change some aspects of the output.  FLEXJS is
> the default.  Also supported is JSC for "no-SWF" workflows, and NODE.
> -source-map
> -closure-lib  Path to Google Closure Library.  Defaults to a known place
> in the FlexJS SDK
> -sdk-js-lib Path to other folder of JS files to resolve class dependencies
> -external-js-lib Path to folder of externs JS files
> -strict-publish  Passes Strict option to Google Closure Compiler
> -keep-asdoc  Copies ASDoc into JSDoc
> -remove-circulars  Tries to eliminate goog.requires from output that
> causes GCC to error about circular dependencies
> -skip-transpile  When used with -debug=false, doesn't generate the
> bin/js-debug version so you can just pass what is in js-debug to GCC for
> optimization (in case you manually edited something in js-debug)
> -js-compiler-option  Other options to pass to GCC
> -js-output-optimization Allowed options:
> skipFunctionCoercions skipAsCoercions  These options cause the compiler to
> not generate calls to Language.is and Language.as.
> 
> 
> ExternC has its own config.  If you need it I can try to generate it.
> 
> The various launch scripts set some of the above options.
> 
> HTH,
> -Alex
> 
> 
> 
> On 5/8/16, 11:44 PM, "Harbs" <harbs.li...@gmail.com> wrote:
> 
>> This is good.
>> 
>> What about acceptable arguments?
>> 
>> Off the top of my head, there’s
>> 1. remove circulars (which I never totally understood)
>> 2. strict XML
>> 3. debug options
>> 4. keep-asdoc (how well does this work?)
>> 5. flexlib
>> etc.
>> 
>> Without clear documentation of all this stuff, it feels very overwhelming.
>> 
>> On May 9, 2016, at 9:34 AM, Alex Harui <aha...@adobe.com> wrote:
>> 
>>> 
>>> 
>>> On 5/8/16, 5:33 AM, "Harbs" <harbs.li...@gmail.com> wrote:
>>> 
>>>> I’m trying to set up some development environments and I realized
>>>> there’s
>>>> lots of pieces and I’m not sure how everything fits together.
>>>> 
>>>> FalconJX currently generates the following scripts and executables:
>>>> 
>>>> Scripts:
>>>> Asjsc - compiles AS app to JS with JS.swc
>>>> Asjscompc - compiles AS library to JS with JS.swc
>>>> Asnodec - compiles AS app to JS with JS.swc and Node.swc
>>>> Jquery = compiles AS app to JS with JS.swc and Jquery.swc
>>>> Compc - compiles AS library to JS with FlexJS framework
>>>> Mxmlc - compiles AS app to JS with FlexJS framework
>>>> Externc - runs ExternC compiler to compile externs JS files to AS.
>>>> 
>>>> 
>>>> 
>>>> Executables:
>>>> compc.jar = library compiler
>>>> externc.jar = ExternC compiler
>>>> jsc.jar = shared code between compc and mxmlc
>>>> mxmlc.jar = application compiler
>>>> 
>>> 
>>> Below are this party libraries
>>>> 
>>>> args4j.jar
>>>> commons-io.jar
>>>> flex-tool-api.jar
>>>> guava.jar
>>>> org.json.jar
>>> 
>>> HTH,
>>> -Alex
>>> 
>> 
> 

Reply via email to