[webkit-dev] RFC: Removing feature flag defaults in build-webkit

Tim Horton timothy_horton at apple.com
Thu Sep 21 11:54:03 PDT 2017

Hi, all!

Would anybody mind if build-webkit stopped being a source of default values of feature flags?

We have defaults for feature flags in FeatureDefines.xcconfig for Xcode, WebKitFeatures.cmake (and Options*.cmake for platform overrides) for CMake, and FeatureDefines.h for everyone. This is already a mess. But it gets worse!

Right now, for both the Xcode and CMake builds, build-webkit overrides those with its own set of defaults (in FeatureList.pm). There is also currently an argument to fall back to the CMake defaults (--default-cmake-features) and ignore build-webkit’s defaults.

It doesn’t make sense that build-webkit enables a different set of features than a plain ol’ ‘xcodebuild’ or ‘cmake’ in the root directory. It seems like we’ve mostly tried to keep them in sync, but that’s silly busywork for seemingly little benefit.

If we do this, the effective changes would be as follows:

1) The default values of feature flags would be specified in all of the usual places except FeatureList.pm
2) build-webkit --help will no longer list the default value of feature flags
3) It will be easier (but still not easy, yet) to reason about the default value of feature flags, and keep them in sync between different ways people build
4) --default-cmake-features will go away, because it will always be true

And things that wouldn’t change:

1) You will still be able to use --FEATURE, --no-FEATURE, and --minimal arguments to build-webkit

Any objections or things I’ve overlooked?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20170921/961151a4/attachment.html>

More information about the webkit-dev mailing list