[Webkit-unassigned] [Bug 80030] [GObject bindings] Supplemental interfaces are not disabled with the "Conditional" attribute

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Mar 22 02:39:54 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=80030





--- Comment #2 from Zan Dobersek <zandobersek at gmail.com>  2012-03-22 02:39:54 PST ---
I've tried to fix this in two different ways mentioned, here's what came out of each:

1) Creating stubs when the feature is not enabled

This seemed to work well, making changes mostly to the CodeGeneratorGObject script. Additionally, when a future is not enabled, warnings could be thrown, telling the feature is not enabled.

For compilation without geolocation support enabled, with this approach, it would also probably make sense to convert methods in WebKitGeolocationPolicyDecision to stubs when necessary.

Using this approach might work better if there's a decision to push this into the 1.8 branch. There's no new API additions.

2) Create and use ENABLE-like macro

This would require something like a WEBKIT_HAS_FEATURE macro to be added. This macro would then be used in public headers, while implementation files could use ENABLE macro.

One problem that immediately popped out was that when geolocation is disabled, the documentation could not be properly created - if the feature is disabled, the  gtkdoc tools complain of undefined references to this feature's methods. I don't know if this is a showstopper, but it would definitely cause inconvenience to distributions that would like to ship the library with the documented feature disabled.


I'd like some consensus on what's the right approach so I can start working on a fix.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list