As of bug 1541792, it is not possible to define XPCOM components with
NSMODULE_DEFN anymore. This follows the recent changes announced by Kris
Maglione in
https://lists.mozilla.org/pipermail/dev-platform/2019-February/023503.html

After those changes, there were too few remaining components not using
the new system (and the number if meant to decrease, not increase) to
justify keeping the hacks used to register them. Those hacks have served
us well, but they've also caused us some subtle problems in the past
with LTO and PGO (heck, they even caused problems with PGO during Kris's
work).

Those remaining components are still registered the old way, but that's
now done via manual RegisterModule calls in nsComponentManager.cpp, so
if you _really_ need to add components the old way, that's about the
only difference: no NSMODULE_DEFN, and a manual registration in
nsComponentManager.cpp. But you _really_ should have a good reason to do
that. Prefer the new registration described in Kris's message.

As a followup, I'm also going to convert some of the remaining
components to the new system. Eventually, the old system will go away
completely.

Cheers,

Mike
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to