<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi, all!<div class=""><br class=""></div><div class="">Would anybody mind if build-webkit stopped being a source of default values of feature flags?</div><div class=""><br class=""></div><div class="">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 <i class="">already</i> a mess. But it gets worse!</div><div class=""><br class=""></div><div class="">Right now, for both the Xcode and CMake builds, build-webkit overrides those with <i class="">its own</i> 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.</div><div class=""><br class=""></div><div class="">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.</div><div class=""><br class=""></div><div class="">If we do this, the effective changes would be as follows:</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">1) The default values of feature flags would be specified in all of the usual places <i class="">except</i> FeatureList.pm</div><div class="">2) build-webkit --help will no longer list the default value of feature flags</div><div class="">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</div><div class="">4) --default-cmake-features will go away, because it will always be true</div></blockquote><div class=""><br class=""></div><div class="">And things that <i class="">wouldn’t</i> change:</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">1) You will still be able to use --FEATURE, --no-FEATURE, and --minimal arguments to build-webkit</div></blockquote><div class=""><br class=""></div><div class="">Any objections or things I’ve overlooked?</div><div class=""><br class=""></div><div class="">—Tim</div></body></html>