They’re messy and it’s tedious to have to manually create forwarding headers.
Created attachment 61012 [details] Proof of concept patch This is a proof of concept patch that works for Mac OS X engineering builds. It doesn’t yet work in production builds though it won’t require significant changes in order to do so. It removes the various ForwardingHeaders directories which is almost certain to break Windows, but it wouldn’t take much to apply a similar strategy to the Windows build system.
This also gets rid of the duplicate copies of the ICU header files that exist in JavaScriptGlue and WebCore. Those projects gain access to JavaScriptCore’s copy as a side-effect of this change.
This also generates forwarding headers for WebCore. The intent is to deploy them in WebKit2 so that references to WebCore headers from within WebKit2 are handled in a similar manner to how references to JavaScriptCore headers from within WebCore are handled (<WebCore/Settings.h> becomes <page/Settings.h> or maybe <WebCore/page/Settings.h>). Bug 41850 is related to this aspect of the change.
Created attachment 61014 [details] The interesting parts of the proof of concept patch
If we can get this to work, I think we should definitely do it.