Bug 172833

Summary: [JSCOnly] Build static jsc.exe on Windows
Product: WebKit Reporter: Stephan Szabo <stephan.szabo>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: annulen, commit-queue, don.olmstead, Hironori.Fujii, lforschler, ysuzuki
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 172144    
Attachments:
Description Flags
Patch to support static jsc.exe jsconly build on windows.
none
Updated patch for static jsc.exe jsconly build on Windows with less cruft
ysuzuki: review+, ysuzuki: commit-queue-
Updated patch based on review comments
none
Updated patch moving win32 library add none

Description Stephan Szabo 2017-06-01 13:23:10 PDT
Get a static build of jsc.exe on Windows with JSCOnly.
Comment 1 Stephan Szabo 2017-06-01 13:34:06 PDT
Created attachment 311751 [details]
Patch to support static jsc.exe jsconly build on windows.
Comment 2 Stephan Szabo 2017-06-01 16:00:35 PDT
Created attachment 311770 [details]
Updated patch for static jsc.exe jsconly build on Windows with less cruft
Comment 3 Yusuke Suzuki 2017-06-01 19:16:17 PDT
Comment on attachment 311770 [details]
Updated patch for static jsc.exe jsconly build on Windows with less cruft

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

r=me with comments.

> Source/WTF/wtf/PlatformJSCOnly.cmake:60
> +    list(APPEND WTF_LIBRARIES
> +        winmm
> +    )

Could you move these lines inside `if (WIN32)` in L20-24?

> Source/cmake/OptionsJSCOnly.cmake:48
> +# FIXME: JSCOnly on WIN32 seems to only work with fully static build

Could you open a bug for this FIXME and add URL here?

> Tools/CMakeLists.txt:31
> +elseif ("${PORT}" STREQUAL "Win")

Nice.
Comment 4 Yusuke Suzuki 2017-06-01 23:08:50 PDT
BTW, it would be good decoupling Windows-related configurations from Windows ports options.
But, for now, only JSCOnly port will use this mechanism. And only small part of the Windows configurations is required to make JSCOnly work.
So, personally, this patch is ok for now.
Comment 5 Stephan Szabo 2017-06-02 11:26:56 PDT
Created attachment 311840 [details]
Updated patch based on review comments
Comment 6 Don Olmstead 2017-06-02 12:44:50 PDT
(In reply to Yusuke Suzuki from comment #4)
> BTW, it would be good decoupling Windows-related configurations from Windows
> ports options.
> But, for now, only JSCOnly port will use this mechanism. And only small part
> of the Windows configurations is required to make JSCOnly work.
> So, personally, this patch is ok for now.

One issue with that is the use of CF. AppleWin and WinCairo are using it. We plan to remove CF from WinCairo going forward though.
Comment 7 Konstantin Tokarev 2017-06-02 12:49:42 PDT
Comment on attachment 311840 [details]
Updated patch based on review comments

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

> Source/WTF/wtf/PlatformJSCOnly.cmake:24
> +    list(APPEND WTF_LIBRARIES

Please move this to Source/WTF/wtf/CMakeLists.txt
Comment 8 Stephan Szabo 2017-06-02 14:09:30 PDT
Created attachment 311858 [details]
Updated patch moving win32 library add
Comment 9 WebKit Commit Bot 2017-06-02 15:08:55 PDT
Comment on attachment 311858 [details]
Updated patch moving win32 library add

Rejecting attachment 311858 [details] from commit-queue.

Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.webkit.org', '--bot-id=webkit-cq-02', 'validate-changelog', '--check-oops', '--non-interactive', 311858, '--port=mac']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in ChangeLog contains OOPS!.

Full output: http://webkit-queues.webkit.org/results/3861942
Comment 10 WebKit Commit Bot 2017-06-02 15:20:19 PDT
Comment on attachment 311858 [details]
Updated patch moving win32 library add

Clearing flags on attachment: 311858

Committed r217736: <http://trac.webkit.org/changeset/217736>
Comment 11 WebKit Commit Bot 2017-06-02 15:20:21 PDT
All reviewed patches have been landed.  Closing bug.