Build System Changes for Pre-Configured Extensions

The Situation Today

We build two items today that need to become "pre-configured extensions". These are the Classic skin and the DOM Inspector.

DOM Inspector bin/components/inspector.dll
bin/components/inspector-cmdline.js
bin/components/inspector.xpt
chrome/inspector.jar
defaults/pref/inspector.js
res/inspector/viewer-registry.rdf
res/inspector/search-registry.rdf
Classic Skin chrome/classic.jar

DOM Inspector isn't as important a conversion for 0.9 but Classic is a must (must be able to switch back and forward between themes). We need the files to be repackaged like so:

DOM Inspector bin/Extensions/{GUID}/Components/inspector.dll
bin/Extensions/{GUID}/Components/inspector-cmdline.js
bin/Extensions/{GUID}/Components/inspector.xpt
bin/Extensions/{GUID}/Chrome/inspector.jar
bin/Extensions/{GUID}/Defaults/Preferences/inspector.js
bin/Extensions/{GUID}/Defaults/viewer-registry.rdf
bin/Extensions/{GUID}/Defaults/search-registry.rdf
bin/Extensions/{GUID}/install.rdf <-- from mozilla/browser/extensions/inspector/install.rdf
Classic Skin bin/Extensions/{GUID}/Chrome/classic.jar
bin/Extensions/{GUID}/install.rdf <-- from mozilla/browser/base/skin/install.rdf

The build system needs to be massaged somehow to cause the hierarchies above to be generated. Also, line need to be echoed to an "installed-extensions.txt" file in bin/Extensions in the following format: extension,{GUID} and theme,{GUID}