Commit 4c8cd0d3 authored by maruel@chromium.org's avatar maruel@chromium.org

Fix snapshot generation on Visual Studio. Compiling source files generated

inside the same project is flaky with VisualStudio when building with
Incredibuild.
So I splitted the mksnapshot.exe generation, snapshot.cc generation and
snapshot.cc compilation in three different projects.

Review URL: http://codereview.chromium.org/18770


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1176 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 1e98f72c
...@@ -20,6 +20,11 @@ v8_mksnapshot.vcproj ...@@ -20,6 +20,11 @@ v8_mksnapshot.vcproj
-------------------- --------------------
Executable v8_mksnapshot.exe for building a heap snapshot from a running V8. Executable v8_mksnapshot.exe for building a heap snapshot from a running V8.
v8_snapshot_cc.vcproj
---------------------
Uses v8_mksnapshot.exe to generate snapshot.cc, which is used in
v8_snapshot.vcproj.
v8_snapshot.vcproj v8_snapshot.vcproj
------------------ ------------------
V8 library containing all the V8 and JavaScript library code embedded as a heap V8 library containing all the V8 and JavaScript library code embedded as a heap
...@@ -40,7 +45,8 @@ in place: ...@@ -40,7 +45,8 @@ in place:
v8.vcproj depends on v8_base.vcproj v8.vcproj depends on v8_base.vcproj
v8_mksnapshot.vcproj depends on v8.vcproj v8_mksnapshot.vcproj depends on v8.vcproj
v8_snapshot.vcproj depends on v8_mksnapshot.vcproj and v8_base.vcproj v8_snapshot_cc.vcproj depends on v8_mksnapshot.vcproj
v8_snapshot.vcproj depends on v8_snapshot_cc.vcproj and v8_base.vcproj
A project which uses V8 should then depend on v8_snapshot.vcproj. A project which uses V8 should then depend on v8_snapshot.vcproj.
...@@ -51,6 +57,7 @@ Two sample project files are available as well. These are v8_shell_sample.vcproj ...@@ -51,6 +57,7 @@ Two sample project files are available as well. These are v8_shell_sample.vcproj
for building the sample in samples\shell.cc and v8_process_sample.vcproj for for building the sample in samples\shell.cc and v8_process_sample.vcproj for
building the sample in samples\process.cc. Add either of these (or both) to a building the sample in samples\process.cc. Add either of these (or both) to a
solution with v8_base, v8, v8_mksnapshot and v8_snapshot set up as described solution with v8_base, v8, v8_mksnapshot and v8_snapshot set up as described
solution with v8_base, v8, v8_mksnapshot and v8_snapshot set up as described
above and have them depend on v8_snapshot. above and have them depend on v8_snapshot.
Finally a sample Visual Studio solution file for is provided. This solution file Finally a sample Visual Studio solution file for is provided. This solution file
......
...@@ -14,7 +14,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "v8_mksnapshot", "v8_mksnaps ...@@ -14,7 +14,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "v8_mksnapshot", "v8_mksnaps
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "v8_snapshot", "v8_snapshot.vcproj", "{C0334F9A-1168-4101-9DD8-C30FB252D435}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "v8_snapshot", "v8_snapshot.vcproj", "{C0334F9A-1168-4101-9DD8-C30FB252D435}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
{865575D0-37E2-405E-8CBA-5F6C485B5A26} = {865575D0-37E2-405E-8CBA-5F6C485B5A26} {0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F} = {0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}
{EC8B7909-62AF-470D-A75D-E1D89C837142} = {EC8B7909-62AF-470D-A75D-E1D89C837142} {EC8B7909-62AF-470D-A75D-E1D89C837142} = {EC8B7909-62AF-470D-A75D-E1D89C837142}
EndProjectSection EndProjectSection
EndProject EndProject
...@@ -42,12 +42,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "d8", "d8.vcproj", "{7E4C7D2 ...@@ -42,12 +42,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "d8", "d8.vcproj", "{7E4C7D2
{C0334F9A-1168-4101-9DD8-C30FB252D435} = {C0334F9A-1168-4101-9DD8-C30FB252D435} {C0334F9A-1168-4101-9DD8-C30FB252D435} = {C0334F9A-1168-4101-9DD8-C30FB252D435}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "v8_snapshot_cc", "v8_snapshot_cc.vcproj", "{0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}"
ProjectSection(ProjectDependencies) = postProject
{865575D0-37E2-405E-8CBA-5F6C485B5A26} = {865575D0-37E2-405E-8CBA-5F6C485B5A26}
EndProjectSection
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32 Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32 Release|Win32 = Release|Win32
EndGlobalSection EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}.Debug|Win32.ActiveCfg = Debug|Win32
{0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}.Debug|Win32.Build.0 = Debug|Win32
{0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}.Release|Win32.ActiveCfg = Release|Win32
{0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}.Release|Win32.Build.0 = Release|Win32
{21E22961-22BF-4493-BD3A-868F93DA5179}.Debug|Win32.ActiveCfg = Debug|Win32 {21E22961-22BF-4493-BD3A-868F93DA5179}.Debug|Win32.ActiveCfg = Debug|Win32
{21E22961-22BF-4493-BD3A-868F93DA5179}.Debug|Win32.Build.0 = Debug|Win32 {21E22961-22BF-4493-BD3A-868F93DA5179}.Debug|Win32.Build.0 = Debug|Win32
{21E22961-22BF-4493-BD3A-868F93DA5179}.Release|Win32.ActiveCfg = Release|Win32 {21E22961-22BF-4493-BD3A-868F93DA5179}.Release|Win32.ActiveCfg = Release|Win32
......
...@@ -125,58 +125,17 @@ ...@@ -125,58 +125,17 @@
<Files> <Files>
<Filter <Filter
Name="generated files" Name="generated files"
SourceControlFiles="false"
> >
<File <File
RelativePath="$(IntDir)\..\v8\DerivedSources\natives-empty.cc" RelativePath="$(IntDir)\..\v8\DerivedSources\natives-empty.cc"
> >
</File> </File>
<File <File
RelativePath="$(IntDir)\DerivedSources\snapshot.cc" RelativePath="$(IntDir)\..\v8_snapshot_cc\DerivedSources\snapshot.cc"
> >
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="$(SolutionDir)..\v8\src"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="$(SolutionDir)..\v8\src"
/>
</FileConfiguration>
</File> </File>
</Filter> </Filter>
<File
RelativePath="$(OutDir)\v8_mksnapshot.exe"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Building snapshot..."
CommandLine="&quot;$(OutDir)\v8_mksnapshot.exe&quot; &quot;$(IntDir)\DerivedSources\snapshot.cc&quot;&#x0D;&#x0A;"
AdditionalDependencies="$(OutDir)\v8_mksnapshot.exe"
Outputs="$(IntDir)\DerivedSources\snapshot.cc"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Building snapshot..."
CommandLine="&quot;$(OutDir)\v8_mksnapshot.exe&quot; &quot;$(IntDir)\DerivedSources\snapshot.cc&quot;&#x0D;&#x0A;"
AdditionalDependencies="$(OutDir)\v8_mksnapshot.exe"
Outputs="$(IntDir)\DerivedSources\snapshot.cc"
/>
</FileConfiguration>
</File>
</Files> </Files>
<Globals> <Globals>
</Globals> </Globals>
......
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="v8_snapshot_cc"
ProjectGUID="{0DDBDA8B-A49F-4CC7-A1D5-5BB8297C8A3F}"
RootNamespace="v8_snapshot_cc"
Keyword="Win32Proj"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="10"
InheritedPropertySheets=".\common.vsprops;.\debug.vsprops"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="10"
InheritedPropertySheets=".\common.vsprops;.\release.vsprops"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="generated files"
SourceControlFiles="false"
>
<File
RelativePath="$(OutDir)\v8_mksnapshot.exe"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Building snapshot..."
CommandLine="&quot;$(OutDir)\v8_mksnapshot.exe&quot; &quot;$(IntDir)\DerivedSources\snapshot.cc&quot;&#x0D;&#x0A;"
AdditionalDependencies="$(OutDir)\v8_mksnapshot.exe"
Outputs="$(IntDir)\DerivedSources\snapshot.cc"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Building snapshot..."
CommandLine="&quot;$(OutDir)\v8_mksnapshot.exe&quot; &quot;$(IntDir)\DerivedSources\snapshot.cc&quot;&#x0D;&#x0A;"
AdditionalDependencies="$(OutDir)\v8_mksnapshot.exe"
Outputs="$(IntDir)\DerivedSources\snapshot.cc"
/>
</FileConfiguration>
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment