Title: [104187] trunk
Revision
104187
Author
[email protected]
Date
2012-01-05 11:53:47 -0800 (Thu, 05 Jan 2012)

Log Message

Turn DumpRenderTree into a stub .exe launcher and a .dll that contains all the real code

This allows us to add the Safari and Apple Application Support directories to PATH before
trying to load WebKit so that SafariTheme.dll, CoreGraphics.dll and friends can be found.

Part of <http://webkit.org/b/75486> <rdar://problem/10638124> NRWT fails to launch Apple's
Windows port of DumpRenderTree/WebKitTestRunner

Reviewed by Steve Falkenburg.

Tools:

* DumpRenderTree/DumpRenderTree.sln: Added DumpRenderTreeLauncher and ImageDiffLauncher,
which I forgot to add to this .sln when that project was created.

* DumpRenderTree/win/DumpRenderTree.cpp:
(dllLauncherEntryPoint): Renamed from main. This is what the stub launcher calls.

* DumpRenderTree/win/DumpRenderTree.vcproj:
* DumpRenderTree/win/DumpRenderTreeCommon.vsprops:
Changed to build DumpRenderTree.dll instead of DumpRenderTree.exe.

* DumpRenderTree/win/DumpRenderTreeLauncher.vcproj: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherCommon.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherDebug.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherDebugAll.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherProduction.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherRelease.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherReleaseCairoCFLite.vsprops: Added.

* win/DLLLauncher/DLLLauncherMain.cpp:
(modifyPath): Moved code to modify PATH here from main/wWinMain. Changed to also prepend
Safari's directory to PATH so that SafariTheme.dll can be found.

(main):
(wWinMain):
Changed to use the new modifyPath function.

Source/WebKit/win:

Add DumpRenderTreeLauncher to WebKit.sln.

It builds just after DumpRenderTree.

* WebKit.vcproj/WebKit.sln:

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebKit/win/ChangeLog (104186 => 104187)


--- trunk/Source/WebKit/win/ChangeLog	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Source/WebKit/win/ChangeLog	2012-01-05 19:53:47 UTC (rev 104187)
@@ -1,3 +1,16 @@
+2012-01-05  Adam Roben  <[email protected]>
+
+        Add DumpRenderTreeLauncher to WebKit.sln.
+
+        It builds just after DumpRenderTree.
+
+        Part of <http://webkit.org/b/75486> <rdar://problem/10638124> NRWT fails to launch Apple's
+        Windows port of DumpRenderTree/WebKitTestRunner
+
+        Reviewed by Steve Falkenburg.
+
+        * WebKit.vcproj/WebKit.sln:
+
 2012-01-04  Adam Roben  <[email protected]>
 
         Add ImageDiffLauncher to WebKit.sln

Modified: trunk/Source/WebKit/win/WebKit.vcproj/WebKit.sln (104186 => 104187)


--- trunk/Source/WebKit/win/WebKit.vcproj/WebKit.sln	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Source/WebKit/win/WebKit.vcproj/WebKit.sln	2012-01-05 19:53:47 UTC (rev 104187)
@@ -100,7 +100,7 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitLauncherWin", "..\..\..\..\Tools\WebKitLauncherWin\WebKitLauncherWin.vcproj", "{D09806DB-E58B-4646-8C9B-61101906C1E2}"
 	ProjectSection(ProjectDependencies) = postProject
