On Wed, Sep 04, 2013 at 11:35:19AM -0700, Gregory Szorc wrote: > On 9/4/13 3:04 AM, Mike Hommey wrote: > >On Wed, Sep 04, 2013 at 10:57:26AM +0100, L. David Baron wrote: > >>>The way the tier build works is that we effectively make export in all > >>>directories of a same tier before make libs. In practice, this means > >>>xpcom had access to every header in platform already, and any tier built > >>>before platform, for that matter. So only app headers weren't available > >>>to xpcom, and that's not a lot of them. > >>> > >>>So, really, nothing was already there to prevent backwards dependencies. > >>>At least not in a very long time (I don't remember if we ever did > >>>(make export; make libs) recursively directory by directory instead of > >>>tier by tier.) > >> > >>So I was assuming that xpcom was in a different tier from layout; > >>apparently that's not the case. (I thought it was originally, but > >>my memory could be wrong.) > > > >You're right, this was changed in bug 528250 > >http://hg.mozilla.org/mozilla-central/rev/b7b5c61b1af8 > > > >>But is it correct that this change means we no longer have the > >>backwards-dependency checking for things in different tiers? > > > >Yes, but since most things are in the platform tier, and the platform > >tier is almost last (there's only the app tier after it), it wasn't much > >relevant. What probably matters most to protect is js, and js standalone > >builds should provide that protection. > > It's worth explicitly mentioning that tiers limit the ability of the > build system to build concurrently. So, we have to choose between > speed and a moving/complex target of "dependency correctness." We > have chosen to sacrifice this dependency correctness to achieve > faster build speeds. > > If we want to keep ensuring dependency correctness, I believe we > should accomplish that via static analysis, compiler plugins, > standalone builds, or special build modes.
Or not using -I$(DIST)/include. Mike _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform