Bug 79960

Summary: Update JavaScriptCore files to use fully-qualified WTF include path
Product: WebKit Reporter: Eric Seidel (no email) <eric>
Component: New BugsAssignee: Eric Seidel (no email) <eric>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, aroben, jberlin, lforschler, mrowe, sfalken, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 80399    
Bug Blocks: 75673    
Attachments:
Description Flags
Patch
none
If this passes Mac/Win EWS it can be landed.
none
Should work on all platforms now none

Description Eric Seidel (no email) 2012-02-29 16:55:25 PST
Update JavaScriptCore files to use fully-qualified WTF include path
Comment 1 Eric Seidel (no email) 2012-02-29 16:58:57 PST
Created attachment 129557 [details]
Patch
Comment 2 Eric Seidel (no email) 2012-02-29 23:33:14 PST
Oops.  I guess I can't land this w/o making wtf install its headers in the expected place first. :(
Comment 3 Eric Seidel (no email) 2012-03-05 14:47:35 PST
Created attachment 130207 [details]
If this passes Mac/Win EWS it can be landed.
Comment 4 Eric Seidel (no email) 2012-03-05 14:50:43 PST
I've updated the patch to make Mac and Win builds install the wtf headers in such a way so that full-path wtf includes can be used, such as #include <wtf/text/Foo.h>
Comment 5 Eric Seidel (no email) 2012-03-05 14:52:09 PST
I've emailed Mark Rowe for comment on my approach with the Win build.  The Mac build adjustments just re-use a build phase from WTF.xcodeproj (which I believe he wrote).

In either case, if Win-EWS passes, we should be able to land this and let the AppleWin folks iterate from here, w/o blocking the rest of the ports from moving WTF.
Comment 6 Eric Seidel (no email) 2012-03-05 15:11:43 PST
GREEN!  Hit me with your best reviewzor.
Comment 7 Eric Seidel (no email) 2012-03-05 15:12:28 PST
The next patch after this one will deploy fully-qualified paths for wtf includes everywhere. :)
Comment 8 Build Bot 2012-03-05 15:21:22 PST
Comment on attachment 130207 [details]
If this passes Mac/Win EWS it can be landed.

Attachment 130207 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/11836001
Comment 9 Eric Seidel (no email) 2012-03-05 16:47:26 PST
Created attachment 130233 [details]
Should work on all platforms now
Comment 10 Adam Barth 2012-03-05 17:05:57 PST
Comment on attachment 130233 [details]
Should work on all platforms now

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

Looks reasonable.  My understanding is that you've discussed the general approach with Mark Rowe and he's happy with it.  We can always fine-tune later if necessary.

> Source/JavaScriptCore/ChangeLog:18
> +         5. Makes build-webkit build the WTF XCode project by default.

This one seems like it could be separate since it's a Tool-only change.
Comment 11 Eric Seidel (no email) 2012-03-05 17:10:09 PST
The Mac approach has been discussed (and approved) with mrowe in great detail.  The Windows has been addressed in email but not fully negotiated, but since it builds I think it's safe to move forward as is and tweak as necessary after landing.  Mark has previously mentioned that he will likely need to do some production tweaks to at least Mac, if not Win after this all goes down.

The end result of this change is that Mac and Win now build "more like" other ports in that they have multi-level WTF includes, instead of always flattening.  Once I fix the WTF header includes I believe we can remove the ForwardingHeaders for WTF headers.  The removal of forwarding headers is largely orthogonal to the actual moving of the WTF files out of JavaScriptCore, but this patch moves us closer to both.
Comment 12 Mark Rowe (bdash) 2012-03-05 17:13:04 PST
Comment on attachment 130233 [details]
Should work on all platforms now

The sorting of #include's needs to be fixed at some point after this change.
Comment 13 Eric Seidel (no email) 2012-03-05 17:41:36 PST
OK, can do.  There are a bunch more changing in my next patch, but I'm happy to make a sorting pass.
Comment 14 Eric Seidel (no email) 2012-03-05 18:02:23 PST
Comment on attachment 130233 [details]
Should work on all platforms now

Thanks everyone!  I'll post block the next patch on this one so it's easy to follow the bug trail.
Comment 15 Eric Seidel (no email) 2012-03-05 18:55:22 PST
I've uploaded a patch which makes all public WTF headers use fully-qualified include paths on bug 80363.  I've blocked it on the master bug instead of this one.
Comment 16 WebKit Review Bot 2012-03-05 19:38:06 PST
Comment on attachment 130233 [details]
Should work on all platforms now

Clearing flags on attachment: 130233

Committed r109837: <http://trac.webkit.org/changeset/109837>
Comment 17 WebKit Review Bot 2012-03-05 19:38:11 PST
All reviewed patches have been landed.  Closing bug.