-		{6567DFD4-D6DE-4CD5-825D-17E353D160E1} = {6567DFD4-D6DE-4CD5-825D-17E353D160E1}
+		{2974EA02-840B-4995-8719-8920A61006F1} = {2974EA02-840B-4995-8719-8920A61006F1}
 	EndProjectSection
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinLauncher", "..\..\..\..\Tools\WinLauncher\WinLauncher.vcproj", "{114FCA11-216B-4C8C-957E-30A75AE80443}"
@@ -173,6 +173,11 @@
 		{59CC0547-70AC-499C-9B19-EC01C6F61137} = {59CC0547-70AC-499C-9B19-EC01C6F61137}
 	EndProjectSection
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DumpRenderTreeLauncher", "..\..\..\..\Tools\DumpRenderTree\win\DumpRenderTreeLauncher.vcproj", "{2974EA02-840B-4995-8719-8920A61006F1}"
+	ProjectSection(ProjectDependencies) = postProject
+		{6567DFD4-D6DE-4CD5-825D-17E353D160E1} = {6567DFD4-D6DE-4CD5-825D-17E353D160E1}
+	EndProjectSection
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug_All|Win32 = Debug_All|Win32
@@ -577,6 +582,18 @@
 		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
 		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release|Win32.ActiveCfg = Release|Win32
 		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release|Win32.Build.0 = Release|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_All|Win32.ActiveCfg = Debug_All|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_All|Win32.Build.0 = Debug_All|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug|Win32.ActiveCfg = Debug|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug|Win32.Build.0 = Debug|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Production|Win32.ActiveCfg = Production|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Production|Win32.Build.0 = Production|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release|Win32.ActiveCfg = Release|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release|Win32.Build.0 = Release|Win32
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
@@ -615,5 +632,6 @@
 		{767B10FB-76C1-44D0-8005-85ED7F9AA5E4} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
 		{7AF4EBFB-CCBC-448F-A36A-8210E08D6A7D} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
 		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+		{2974EA02-840B-4995-8719-8920A61006F1} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
 	EndGlobalSection
 EndGlobal

Modified: trunk/Tools/ChangeLog (104186 => 104187)


--- trunk/Tools/ChangeLog	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Tools/ChangeLog	2012-01-05 19:53:47 UTC (rev 104187)
@@ -1,3 +1,42 @@
+2012-01-05  Adam Roben  <[email protected]>
+
+        Turn DumpRenderTree into a stub .exe launcher and a .dll that contains all the real code
+
+        This allows us to add the Safari and Apple Application Support directories to PATH before
+        trying to load WebKit so that SafariTheme.dll, CoreGraphics.dll and friends can be found.
+
+        Part of <http://webkit.org/b/75486> <rdar://problem/10638124> NRWT fails to launch Apple's
+        Windows port of DumpRenderTree/WebKitTestRunner
+
+        Reviewed by Steve Falkenburg.
+
+        * DumpRenderTree/DumpRenderTree.sln: Added DumpRenderTreeLauncher and ImageDiffLauncher,
+        which I forgot to add to this .sln when that project was created.
+
+        * DumpRenderTree/win/DumpRenderTree.cpp:
+        (dllLauncherEntryPoint): Renamed from main. This is what the stub launcher calls.
+
+        * DumpRenderTree/win/DumpRenderTree.vcproj:
+        * DumpRenderTree/win/DumpRenderTreeCommon.vsprops:
+        Changed to build DumpRenderTree.dll instead of DumpRenderTree.exe.
+
+        * DumpRenderTree/win/DumpRenderTreeLauncher.vcproj: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherCommon.vsprops: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherDebug.vsprops: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherDebugAll.vsprops: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherProduction.vsprops: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherRelease.vsprops: Added.
+        * DumpRenderTree/win/DumpRenderTreeLauncherReleaseCairoCFLite.vsprops: Added.
+
+        * win/DLLLauncher/DLLLauncherMain.cpp:
+        (modifyPath): Moved code to modify PATH here from main/wWinMain. Changed to also prepend
+        Safari's directory to PATH so that SafariTheme.dll can be found.
+
+        (main):
+        (wWinMain):
+        Changed to use the new modifyPath function.
+
 2012-01-05  Alexander Færøy  <[email protected]>
 
         [Qt] Never enable FontConfig on Mac OS X

Modified: trunk/Tools/DumpRenderTree/DumpRenderTree.sln (104186 => 104187)


