Hi, I have been trying to build the Adobe Flex framework from their "MPL" "source" "SDK" (for background, and the reason for all those quote marks, see [1]).
Briefly, there is a file called playerglobal.swc that contains library.swf, which can almost be described as a "header" file for the flash.* classes.[2] Roughly half of the ActionScript source files for the Flex framework include references to classes in the flash.* classpath (e.g. flash.net.URLRequestMethod). AFAICT (Big Caveat!), the mxmlc ActionScript compiler does not actually pull in code from the implemented classes in playerglobal.swc, but rather uses that file for compile-time type checking and to ensure that, for example, there really is a "flash.foo.Bar.getFoo():Object" method. Various Free flashplayer projects have reverse-engineered and implemented much/most of the flash API described in playerglobal.swc. Unfortunately (for someone like me trying to compile using Adobe's mxmlc tool), they don't expose the API definitions in a way that mxmlc can use for compilation-time includes, i.e. in a .swc file. If I run 'swfdump -atp library.swf' (the swf contained in playerglobal.swc) I get a ton of interesting output. It seems to me that one could, for purposes of compiling against playerglobal.swc, somehow generate "stubs" based on the information in Adobe's .swc. In other words, create a source tree where all the interface definitions resided, but there was no real implementation of methods. I.e., "flash.foo.Bar.getFoo():Object" would just be implemented to return null, and all methods returning void would just be blank. Then one could compile that tree, use Adobe's tools to generate a .swc from it, and then be able to compile the Flex framework without depending on their closed-source binary. I believe someone on this list would possess the expertise to advise me on how to proceed, or at least let me know if I am attempting to do the impossible. Again, see [1] for why I am so concerned with this nonsense. It boils down to this: I want to use Flex for a project (http://ovirt.org) that is destined for inclusion in the Fedora distribution. Thank you! Steve Linabery [1] http://forums.adobe.com/message/1921437 [2] http://www.adobe.com/devnet/flex/articles/link_load_08.html
