Bug 85749 - Update FeatureDefines.xcconfig files to list all ENABLE_ macros
Summary: Update FeatureDefines.xcconfig files to list all ENABLE_ macros
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Eric Seidel (no email)
URL:
Keywords:
Depends on:
Blocks: 85456
  Show dependency treegraph
 
Reported: 2012-05-06 14:39 PDT by Eric Seidel (no email)
Modified: 2012-10-11 16:40 PDT (History)
2 users (show)

See Also:


Attachments
Patch (32.91 KB, patch)
2012-05-06 14:42 PDT, Eric Seidel (no email)
eric: review-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Seidel (no email) 2012-05-06 14:39:37 PDT
Update FeatureDefines.xcconfig files to list all ENABLE_ macros
Comment 1 Eric Seidel (no email) 2012-05-06 14:42:28 PDT
Created attachment 140437 [details]
Patch
Comment 2 Eric Seidel (no email) 2012-05-06 14:45:55 PDT
This change also includes a re-sort of the FEATURE_DEFINES = list at the bottom (as well as removing some missing defines from that list).

This diff was generated by using the generate-feature-files script, which I will shortly be attaching to bug 85456.


I would like someone very familiar with the Mac port to review this change.  I'm not trying to add/remove any features here, just trying to make the list complete.

If having a complete list is incompatible with the Mac or iOS build process, we can look for a different solution, but hopefully this will make this more clear both for all persons dealing with these FeatureDefines.xcconfig files, as the list is now complete. :)
Comment 3 Eric Seidel (no email) 2012-05-06 14:47:50 PDT
Comment on attachment 140437 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=140437&action=review

> Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:107
> +ENABLE_NETSCAPE_PLUGIN_API = $(ENABLE_NETSCAPE_PLUGIN_API_$(REAL_PLATFORM_NAME));
> +ENABLE_NETSCAPE_PLUGIN_API_macosx = ENABLE_NETSCAPE_PLUGIN_API;

Even though it does not appear that this file is kept up-to-date with the iOS build, I attempted to make this match the iOS feature defines as much as possible.  In this case, NETSCAPE_PLUGIN_API is clearly off on iOS (per Platform.h), so the generator only enabled the plugin API on Mac.
Comment 4 Eric Seidel (no email) 2012-05-06 14:48:34 PDT
Comment on attachment 140437 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=140437&action=review

>> Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:107
>> +ENABLE_NETSCAPE_PLUGIN_API_macosx = ENABLE_NETSCAPE_PLUGIN_API;
> 
> Even though it does not appear that this file is kept up-to-date with the iOS build, I attempted to make this match the iOS feature defines as much as possible.  In this case, NETSCAPE_PLUGIN_API is clearly off on iOS (per Platform.h), so the generator only enabled the plugin API on Mac.

If you believe any of these enables are incorrect, for either Mac or iOS, i'm very happy to fix them!
Comment 5 Eric Seidel (no email) 2012-05-06 16:49:14 PDT
Comment on attachment 140437 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=140437&action=review

> Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:62
> +ENABLE_GESTURE_EVENTS = ;

I need to fix this.  ENABLE_GESTURE_EVENTS should be on for Lion and above it seems.  This wouldn't break anything (due to the way Platform.h is written), but it's still wrong.
Comment 6 Eric Seidel (no email) 2012-05-06 16:51:35 PDT
Comment on attachment 140437 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=140437&action=review

> Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:114
> +ENABLE_ORIENTATION_EVENTS = ;

iOS has ORIENTATION_EVENTS on.  It's unclear if the Mac maintainers want that fixed here or not, since my understanding is that this xcconfig is not up-to-date with iOS.  I'm happy to attempt to sync this file with my (or someone elses) current understanding of iOS defines if that's desired.