--- trunk/Tools/DumpRenderTree/DumpRenderTree.sln	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Tools/DumpRenderTree/DumpRenderTree.sln	2012-01-05 19:53:47 UTC (rev 104187)
@@ -8,11 +8,21 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestNetscapePlugin", "TestNetscapePlugin\win\TestNetscapePlugin.vcproj", "{C0737398-3565-439E-A2B8-AB2BE4D5430C}"
 	ProjectSection(ProjectDependencies) = postProject
-		{59CC0547-70AC-499C-9B19-EC01C6F61137} = {59CC0547-70AC-499C-9B19-EC01C6F61137}
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017} = {DD7949B6-F2B4-47C2-9C42-E21E84CB1017}
 	EndProjectSection
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImageDiff", "win\ImageDiff.vcproj", "{59CC0547-70AC-499C-9B19-EC01C6F61137}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DumpRenderTreeLauncher", "win\DumpRenderTreeLauncher.vcproj", "{2974EA02-840B-4995-8719-8920A61006F1}"
+	ProjectSection(ProjectDependencies) = postProject
+		{6567DFD4-D6DE-4CD5-825D-17E353D160E1} = {6567DFD4-D6DE-4CD5-825D-17E353D160E1}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImageDiffLauncher", "win\ImageDiffLauncher.vcproj", "{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}"
+	ProjectSection(ProjectDependencies) = postProject
+		{59CC0547-70AC-499C-9B19-EC01C6F61137} = {59CC0547-70AC-499C-9B19-EC01C6F61137}
+	EndProjectSection
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug_All|Win32 = Debug_All|Win32
@@ -59,6 +69,30 @@
 		{59CC0547-70AC-499C-9B19-EC01C6F61137}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
 		{59CC0547-70AC-499C-9B19-EC01C6F61137}.Release|Win32.ActiveCfg = Release|Win32
 		{59CC0547-70AC-499C-9B19-EC01C6F61137}.Release|Win32.Build.0 = Release|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_All|Win32.ActiveCfg = Debug_All|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_All|Win32.Build.0 = Debug_All|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug|Win32.ActiveCfg = Debug|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Debug|Win32.Build.0 = Debug|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Production|Win32.ActiveCfg = Production|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Production|Win32.Build.0 = Production|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release|Win32.ActiveCfg = Release|Win32
+		{2974EA02-840B-4995-8719-8920A61006F1}.Release|Win32.Build.0 = Release|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Debug_All|Win32.ActiveCfg = Debug_All|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Debug_All|Win32.Build.0 = Debug_All|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Debug|Win32.ActiveCfg = Debug|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Debug|Win32.Build.0 = Debug|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Production|Win32.ActiveCfg = Production|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Production|Win32.Build.0 = Production|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release|Win32.ActiveCfg = Release|Win32
+		{DD7949B6-F2B4-47C2-9C42-E21E84CB1017}.Release|Win32.Build.0 = Release|Win32
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE

Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (104186 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2012-01-05 19:53:47 UTC (rev 104187)
@@ -1305,7 +1305,7 @@
     return EXCEPTION_CONTINUE_SEARCH;
 }
 
