Summary: | [Windows, WinCairo] Stop individually compiling WTF files in JSC Utility and WebCore | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Brent Fulgham <bfulgham> | ||||||||
Component: | JavaScriptCore | Assignee: | Brent Fulgham <bfulgham> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | CC: | andersca, commit-queue, paroga | ||||||||
Priority: | P2 | ||||||||||
Version: | 528+ (Nightly build) | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Bug Depends on: | 114714 | ||||||||||
Bug Blocks: | |||||||||||
Attachments: |
|
Description
Brent Fulgham
2013-04-16 15:20:22 PDT
Created attachment 198443 [details]
Patch
Created attachment 198473 [details]
Patch
WebCore was also manually building these files, so exporting the symbols from JavaScriptCore.dll caused a build failure. The most recent patch resolves that issue. Created attachment 198586 [details]
Patch
I had to add a bunch of symbols to our exports file so that WebCore could use the WTF implementations in JavaScriptCore.dll, rather than compiling its own copy of the files. Sorry the patch is so big. :-( Committed r148620: <http://trac.webkit.org/changeset/148620> Did you look at https://trac.webkit.org/changeset/59171 before you made this change? AFAIK this ugly construct is not just for fun. Bah! Stupid history. It looks like Bug 38930 needs to be addressed somehow. It still seems like the better thing to do would be to link any library that wants to use WTFString (and friends) to WTF directly, rather than exporting them from JavaScriptCore. (In reply to comment #8) > Bah! Stupid history. It looks like Bug 38930 needs to be addressed somehow. +1 :) Rollout? > It still seems like the better thing to do would be to link any library that wants to use WTFString (and friends) to WTF directly, rather than exporting them from JavaScriptCore. Pleas think about using EXPORT macros for the Windows port too. There might be a bunch of problems when you link the symbols two time and it makes the stuff not really easier to understand.... IMHO the only right way is to create an additional "WTFString" static library. BTW: Maybe you can implement the last missing part in the "export symbols on Windows" stuff: I only have a CMake based VS solution file. If you look at https://bugs.webkit.org/attachment.cgi?id=196804 and search for "generate-win32-export-forwards" you find the only missing part to get rid of the export file on Windows too. This change has been superseded by https://bugs.webkit.org/show_bug.cgi?id=117050. |