Bug 40921 - WebKit1 and WebKit2 should build as a single DLL
Summary: WebKit1 and WebKit2 should build as a single DLL
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit API (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Windows XP
: P2 Normal
Assignee: Nobody
Keywords: InRadar, PlatformOnly
Depends on:
Blocks: 40922
  Show dependency treegraph
Reported: 2010-06-21 08:31 PDT by Adam Roben (:aroben)
Modified: 2012-10-08 15:21 PDT (History)
5 users (show)

See Also:

Patch (143.45 KB, patch)
2010-07-12 16:39 PDT, Steve Falkenburg
alice.barraclough: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Roben (:aroben) 2010-06-21 08:31:32 PDT
We should build the WebKit1 and WebKit2 APIs into a single DLL on Windows. This way applications that use both APIs won't pull in two copies of WebCore (with unshared memory caches, etc.).

(The other option is to build WebCore as a separate DLL, but I think that would be much harder to do.)
Comment 1 Adam Roben (:aroben) 2010-06-21 08:34:58 PDT
Comment 2 Steve Falkenburg 2010-07-12 16:39:38 PDT
Created attachment 61288 [details]
Comment 3 Alice Liu 2010-07-12 17:15:59 PDT
Comment on attachment 61288 [details]

> Index: WebKit2/ChangeLog
> ===================================================================
> @@ -1,3 +1,56 @@
> +        * win/WebKit2.def: Added. Copied from WebKit project.
> +        * win/WebKit2.rc: Added resources previously in WebKit.
> +        * win/WebKit2.vcproj: Changed project name to WebKit so we will link output to WebKit.dll.
> +        Removed implementations overlapping with WebKitLib (WebCoreLocalizedStrings, DllMain, WebLocalizableStrings, WebProcessMain).
> +        * win/WebKit2Common.vsprops: Use a framework name of WebKit instead of WebKit2 to reflect project name.
> +        Renamed BUILDING_WEBKIT2 to BUILDING_WEBKIT since there is now just a single WebKit.dll.
> +        * win/WebKit2WebProcess.vcproj: Link against WebKit instead of WebKit2 due to renaming.        

I find it inconsistent that we're building the WebKit2 dll as WebKit.dll, but we're still calling several of these files "WebKit2(.*)".  Could you rename these files without the 2.  follow-up patch is fine with me. 

> Index: WebKit/win/WebKit.vcproj/WebKit.vcproj
> ===================================================================

> -			<File
> -				RelativePath=".\nullplugin.png"
> -				>
> -			</File>

the other pan*.pngs added in WebKit2.vcproj don't seem to be removed from WebKit.vcproj.  

> -			<File
> -				RelativePath=".\searchCancel.png"
> -				>
> -			</File>
Comment 4 Steve Falkenburg 2010-07-12 21:59:29 PDT
Comment 5 Simon Fraser (smfr) 2012-10-08 15:17:41 PDT
Roger, Tim and I have been confused for weeks now about why we couldn't find WebKit.def any more. Using WebKit2.def makes no sense.