-int main(int argc, char* argv[])
+extern "C" __declspec(dllexport) int WINAPI dllLauncherEntryPoint(int argc, const char* argv[])
 {
     // Cygwin calls ::SetErrorMode(SEM_FAILCRITICALERRORS), which we will inherit. This is bad for
     // testing/debugging, as it causes the post-mortem debugger not to be invoked. We reset the

Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.vcproj (104186 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.vcproj	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.vcproj	2012-01-05 19:53:47 UTC (rev 104187)
@@ -17,7 +17,7 @@
 	<Configurations>
 		<Configuration
 			Name="Debug|Win32"
-			ConfigurationType="1"
+			ConfigurationType="2"
 			InheritedPropertySheets=".\DumpRenderTreeDebug.vsprops"
 			CharacterSet="1"
 			>
@@ -78,7 +78,7 @@
 		</Configuration>
 		<Configuration
 			Name="Release|Win32"
-			ConfigurationType="1"
+			ConfigurationType="2"
 			InheritedPropertySheets=".\DumpRenderTreeRelease.vsprops"
 			CharacterSet="1"
 			>
@@ -139,7 +139,7 @@
 		</Configuration>
 		<Configuration
 			Name="Debug_Cairo_CFLite|Win32"
-			ConfigurationType="1"
+			ConfigurationType="2"
 			InheritedPropertySheets=".\DumpRenderTreeDebugCairoCFLite.vsprops"
 			CharacterSet="1"
 			>
@@ -200,7 +200,7 @@
 		</Configuration>
 		<Configuration
 			Name="Release_Cairo_CFLite|Win32"
-			ConfigurationType="1"
+			ConfigurationType="2"
 			InheritedPropertySheets=".\DumpRenderTreeReleaseCairoCFLite.vsprops"
 			CharacterSet="1"
 			>
@@ -261,7 +261,7 @@
 		</Configuration>
 		<Configuration
 			Name="Debug_All|Win32"
-			ConfigurationType="1"
+			ConfigurationType="2"
 			InheritedPropertySheets=".\DumpRenderTreeDebugAll.vsprops"
 			CharacterSet="1"
 			>
@@ -322,7 +322,7 @@
 		</Configuration>
 		<Configuration
 			Name="Production|Win32"
-			ConfigurationType="1"
+			ConfigurationType="2"
 			InheritedPropertySheets=".\DumpRenderTreeProduction.vsprops"
 			CharacterSet="1"
 			WholeProgramOptimization="1"

Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTreeCommon.vsprops (104186 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeCommon.vsprops	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeCommon.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -15,6 +15,7 @@
 		Name="VCLinkerTool"
 		AdditionalOptions="/NXCOMPAT"
 		AdditionalDependencies="_javascript_Core$(WebKitDLLConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebKit$(WebKitDLLConfigSuffix).lib WebCoreTestSupport$(WebKitConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib gdi32.lib ole32.lib oleaut32.lib user32.lib shlwapi.lib oleacc.lib comsuppw.lib"
+		OutputFile="$(OutDir)\$(ProjectName)$(WebKitConfigSuffix).dll"
 		SubSystem="1"
 	/>
 </VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncher.vcproj (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncher.vcproj	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncher.vcproj	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,396 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncher"
+	ProjectGUID="{2974EA02-840B-4995-8719-8920A61006F1}"
+	RootNamespace="DumpRenderTreeLauncher"
+	Keyword="Win32Proj"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			ConfigurationType="1"
+			InheritedPropertySheets=".\DumpRenderTreeLauncherDebug.vsprops"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCWebDeploymentTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			ConfigurationType="1"
+			InheritedPropertySheets=".\DumpRenderTreeLauncherRelease.vsprops"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCWebDeploymentTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Debug_Cairo_CFLite|Win32"
+			ConfigurationType="1"
+			InheritedPropertySheets=".\DumpRenderTreeLauncherDebugCairoCFLite.vsprops"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCWebDeploymentTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Debug_All|Win32"
+			ConfigurationType="1"
+			InheritedPropertySheets=".\DumpRenderTreeLauncherDebugAll.vsprops"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCWebDeploymentTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Production|Win32"
+			ConfigurationType="1"
+			InheritedPropertySheets=".\DumpRenderTreeLauncherProduction.vsprops"
+			CharacterSet="1"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCWebDeploymentTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release_Cairo_CFLite|Win32"
+			ConfigurationType="1"
+			InheritedPropertySheets=".\DumpRenderTreeLauncherReleaseCairoCFLite.vsprops"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCWebDeploymentTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<File
+			RelativePath="..\..\win\DLLLauncher\DLLLauncherMain.cpp"
+			>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherCommon.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherCommon.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherCommon.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncherCommon"
+	>
+	<Tool
+		Name="VCCLCompilerTool"
+		PreprocessorDefinitions="USE_CONSOLE_ENTRY_POINT"
+	/>
+	<Tool
+		Name="VCLinkerTool"
+		AdditionalDependencies="shlwapi.lib"
+		OutputFile="$(OutDir)\DumpRenderTree$(WebKitConfigSuffix).exe"
+		ProgramDatabaseFile="$(TargetDir)$(TargetName)Launcher.pdb"
+		SubSystem="1"
+	/>
+</VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebug.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebug.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebug.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncherDebug"
+	InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\DumpRenderTreeLauncherCommon.vsprops"
+	>
+</VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebugAll.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebugAll.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebugAll.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncherDebugAll"
+	InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_all.vsprops;.\DumpRenderTreeLauncherCommon.vsprops"
+	>
+</VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeDebugCairoCFLite"
+	InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops"
+	>
+</VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherProduction.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherProduction.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherProduction.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncherProduction"
+	InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\production.vsprops;.\DumpRenderTreeLauncherCommon.vsprops"
+	>
+</VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherRelease.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherRelease.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherRelease.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncherRelease"
+	InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\DumpRenderTreeLauncherCommon.vsprops"
+	>
+</VisualStudioPropertySheet>

Added: trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherReleaseCairoCFLite.vsprops (0 => 104187)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherReleaseCairoCFLite.vsprops	                        (rev 0)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTreeLauncherReleaseCairoCFLite.vsprops	2012-01-05 19:53:47 UTC (rev 104187)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+	ProjectType="Visual C++"
+	Version="8.00"
+	Name="DumpRenderTreeLauncherReleaseCairoCFLite"
+	InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\DumpRenderTreeLauncherCommon.vsprops"
+	>
+</VisualStudioPropertySheet>

Modified: trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp (104186 => 104187)


--- trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp	2012-01-05 19:46:39 UTC (rev 104186)
+++ trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp	2012-01-05 19:53:47 UTC (rev 104187)
@@ -123,6 +123,35 @@
     return 1;
 }
 
+static bool modifyPath(const wstring& programName)
+{
+    struct {
+        wstring softwareSubKey;
+        wstring productName;
+    } products[] = {
+        { L"Apple Inc.", L"Apple Application Support" },
+        { L"Apple Computer, Inc.", L"Safari" },
+    };
+
+    wstring pathPrefix;
+    for (size_t i = 0; i < _countof(products); ++i) {
+        wstring directory = applePathFromRegistry(L"SOFTWARE\\" + products[i].softwareSubKey + L"\\" + products[i].productName, L"InstallDir");
+        if (directory.empty()) {
+            fatalError(programName, L"Failed to determine path to " + products[i].productName + L" directory.");
+            return false;
+        }
+        if (i)
+            pathPrefix += L';';
+        pathPrefix += directory;
+    }
+
+    if (prependPath(pathPrefix))
+        return true;
+
+    fatalError(programName, L"Failed to modify PATH environment variable.");
+    return false;
+}
+
 #if USE_CONSOLE_ENTRY_POINT
 int main(int argc, const char* argv[])
 #else
@@ -140,11 +169,8 @@
 
     wstring programName = ::PathFindFileNameW(exePath);
 
-    wstring aasDirectory = appleApplicationSupportDirectory();
-    if (aasDirectory.empty())
-        return fatalError(programName, L"Failed to determine path to Apple Application Support directory.");
-    if (!prependPath(aasDirectory))
-        return fatalError(programName, L"Failed to modify PATH environment variable.");
+    if (!modifyPath(programName))
+        return 1;
 
     // Load our corresponding DLL.
     wstring dllName = programName + L".dll";
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to