[webkit-dev] WebCorePrefix.h vs. config.h

Darin Adler darin at apple.com
Sat Dec 8 15:22:41 PST 2018

OK, here’s my answer after thinking on it a bit:

Best would be to eliminate “config.h”: Change “config.h” into an empty file first, then remove all “config.h” includes, and then remove the file. But to do that, we need to make sure every build system for WebKit supports prefix headers. I don’t know how close to that we are. Maybe close? How can we quickly find out?

Lacking that, I think we can and should change “config.h” so it’s just an include of “WebCorePrefix.h”, or the other way around. I think it would be valuable to keep the feature where we try to catch cases where we forget to include “config.h”, on the platforms that use a prefix header, for the benefit of the platforms that do not. That might mean small complexity remains and one file won’t literally just be a trivial include of the other.

I suppose it’s also important to verify that there is no benefit to precompiling less than all of what “config.h” includes.

— Darin

PS: I don’t think we know that there is only one configuration that needs “config.h”. That second code snippet from your original message, Alexey, was only relevant for platforms that are trying to support macOS without prefix headers, and there could be any number of non-macOS cases. (And that include seems like a relatively recent change done by someone who didn’t fully understand the original scheme.)

More information about the webkit-dev mailing list