First priority is to get the pure-CSS appearance in winstripe right. The target appearance is Windows XP Classic. This is being worked on in bug 313388. This is currently going well, and is nearing completion.
One single native bit will be written with the pure-CSS version - -moz-MenuBarHoverText, which will be (at this stage) implemented (on platforms which use winstripe, or maybe all) to work exactly like the CSS colour chosen for the hover text colour.
The above work will be checked in to trunk CVS (after reviews, etc.) and will remove the -moz-appearance properties currently there. This will mean everyone will see the pure-CSS appearance, and this is exactly what is intended.
Any problems found with the pure-CSS appearance (excluding, obviously, "it's not themed!" which I know a few idiots will file) will be fixed at this point, as once the native code is re-enabled, only odd groups of people will ever see it again (OS/2 users, for example).
Work will then begin on the native code necessary to support the theme engine in Windows XP. This may involve some minor tweaks to the CSS, but the ideal result is that only -moz-appearance properties are added. -moz-MenuBarHoverText will be adjusted (on Windows only) to follow the correct rules for menu bar text with themes.
This will be reviewed and checked in, and that will be it done.
Regressions will be fixed here, of course. :-)
It may seem like a long-winded way of doing things, but it will mean you get a top-quality result, as each key part will be written separately, tested separately, and checked in separately (for regression spotting).
nsIInterfaceRequestorUtils.cpp Building deps for ....../../source-HEAD/mozilla/xpcom/glue/nsIInterfaceRequestorUtils.cpp nsIInterfaceRequestorUtils.cpp m:\tree-firefox-main\objdir\dist\include\xpcom\nsIProgrammingLanguage.h(35) : warning C4003: not enough actual parameters for macro 'NS_DEFINE_STATIC_IID_ACCESSOR' m:\tree-firefox-main\objdir\dist\include\xpcom\nsIClassInfo.h(36) : warning C4003: not enough actual parameters for macro 'NS_DEFINE_STATIC_IID_ACCESSOR' ../../dist\include\xpcom\nsIInterfaceRequestor.h(41) : warning C4003: not enough actual parameters for macro 'NS_DEFINE_STATIC_IID_ACCESSOR' m:\tree-firefox-main\objdir\dist\include\xpcom\nsISupportsUtils.h(202) : error C2039: 'GetIID' : is not a member of 'nsIInterfaceRequestor' ../../dist\include\xpcom\nsIInterfaceRequestor.h(38) : see declaration of 'nsIInterfaceRequestor'
This is the same error that the 'creature' tinderbox was getting, but unlike that machine, it didn't go away after all the bustage-fixes.
After nuking objdir/dist and objdir/xpcom/base - neither of which helped - I just nuked objdir/xpcom and it finally looks like it might work, having got twice as far into the build as the error point (though it would not surprise me if I needed to nuke other totally random directories later).
The build system is just broken.
It's getting to the point where I'm tempted to make an auto-build-fixer, that just keeps nuking random objdir folders until it works. It would be a more productive use of my time than fixing all these damn problems by hand.
Continuing from my previous post about my Mozilla build tracker, I've added progress bars to the display while it is building. Naturally, it's all done with smoke and mirrors , and (perhaps surprisingly) doesn't mess up the display on Internet Explorer at all, though it doesn't show the progress bar.
The next ChatZilla release will be called 0.9.69, mostly due to the excess of changes that have occurred on trunk since the last release. This will be the 0.9.68.5 codebase merged to trunk, plus some extra compatibility updates; this means all the trunk changes since then will be included - and there are a lot of them!