Summary: | [Meta] Maintain a full list of ENABLE defines and default values in C header(s) | ||
---|---|---|---|
Product: | WebKit | Reporter: | Laszlo Gombos <laszlo.gombos> |
Component: | Platform | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW --- | ||
Severity: | Normal | CC: | abecsi, dino, eric, tkent |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Bug Depends on: | 108193, 105735 | ||
Bug Blocks: |
Description
Laszlo Gombos
2012-12-24 21:46:05 PST
> I propose to maintain the list of feature flags in (a) header file(s) instead of a wiki page that is disconnected from the source code.
I basically agree with it.
My concern is existing explanation comments in the wiki page. Do you want to move the comments to the header file?
(In reply to comment #1) > > I propose to maintain the list of feature flags in (a) header file(s) instead of a wiki page that is disconnected from the source code. > > I basically agree with it. > My concern is existing explanation comments in the wiki page. Do you want to move the comments to the header file? Yes I was planning to move the comments from the FeatureFlags wiki to the header file. The source browser on trac.webkit.org can be used to link to the file on the web. > - In the future this header file could be used by the port specific build system (and perhaps build-webkit as well) to get the list of features and the default values for those features.
This sounds difficult. We need the list of feature flags in non-C++ code too.
For example, binding generators, dom/make_names.pl, css/makeprop.pl, css/makevalues.pl, etc.
(In reply to comment #3) > > - In the future this header file could be used by the port specific build system (and perhaps build-webkit as well) to get the list of features and the default values for those features. > > This sounds difficult. We need the list of feature flags in non-C++ code too. > For example, binding generators, dom/make_names.pl, css/makeprop.pl, css/makevalues.pl, etc. One way to export the values of the feature configurations to the build system it is to run the preprocessor on the header file with all the same build flags that the build system would otherwise use (e.g. to establish the port). This technique is already used in WebCore/DerivedSources.make (check how the defaults for ENABLE_DASHBOARD_SUPPORT and for ENABLE_ORIENTATION_EVENTS are set). This is just a potential and the risks needs to be discussed with the benefits. |