As you've seen, there are three different external-library-path options:
external-library-path, js-external-library-path and
swf-external-library-path.

By default, external-library-path is used by both JS and SWF targets, but
you can use js-external-library-path or swf-external-library-path to
override the external-library-path for a specific target.

In other words, if js-external-library-path is defined:

- the JS target will use js-external-library-path, and it will ignore
external-library-path
- the SWF target will still use external-library-path

Similarly, if swf-external-library-path is defined:

- the SWF target will use swf-external-library-path, and it will ignore
external-library-path
- the JS target will still use external-library-path

 If both js-external-library-path and swf-external-library-path are defined:

- the JS target will use js-external-library-path, and it will ignore
external-library-path
- the SWF target will use swf-external-library-path, and it will ignore
external-library-path

The air-config.xml, flex-config.xml, and royale-config.xml configs are all
expected to be used for both JS and SWF targets. Different libraries are
needed for each target, so we're using js-external-library-path to override
which libraries are used for the JS target. The SWF target will use
external-library-path.

The other -config.xml files are configs that are expected to be used with
JS only. Basically, these ones can use external-library-path directly
because they don't need to target SWF. If we wanted, we could change them
to use js-external-library-path instead, and they should still work.

In theory, we could always use js-external-library-path and
swf-external-library-path, and never use external-library-path. However, I
do not recall if there was some legacy reason (like Flash Builder support)
for why we defaulted to playerglobal.swc on the external-library-path for
the SWF target instead of using swf-external-library-path. I think that
js-external-library-path or swf-external-library-path were introduced
before I started working on the compiler, so I can only guess.

--
Josh Tynjala
Bowler Hat LLC <https://bowlerhat.dev>


On Mon, Mar 1, 2021 at 1:45 PM Christofer Dutz <christofer.d...@c-ware.de>
wrote:

