In addition, many of the embedding and GRE manifests in embedding/config duplicate the manifests in xpinstall/packager.
I have been thinking of a way of combining these manifests in a tiered, cross-platform manner.
GOALS:
1) to reduce the number of files that must be touched when a patch alters packaging
2) to increase the clarity of which manifests package which products
PROPOSAL:
I think that we can "tier" packaging files like so: minimo.manifest embedding.manifest GRE.manifest XRE.manifest (if/when this ever happens)
Then, each application (seamonkey/*Bird) would have an application-specific packaging script (in the case of seamonkey, multiple scripts, one for each XPI (browser/mail/etc).
The format of each packaging script would be unified so that we could use the same format for all platforms, without worrying about differences (lib*.so/*.dll/.shlb). Also, each file could have optional platform-specific sections. Something like this:
ALL
components/intl.xpt
res/charsetalias.properties
res/charsetData.properties
res/langGroups.properties
res/language.propertiesALL-NONSTATIC
components/{lib}i18n.{so}UNIX
res/unixcharset.propertiesWIN32
res/wincharset.propertiesMAC
res/maccharset.properties