Bug 87127

Summary: [Gtk] Move feature defines processing into a GNUmakefile that's simple to autogenerate
Product: WebKit Reporter: Zan Dobersek <zan>
Component: WebKitGTKAssignee: Zan Dobersek <zan>
Status: RESOLVED FIXED    
Severity: Normal CC: eric, mrobinson, xan.lopez
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 87995, 90693, 90696    
Bug Blocks: 85456    
Attachments:
Description Flags
Patch
none
Patch
none
Patch mrobinson: review+

Zan Dobersek
Reported 2012-05-22 06:22:43 PDT
The idea is to process all the feature defines in a simple-to-generate GNUmakefile.features.am. The end goal is to simplify adding a new feature define to the project, with all the relevant files being autogenerated (covered by bug #85456). In GNUmakefile.features.am (in Source/WebCore) all the feature defines would be added to the FEATURE_DEFINES and webcore_cppflags variables, set to the default value - 1 for enabled, 0 otherwise. In GNUmakefile.am the GNUmakefile.features.am would be included. The values of feature defines would then be overridden based on the configuration options used when running the configure script. Currently there are many configuration options, but they should be narrowed down (bug #87126) so this wouldn't be such a big burden to maintain (if any).
Attachments
Patch (25.05 KB, patch)
2012-05-31 11:17 PDT, Zan Dobersek
no flags
Patch (26.12 KB, patch)
2012-07-06 12:14 PDT, Zan Dobersek
no flags
Patch (27.72 KB, patch)
2012-08-15 05:01 PDT, Zan Dobersek
mrobinson: review+
Martin Robinson
Comment 1 2012-05-22 11:45:31 PDT
One important usecase to consider is that we often enable things for build-webkit and disable them for normal configure runs. This allows us to have the bots test something and not ship it.
Zan Dobersek
Comment 2 2012-05-23 06:13:34 PDT
(In reply to comment #1) > One important usecase to consider is that we often enable things for build-webkit and disable them for normal configure runs. This allows us to have the bots test something and not ship it. I can't imagine a solution to this from the top of my head other than manually going through the list of the feature defines and switching their status if necessary after the release branch is formed.
Martin Robinson
Comment 3 2012-05-23 06:17:30 PDT
(In reply to comment #2) > (In reply to comment #1) > > One important usecase to consider is that we often enable things for build-webkit and disable them for normal configure runs. This allows us to have the bots test something and not ship it. > > I can't imagine a solution to this from the top of my head other than manually going through the list of the feature defines and switching their status if necessary after the release branch is formed. Unfortunately, it's not just the release branch, but also in unstable releases as well.
Zan Dobersek
Comment 4 2012-05-31 11:17:54 PDT
Zan Dobersek
Comment 5 2012-07-06 12:14:11 PDT
Zan Dobersek
Comment 6 2012-08-15 05:01:09 PDT
Martin Robinson
Comment 7 2012-08-23 10:10:40 PDT
Comment on attachment 158546 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=158546&action=review Okay, but definitely watch the bots on this one. It may also be a good idea to double-check "make distcheck" > Source/WebCore/GNUmakefile.am:650 > ACCELERATED_COMPOSITING=1 This introduces an unused -DACCELERATED_COMPOSITING variable. I guess that's not a terrible side-effect. > Source/WebCore/GNUmakefile.am:793 > +# Add the feature defines to webcore_cppflags in macro form Nit: Missing a period on this comment. > GNUmakefile.am:64 > +FEATURE_DEFINES_DEFAULTS := > +FEATURE_DEFINES_OVERRIDES := > +FEATURE_DEFINES := I think it'd make sense to use small_case here to match other variables.
Zan Dobersek
Comment 8 2012-08-23 10:35:52 PDT
Comment on attachment 158546 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=158546&action=review >> Source/WebCore/GNUmakefile.am:650 >> ACCELERATED_COMPOSITING=1 > > This introduces an unused -DACCELERATED_COMPOSITING variable. I guess that's not a terrible side-effect. I'll remove this define as it's not used at all.
Zan Dobersek
Comment 9 2012-08-25 12:14:17 PDT
Zan Dobersek
Comment 10 2012-10-05 12:12:41 PDT
*** Bug 85753 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.