Bug 196762 - WebCore should build successfully even with -DENABLE_UNIFIED_BUILDS=OFF
Summary: WebCore should build successfully even with -DENABLE_UNIFIED_BUILDS=OFF
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Ross Kirsling
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-04-09 22:19 PDT by Ross Kirsling
Modified: 2019-04-10 09:54 PDT (History)
9 users (show)

See Also:


Attachments
Patch (55.06 KB, patch)
2019-04-09 22:21 PDT, Ross Kirsling
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ews102 for mac-highsierra (2.45 MB, application/zip)
2019-04-09 23:31 PDT, EWS Watchlist
no flags Details
Archive of layout-test-results from ews104 for mac-highsierra-wk2 (3.04 MB, application/zip)
2019-04-09 23:40 PDT, EWS Watchlist
no flags Details
Patch (54.92 KB, patch)
2019-04-09 23:53 PDT, Ross Kirsling
no flags Details | Formatted Diff | Diff
Patch for landing (54.94 KB, patch)
2019-04-10 09:29 PDT, Ross Kirsling
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ross Kirsling 2019-04-09 22:19:11 PDT
WebCore should build successfully even with -DENABLE_UNIFIED_BUILDS=OFF
Comment 1 Ross Kirsling 2019-04-09 22:21:44 PDT
Created attachment 367102 [details]
Patch
Comment 2 Ross Kirsling 2019-04-09 22:24:17 PDT
Comment on attachment 367102 [details]
Patch

The good news is that this patch gets WinCairo (regardless of clang-cl or regular cl) through compiling WebCore.

The bad news is that we hit one heck of a nasty-looking linking error:

> [5/1068] Linking CXX static library lib64\WebCore.lib
> FAILED: lib64/WebCore.lib
> cmd.exe /C "cd . && C:\PROGRA~2\MICROS~4\2019\COMMUN~1\VC\Tools\MSVC\1420~1.275\bin\Hostx64\x64\link.exe /lib /nologo /machine:x64 /out:lib64\WebCore.lib @CMakeFiles\WebCore.rsp  && cd ."
> lib64\WebCore.lib : fatal error LNK1248: image size (1002E82C0) exceeds maximum allowable size (FFFFFFFF)
> ninja: build stopped: subcommand failed.
Comment 3 EWS Watchlist 2019-04-09 23:31:55 PDT Comment hidden (obsolete)
Comment 4 EWS Watchlist 2019-04-09 23:31:57 PDT Comment hidden (obsolete)
Comment 5 EWS Watchlist 2019-04-09 23:40:47 PDT Comment hidden (obsolete)
Comment 6 EWS Watchlist 2019-04-09 23:40:49 PDT Comment hidden (obsolete)
Comment 7 Ross Kirsling 2019-04-09 23:53:24 PDT
Created attachment 367108 [details]
Patch
Comment 8 Ryosuke Niwa 2019-04-10 01:25:11 PDT
Comment on attachment 367108 [details]
Patch

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

r=me provided the following comments are addressed.

> Source/WebCore/bindings/js/JSCanvasRenderingContext2DCustom.cpp:31
> +    JSCanvasRenderingContext2D* jsCanvasRenderingContext = JSC::jsCast<JSCanvasRenderingContext2D*>(handle.slot()->asCell());
> +    void* root = jsCanvasRenderingContext->wrapped().canvas().opaqueRoot();

We don't wanna directly call Node::opaqueRoot like this.
Just include JSNode.h instead.

> Source/WebCore/bindings/js/JSCanvasRenderingContext2DCustom.cpp:37
> -    visitor.addOpaqueRoot(root(wrapped().canvas()));
> +    visitor.addOpaqueRoot(wrapped().canvas().opaqueRoot());

Ditto.
Comment 9 Ryosuke Niwa 2019-04-10 01:25:35 PDT
JSNodeCustom.h rather.
Comment 10 Ross Kirsling 2019-04-10 09:29:37 PDT
Created attachment 367127 [details]
Patch for landing
Comment 11 WebKit Commit Bot 2019-04-10 09:53:48 PDT
Comment on attachment 367127 [details]
Patch for landing

Clearing flags on attachment: 367127

Committed r244115: <https://trac.webkit.org/changeset/244115>
Comment 12 WebKit Commit Bot 2019-04-10 09:53:50 PDT
All reviewed patches have been landed.  Closing bug.
Comment 13 Radar WebKit Bug Importer 2019-04-10 09:54:24 PDT
<rdar://problem/49779064>