WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
141734
use WEBCORE_EXPORT on Windows
https://bugs.webkit.org/show_bug.cgi?id=141734
Summary
use WEBCORE_EXPORT on Windows
Alex Christensen
Reported
2015-02-17 18:48:40 PST
Step 1: Add a few more WEBCORE_EXPORT macros. Step 2: Make the switch in PlatformExportMacros.h and WebKitCommon.props. Step 3: Remove WebKitExports.def.in and the associated build step.
Attachments
Patch
(128.12 KB, patch)
2015-02-25 17:02 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
Patch
(146.34 KB, patch)
2015-02-25 17:12 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
Patch
(140.87 KB, patch)
2015-02-25 17:31 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
Patch
(140.92 KB, patch)
2015-02-25 17:45 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
Patch
(141.01 KB, patch)
2015-02-25 18:00 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
Patch
(149.88 KB, patch)
2015-02-25 18:34 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
Patch
(149.64 KB, patch)
2015-02-25 18:36 PST
,
Brent Fulgham
achristensen
: review+
Details
Formatted Diff
Diff
Show Obsolete
(6)
View All
Add attachment
proposed patch, testcase, etc.
Alex Christensen
Comment 1
2015-02-17 19:00:14 PST
(In reply to
comment #0
)
> Step 1: Add a few more WEBCORE_EXPORT macros. > Step 2: Make the switch in PlatformExportMacros.h and WebKitCommon.props.
And in WebKitPrefix.h.
> Step 3: Remove WebKitExports.def.in and the associated build step.
Brent Fulgham
Comment 2
2015-02-25 16:38:35 PST
***
Bug 141720
has been marked as a duplicate of this bug. ***
Brent Fulgham
Comment 3
2015-02-25 17:02:23 PST
Created
attachment 247367
[details]
Patch
WebKit Commit Bot
Comment 4
2015-02-25 17:03:49 PST
Attachment 247367
[details]
did not pass style-queue: ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.cpp:26: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:126: "windows.h" already included at Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:105 [build/include] [4] Total errors found: 2 in 46 files If any of these errors are false positives, please file a bug against check-webkit-style.
Brent Fulgham
Comment 5
2015-02-25 17:12:30 PST
Created
attachment 247370
[details]
Patch
WebKit Commit Bot
Comment 6
2015-02-25 17:15:02 PST
Attachment 247370
[details]
did not pass style-queue: ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.cpp:26: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:126: "windows.h" already included at Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:105 [build/include] [4] ERROR: Tools/DumpRenderTree/win/DumpRenderTreePrefix.cpp:28: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Total errors found: 3 in 53 files If any of these errors are false positives, please file a bug against check-webkit-style.
Brent Fulgham
Comment 7
2015-02-25 17:31:06 PST
Created
attachment 247372
[details]
Patch
WebKit Commit Bot
Comment 8
2015-02-25 17:32:55 PST
Attachment 247372
[details]
did not pass style-queue: ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.cpp:26: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:126: "windows.h" already included at Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:105 [build/include] [4] ERROR: Tools/DumpRenderTree/win/DumpRenderTreePrefix.cpp:28: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Total errors found: 3 in 53 files If any of these errors are false positives, please file a bug against check-webkit-style.
Brent Fulgham
Comment 9
2015-02-25 17:45:03 PST
Created
attachment 247373
[details]
Patch
WebKit Commit Bot
Comment 10
2015-02-25 17:46:02 PST
Attachment 247373
[details]
did not pass style-queue: ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.cpp:26: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:126: "windows.h" already included at Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:105 [build/include] [4] ERROR: Tools/DumpRenderTree/win/DumpRenderTreePrefix.cpp:28: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Total errors found: 3 in 53 files If any of these errors are false positives, please file a bug against check-webkit-style.
Alex Christensen
Comment 11
2015-02-25 17:59:41 PST
Comment on
attachment 247373
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=247373&action=review
> Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters:7228 > + <ClCompile Include="..\platform\cf\CoreMediaSoftLink.cpp" />
These should have filters.
> Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters:15177 > + <ClInclude Include="..\Modules\streams\ReadableStream.h" />
Filters.
> Source/WebCore/WebCore.vcxproj/WebCoreTestSupport.vcxproj:179 > + <ForceSymbolReferences>
What does this do?
> Source/WebCore/WebCore.vcxproj/WebCoreTestSupportCommon.props:10 > + <AdditionalIncludeDirectories>$(ProjectDir)..;$(ProjectDir)..\Modules\mediacontrols;$(ProjectDir)..\Modules\mediastream;$(ProjectDir)..\Modules\encryptedmedia;$(ProjectDir)..\Modules\filesystem;$(ProjectDir)..\Modules\gamepad;$(ProjectDir)..\Modules\geolocation;$(ProjectDir)..\Modules\indexeddb;$(ProjectDir)..\Modules\mediasource;$(ProjectDir)..\Modules\navigatorcontentutils;$(ProjectDir)..\Modules\plugins;$(ProjectDir)..\Modules\speech;$(ProjectDir)..\Modules\proximity;$(ProjectDir)..\Modules\quota;$(ProjectDir)..\Modules\notifications;$(ProjectDir)..\Modules\streams;$(ProjectDir)..\Modules\webdatabase;$(ProjectDir)..\Modules\websockets;$(ProjectDir)..\accessibility;$(ProjectDir)..\accessibility\win;$(ProjectDir)..\bridge;$(ProjectDir)..\bridge\c;$(ProjectDir)..\bridge\jsc;$(ProjectDir)..\css;$(ProjectDir)..\cssjit;$(ProjectDir)..\editing;$(ProjectDir)..\fileapi;$(ProjectDir)..\rendering;$(ProjectDir)..\rendering\line;$(ProjectDir)..\rendering\mathml;$(ProjectDir)..\rendering\shapes;$(ProjectDir)..\rendering\style;$(ProjectDir)..\rendering\svg;$(ProjectDir)..\bindings;$(ProjectDir)..\bindings\generic;$(ProjectDir)..\bindings\js;$(ProjectDir)..\bindings\js\specialization;$(ProjectDir)..\dom;$(ProjectDir)..\dom\default;$(ProjectDir)..\history;$(ProjectDir)..\html;$(ProjectDir)..\html\canvas;$(ProjectDir)..\html\forms;$(ProjectDir)..\html\parser;$(ProjectDir)..\html\shadow;$(ProjectDir)..\html\track;$(ProjectDir)..\inspector;$(ProjectDir)..\loader;$(ProjectDir)..\loader\appcache;$(ProjectDir)..\loader\archive;$(ProjectDir)..\loader\archive\cf;$(ProjectDir)..\loader\cache;$(ProjectDir)..\loader\icon;$(ProjectDir)..\mathml;$(ProjectDir)..\page;$(ProjectDir)..\page\animation;$(ProjectDir)..\page\scrolling;$(ProjectDir)..\page\win;$(ProjectDir)..\platform;$(ProjectDir)..\platform\animation;$(ProjectDir)..\platform\audio;$(ProjectDir)..\platform\mock;$(ProjectDir)..\platform\sql;$(ProjectDir)..\platform\win;$(ProjectDir)..\platform\network;$(ProjectDir)..\platform\network\win;$(ProjectDir)..\platform\cf;$(ProjectDir)..\platform\graphics;$(ProjectDir)..\platform\graphics\ca;$(ProjectDir)..\platform\graphics\cpu\arm\filters;$(ProjectDir)..\platform\graphics\filters;$(ProjectDir)..\platform\graphics\filters\arm;$(ProjectDir)..\platform\graphics\opentype;$(ProjectDir)..\platform\graphics\transforms;$(ProjectDir)..\platform\text;$(ProjectDir)..\platform\text\icu;$(ProjectDir)..\platform\text\transcoder;$(ProjectDir)..\platform\graphics\win;$(ProjectDir)..\xml;$(ProjectDir)..\xml\parser;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\WebCore\DerivedSources;$(ProjectDir)..\plugins;$(ProjectDir)..\plugins\win;$(ProjectDir)..\replay;$(ProjectDir)..\svg\animation;$(ProjectDir)..\svg\graphics;$(ProjectDir)..\svg\properties;$(ProjectDir)..\svg\graphics\filters;$(ProjectDir)..\svg;$(ProjectDir)..\testing;$(ProjectDir)..\crypto;$(ProjectDir)..\crypto\keys;$(ProjectDir)..\wml;$(ProjectDir)..\storage;$(ProjectDir)..\style;$(ProjectDir)..\websockets;$(ProjectDir)..\workers;$(ConfigurationBuildDir)\include;$(ConfigurationBuildDir)\include\private;$(ConfigurationBuildDir)\include\JavaScriptCore;$(ConfigurationBuildDir)\include\private\JavaScriptCore;$(ProjectDir)..\ForwardingHeaders;$(ProjectDir)..\platform\graphics\gpu;$(ProjectDir)..\platform\graphics\egl;$(ProjectDir)..\platform\graphics\surfaces;$(ProjectDir)..\platform\graphics\surfaces\egl;$(ProjectDir)..\platform\graphics\opengl;$(WebKit_Libraries)\include;$(WebKit_Libraries)\include\private;$(WebKit_Libraries)\include\private\JavaScriptCore;$(WebKit_Libraries)\include\sqlite;$(WebKit_Libraries)\include\JavaScriptCore;$(WebKit_Libraries)\include\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
I don't think it's a good idea to duplicate these lists of include directories. Import a property sheet that already has it.
> Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:222 > +my %testSupportClasses = (
Put one of the bindings tests names in here so we can test that this works, then update that bindings test.
> Source/WebCore/page/DOMWindow.cpp:84 > +#include "Profile.h"
I had to include a few extra things like this, too. I'm not sure why.
Brent Fulgham
Comment 12
2015-02-25 18:00:59 PST
Created
attachment 247377
[details]
Patch
WebKit Commit Bot
Comment 13
2015-02-25 18:02:27 PST
Attachment 247377
[details]
did not pass style-queue: ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.cpp:26: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:126: "windows.h" already included at Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:105 [build/include] [4] ERROR: Tools/DumpRenderTree/win/DumpRenderTreePrefix.cpp:28: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Total errors found: 3 in 53 files If any of these errors are false positives, please file a bug against check-webkit-style.
Alex Christensen
Comment 14
2015-02-25 18:22:02 PST
r=me once this passes ews
Brent Fulgham
Comment 15
2015-02-25 18:34:36 PST
Created
attachment 247386
[details]
Patch
Brent Fulgham
Comment 16
2015-02-25 18:36:54 PST
Created
attachment 247387
[details]
Patch
WebKit Commit Bot
Comment 17
2015-02-25 18:39:29 PST
Attachment 247387
[details]
did not pass style-queue: ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:126: "windows.h" already included at Source/WebCore/testing/js/WebCoreTestSupportPrefix.h:105 [build/include] [4] ERROR: Source/WebCore/testing/js/WebCoreTestSupportPrefix.cpp:26: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] ERROR: Tools/DumpRenderTree/win/DumpRenderTreePrefix.cpp:28: Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Total errors found: 3 in 59 files If any of these errors are false positives, please file a bug against check-webkit-style.
Brent Fulgham
Comment 18
2015-02-25 20:04:29 PST
Committed
r180653
: <
http://trac.webkit.org/changeset/180653
>
Myles C. Maxfield
Comment 19
2015-02-25 20:31:35 PST
YYYAAAAAAYYYYYYYYY
Andreas Kling
Comment 20
2015-02-25 22:37:31 PST
OMG is this real life?
Brent Fulgham
Comment 21
2015-02-25 22:43:39 PST
It's happening! We should all give Alex a big thanks for getting all the parts in place so that this could finally happen.
Csaba Osztrogonác
Comment 22
2015-02-26 03:50:09 PST
(In reply to
comment #18
)
> Committed
r180653
: <
http://trac.webkit.org/changeset/180653
>
It broke the build on Apple's WinCairo buildbot.
Brent Fulgham
Comment 23
2015-02-26 08:54:12 PST
(In reply to
comment #22
)
> (In reply to
comment #18
) > > Committed
r180653
: <
http://trac.webkit.org/changeset/180653
> > > It broke the build on Apple's WinCairo buildbot.
It looks like WinCairo builds a TestWebKitAPI file that the Apple Windows port does not. Patch coming...
Brent Fulgham
Comment 24
2015-02-26 09:06:11 PST
Speculative build fix for WinCairo in
r180677
<
https://trac.webkit.org/changeset/180677
>.
Csaba Osztrogonác
Comment 25
2015-02-27 12:18:05 PST
(In reply to
comment #24
)
> Speculative build fix for WinCairo in
r180677
> <
https://trac.webkit.org/changeset/180677
>.
The build still fails with the same error message.
Brent Fulgham
Comment 26
2015-02-27 13:42:09 PST
Alex: My proposed fix didn't seem to correct the problem. If you have access to that machine can you see what's going on?
Alex Christensen
Comment 27
2015-02-27 14:17:53 PST
http://trac.webkit.org/changeset/180781
should have fixed WinCairo.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug