Project

fcshd

0.0
No commit activity in last 3 years
No release in over 3 years
By using a client-server architecture, we are able to make the Adobe Flex compiler run fast while still being usable in command-line environments. In practice, you start the `fcshd' server, and are then able to use the client program `fcshc' as a faster and more usable replacement for `mxmlc'.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies
 Project Readme

This package aims to remove pain points for Adobe Flex developers who prefer to compile code from the terminal or their favorite editor:

  • It speeds up compilation by leveraging Adobe’s own Flex Compiler Shell (fcsh) and a client-server architecture: basically, you start the fcshd server, and then use the client program fcshc as a faster and more usable replacement for mxmlc.

  • It abstracts away the crazy command-line interface of mxmlc and gives you a simpler and more gcc-like interface to work with.

  • It post-processes all compiler output, simplifies most of the verbose (sometimes bordering on rambling) error messages, and converts the stack traces into a more conventional GNU-style format (so that tools like Emacs can understand them).

  • It provides a rudimentary library lookup mechanism which lets you reference any source directory or SWC you link into ~/.fcshd-lib (or $FCSHD_LIBRARY_PATH, if set) through the -l option.

It makes the easy easy:

$ fcshc src/foo.mxml -o foo.swf

And the hard possible:

$ fcshc --help
Usage: fcshc MAIN.{as,mxml} [SRCDIR|SWCDIR|SWC]... [-o OUT.swf]
       fcshc SRCDIR... [SWCDIR|SWC]... -o OUT.swc

To compile an SWF, name the main application source file, then any additional source directories, SWC directories, or SWC files.

To compile an SWC using compc, you must provide the -o option, and then at least one source directory, SWC directory, or SWC file.

Dependencies can also be specified by name using the -l LIB option, which will search for LIB or LIB.swc in ~/.fcshd-lib. Both source directories, SWC directories, and SWC files can be named in this way.

To pass extra arguments, use e.g. -X -include-file -X NAME -X FILE.

    -o, --output OUTPUT.{swf,swc}    Name of the resulting binary
    -l, --library LIBRARY            Search LIBRARY when compiling

    -p, --production                 Leave out debugging metadata
        --no-rsls                    Do not use Flex RSLs
        --static-rsls                Use static linking for RSLs

    -3, --flex-3                     Use -compatibility-version=3
        --halo                       Use the Halo theme

    -X EXTRA-ARGUMENT                Pass through EXTRA-ARGUMENT

    -R, --restart                    Restart the compiler first
    -n, --dry-run                    Only print the compiler command
        --verbose                    Also print the compiler command

    -v, --version                    Show fcshd version
    -h, --help                       Show this message