> Hi Josh,
>
> While comparing the results I noticed there are some inconsistencies in
> the config files and I'm currently not quite sure to which is the correct
> version:
>
> In:
> - ace-config.xml
> - create-js-config.xml
> - jquery-config.xml
> - js-config.xml
> - node-config.xml
> The typedefs are defined in an element called: external-library-path
>
> In:
> - air-config.xml
> - flex-config.xml
> - royale-config.xml
> The typedefs are defined in an element called: js-external-library-path
>
> Which is the correct version?
>
> Also are the target-player and swf-version defined as properties in all
> configs except:
> - asdoc-config.xml (player 11.1 swf: 14)
>
> Probably it would make sense to process the asdoc-config.xml the same way
> as all the others.
> Right now I'd just keep it the way it is. Just thought I'd point it out.
>
> Chris
>
>
> -----Ursprüngliche Nachricht-----
> Von: Josh Tynjala <joshtynj...@bowlerhat.dev>
> Gesendet: Montag, 1. März 2021 19:29
> An: Apache Royale Development <dev@royale.apache.org>
> Betreff: Re: [MAVEN DISTRIBUTION] getting the Ant and Maven aligned
>
> Hi Chris,
>
> Yes, that looks to me to be what the Ant build is doing too, so I think
> you are correct.
>
> --
> Josh Tynjala
> Bowler Hat LLC <https://bowlerhat.dev>
>
>
> On Mon, Mar 1, 2021 at 10:21 AM Christofer Dutz <christofer.d...@c-ware.de
> >
> wrote:
>
> > Hi Josh
> >
> > Yeah .. I saw in the commit history, that they sort of were creatd
> > shortly after the big-bang ;-) ...
> >
> > That's why I decided to take these as basis.
> >
> > What I'm now doing is generate a config from each by:
> >
> > 1. Replacing the playerversion
> > 2. Replacing the swfversion
> > 3. Replacing the locale
> > 4. In case of a no-swf distribution filtering out the references to
> > playerglobal
> >
> > I hope I got things right ... but I'm only including the output in the
> > distribution and not the templates, as I assume they are not needed.
> >
> > Is that corect?
> >
> > Chris
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Josh Tynjala <joshtynj...@bowlerhat.dev>
> > Gesendet: Montag, 1. März 2021 18:46
> > An: Apache Royale Development <dev@royale.apache.org>
> > Betreff: Re: [MAVEN DISTRIBUTION] getting the Ant and Maven aligned
> >
> > I can tell you that the template config files have existed since the
> > Flex days. The "create-config" task in frameworks/build.xml replaces
> > certain tokens in the template based on the Ant build's current
> configuration.
> >
> > Traditionally, a distribution would include all of the Ant build.xml
> > files to allow users to manually rebuild the framework with local
> > changes. If this still holds true, then the config templates are
> probably required.
> >
> > --
> > Josh Tynjala
> > Bowler Hat LLC <https://bowlerhat.dev>
> >
> >
> > On Sun, Feb 28, 2021 at 1:07 PM Christofer Dutz
> > <christofer.d...@c-ware.de
> > >
> > wrote:
> >
> > > Hi Carlos,
> > >
> > > no ... the templates weren't created by me ... they always were in
> > > the frameworks dir ... I think the ANT build takes the templates and
> > > inserts variables to generate the real versions. I think I'll try to
> > > use these to do the same with maven ... unfortunately the files have
> > > gotten pretty out of sync.
> > >
> > > But can anyone here tell me if the "template" files need to be in
> > > the distribution? Are they needed for anything? Cause I would just
> > > add the generated versions.
> > >
> > > Chris
> > >
> > >
> > > -----Ursprüngliche Nachricht-----
> > > Von: Carlos Rovira <carlosrov...@apache.org>
> > > Gesendet: Sonntag, 28. Februar 2021 16:53
> > > An: Apache Royale Development <dev@royale.apache.org>
> > > Betreff: Re: [MAVEN DISTRIBUTION] getting the Ant and Maven aligned
> > >
> > > Hi Chris,
> > >
> > > >
> > > >
> > > > I do have some questions:
> > > > - the "framework" directory contains a log of tupples:
> > > > xyz-config-template.xml and xyz-config.xml: Where does the
> > > > xyz-config.xml get generated from the template in the ANT build?
> > > > (I assume it generates them from the templates as part of the
> build)...
> > > > could we possibly omit the "templates"? It seems as if they are
> > > > only needed to generate the configs for a given set of configured
> > > > properties. If that's the case, we don't need them in the
> distribution.
> > > >
> > >
> > > I always though the template was created by you when you created the
> > > maven build for Royale. So if you think you can remove templates, I
> > > think it would be good to reduce files if they are not used at all.
> > >
> > >
> > > > - The root element of the flex-config.xml was named "roayale-config"
> > > > in the Maven distribution and "flex-config" in the Ant
> > > > distribution and it contained a reference to the
> > > > mxml-2009-manifest.xml. Also did the Ant version contain a lot
> > > > more implicit imports as well as a fxg-base-class element
> > > >
> > > >
> > > maybe this could be the problem we're facing with fx:Array
> > >
> > >
> > > > So far the changes I found ... I updated the distribution in the
> > > > "features/distribution-allignment" branch.
> > > >
> > >
> > > Great!
> > >
> > >
> > > >
> > > > But I guess I'll keep working on this and try to get the maven
> > > > distribution to have the same directory structure as the Ant one
> > > > (but excluding all the unnecessary stuff).
> > > >
> > >
> > > Chris, let us know when is safe to test, and I'll do a try.
> > >
> > > Thanks for working on this!
> > >
> > >
> > > >
> > > > Chris
> > > >
> > > >
> > > >
> > > > -----Ursprüngliche Nachricht-----
> > > > Von: Christofer Dutz <christofer.d...@c-ware.de>
> > > > Gesendet: Sonntag, 28. Februar 2021 12:28
> > > > An: dev@royale.apache.org
> > > > Betreff: AW: [MAVEN DISTRIBUTION] getting the Ant and Maven
> > > > aligned
> > > >
> > > > Ok ... regarding the Array problem ...
> > > >
> > > > I have found the "Array.as" file in "compiler-externc" and
> > > > "royale-typedefs/js" ... both are identical ...
> > > > I'm not quite sure which one is used (I'm a bit rusty regarding
> > > > how all of these externs and stuff work together)
> > > >
> > > > I did check and the royale-config.xml lists the
> > > > mxml-2009-manifest.xml (in both the non-swf as well as the
> > > > with-swf
> > > > version) so not quite sure why adding that to the configuration
> > changes anything.
> > > >
> > > > Chris
> > > >
> > > >
> > > >
> > > > -----Ursprüngliche Nachricht-----
> > > > Von: Christofer Dutz <christofer.d...@c-ware.de>
> > > > Gesendet: Sonntag, 28. Februar 2021 12:08
> > > > An: dev@royale.apache.org
> > > > Betreff: [MAVEN DISTRIBUTION] getting the Ant and Maven aligned
> > > >
> > > > Hi all,
> > > >
> > > > so thankfully Carlos re-sent me this link:
> > > > flex-sdk/README_integration_with_Adobe_FlashBuilder.txt at master
> > > > * apache/flex-sdk (github.com)<
> > > > https://github.com/apache/flex-sdk/blob/master/ide/flashbuilder/RE
> > > > AD ME _integration_with_Adobe_FlashBuilder.txt
> > > > >
> > > >
> > > > So it seems as if we don't have a
> > > > ide/flashbuilder/flashbuilder-config.xml
> > > > with a "express-install-swf" element in it (we don't have the
> > > > entire
> > > > file) ... do we need this?
> > > >
> > > > Besides that, it seems all is setup as expected.
> > > >
> > > > Will continue looking into other things that could be wrong.
> > > >
> > > > Chris
> > > >
> > >
> > >
> > > --
> > > Carlos Rovira
> > > Apache Member & Apache Royale PMC
> > > *Apache Software Foundation*
> > > http://about.me/carlosrovira
> > >
> >
>

Reply via email to