1 <?xml version=
"1.0" encoding=
"utf-8"?>
2 <Project InitialTargets=
"PreBuild" DefaultTargets=
"Build" xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003">
4 <!-- normalize configuration case -->
5 <PropertyGroup Condition=
"'$(CONFIGURATION)'=='Release'">
6 <CONFIG>Production
</CONFIG>
8 <PropertyGroup Condition=
"'$(CONFIGURATION)'=='Debug'">
9 <CONFIG>DebugSuffix
</CONFIG>
12 <!-- Wrapper to build JavaScriptCore for both win32 and x64. -->
14 <OFFICIAL_BUILD>1</OFFICIAL_BUILD>
15 <WebKit_Libraries>$(SRCROOT)\AppleInternal
</WebKit_Libraries>
16 <WebKit_OutputDir>$(OBJROOT)
</WebKit_OutputDir>
17 <AppleInternal>$(DSTROOT)\AppleInternal
</AppleInternal>
18 <AppleInternalLib32>$(AppleInternal)\lib32
</AppleInternalLib32>
19 <AppleInternalLib64>$(AppleInternal)\lib64
</AppleInternalLib64>
20 <AppleInternalBin32>$(AppleInternal)\bin32
</AppleInternalBin32>
21 <AppleInternalBin64>$(AppleInternal)\bin64
</AppleInternalBin64>
22 <AppleInternal32Symbols>$(AppleInternal)\public32\sym
</AppleInternal32Symbols>
23 <AppleInternal64Symbols>$(AppleInternal)\public64\sym
</AppleInternal64Symbols>
24 <ProgramFilesAAS32>Program Files (x86)\Common Files\Apple\Apple Application Support
</ProgramFilesAAS32>
25 <ProgramFilesAAS64>Program Files\Common Files\Apple\Apple Application Support
</ProgramFilesAAS64>
26 <ConfigurationBuildDir>$(OBJROOT)\$(CONFIG)
</ConfigurationBuildDir>
27 <OutputDirectory>$(DSTROOT)
</OutputDirectory>
31 <JavaScriptCore Include=
"JavaScriptCore.submit.sln">
32 <AdditionalProperties>Platform=Win32;WEBKIT_OUTPUTDIR=$(WebKit_OutputDir);WEBKIT_LIBRARIES=$(WebKit_Libraries);OFFICIAL_BUILD=$(OFFICIAL_BUILD)
</AdditionalProperties>
34 <JavaScriptCore Include=
"JavaScriptCore.submit.sln">
35 <AdditionalProperties>Platform=x64;WEBKIT_OUTPUTDIR=$(WebKit_OutputDir);WEBKIT_LIBRARIES=$(WebKit_Libraries);OFFICIAL_BUILD=$(OFFICIAL_BUILD)
</AdditionalProperties>
39 <!-- Prepare for build -->
40 <Target Name=
"PreBuild" BeforeTargets=
"Build">
41 <Error Text=
"DSTROOT property or environment variable must be defined." Condition=
"'$(DSTROOT)' == ''" />
42 <Error Text=
"OBJROOT property or environment variable must be defined." Condition=
"'$(OBJROOT)' == ''" />
43 <Message Text=
"Copying necessary headers to $(ConfigurationBuildDir)" />
44 <MakeDir Directories=
"$(DSTROOT);$(OBJROOT);$(ConfigurationBuildDir)\include\private" />
46 <CreateItem Include=
"$(WebKit_Libraries)\include\private\**\*.*">
47 <Output TaskParameter=
"Include" ItemName=
"PrivateIncFiles" />
50 <Copy SourceFiles=
"@(PrivateIncFiles)" DestinationFiles=
"@(PrivateIncFiles->'$(ConfigurationBuildDir)\include\private\%(RecursiveDir)%(Filename)%(Extension)')" />
51 <Message Text=
"Build output -> $(OBJROOT)" />
52 <Message Text=
"Final output -> $(DSTROOT)" />
53 <MakeDir Directories=
"$(AppleInternalLib32);$(AppleInternalLib64);$(AppleInternalBin32);$(AppleInternalBin64);$(AppleInternal32Symbols);$(AppleInternal64Symbols);$(AppleInternal)\include;$(DSTROOT)\$(ProgramFilesAAS32);$(DSTROOT)\$(ProgramFilesAAS64)" />
54 <MakeDir Directories=
"$(DSTROOT)\$(ProgramFilesAAS32)\JavaScriptCore.resources;$(DSTROOT)\$(ProgramFilesAAS64)\JavaScriptCore.resources" />
55 <MakeDir Directories=
"$(DSTROOT)\AppleInternal\Sources32\JavaScriptCore;$(DSTROOT)\AppleInternal\Sources64\JavaScriptCore" />
58 <!-- Build JavaScriptCore Software -->
59 <Target Name=
"Build" AfterTargets=
"PreBuild">
60 <Message Text=
"Building $(CONFIGURATION) Solution" />
61 <Error Text=
"DSTROOT property or environment variable must be defined." Condition=
"'$(DSTROOT)' == ''" />
62 <Message Text=
"Output=$(WebKit_OutputDir)" />
63 <MSBuild Projects=
"@(JavaScriptCore)" Properties=
"Configuration=$(CONFIG)" Targets=
"ReBuild" />
66 <Target Name=
"PostBuild" AfterTargets=
"Build">
67 <Error Text=
"DSTROOT property or environment variable must be defined." Condition=
"'$(DSTROOT)' == ''" />
68 <Message Text=
"Moving $(CONFIG) build results to $(DSTROOT)" />
70 <!-- Identify the files to copy over -->
71 <CreateItem Include=
"$(ConfigurationBuildDir)\include\**\*.*">
72 <Output TaskParameter=
"Include" ItemName=
"IncFiles" />
74 <CreateItem Include=
"$(ConfigurationBuildDir)\bin32\*">
75 <Output TaskParameter=
"Include" ItemName=
"Bin32Files" />
77 <CreateItem Include=
"$(ConfigurationBuildDir)\bin64\*">
78 <Output TaskParameter=
"Include" ItemName=
"Bin64Files" />
80 <CreateItem Include=
"$(ConfigurationBuildDir)\bin32\*.pdb">
81 <Output TaskParameter=
"Include" ItemName=
"Bin32SymbolFiles" />
83 <CreateItem Include=
"$(ConfigurationBuildDir)\bin64\*.pdb">
84 <Output TaskParameter=
"Include" ItemName=
"Bin64SymbolFiles" />
86 <CreateItem Include=
"$(ConfigurationBuildDir)\bin32\JavaScriptCore.resources\**\*.*">
87 <Output TaskParameter=
"Include" ItemName=
"Bin32Resources" />
89 <CreateItem Include=
"$(ConfigurationBuildDir)\bin64\JavaScriptCore.resources\**\*.*">
90 <Output TaskParameter=
"Include" ItemName=
"Bin64Resources" />
92 <CreateItem Include=
"$(ConfigurationBuildDir)\lib32\*">
93 <Output TaskParameter=
"Include" ItemName=
"Lib32Files" />
95 <CreateItem Include=
"$(ConfigurationBuildDir)\lib64\*">
96 <Output TaskParameter=
"Include" ItemName=
"Lib64Files" />
98 <CreateItem Include=
"$(ConfigurationBuildDir)\obj32\JavaScriptCore\DerivedSources\**\*.*">
99 <Output TaskParameter=
"Include" ItemName=
"Derived32Sources" />
101 <CreateItem Include=
"$(ConfigurationBuildDir)\obj64\JavaScriptCore\DerivedSources\**\*.*">
102 <Output TaskParameter=
"Include" ItemName=
"Derived64Sources" />
105 <Copy SourceFiles=
"@(IncFiles)" DestinationFiles=
"@(IncFiles->'$(DSTROOT)\AppleInternal\include\%(RecursiveDir)%(Filename)%(Extension)')" />
106 <Copy SourceFiles=
"@(Lib32Files)" DestinationFolder=
"$(AppleInternalLib32)" />
107 <Copy SourceFiles=
"@(Lib64Files)" DestinationFolder=
"$(AppleInternalLib64)" />
108 <Copy SourceFiles=
"@(Bin32Files)" DestinationFolder=
"$(AppleInternalBin32)" />
109 <Copy SourceFiles=
"@(Bin32Files)" DestinationFolder=
"$(DSTROOT)\$(ProgramFilesAAS32)" />
110 <Copy SourceFiles=
"@(Bin32SymbolFiles)" DestinationFolder=
"$(AppleInternal32Symbols)" />
111 <Copy SourceFiles=
"@(Bin32Resources)" DestinationFiles=
"@(Bin32Resources->'$(DSTROOT)\$(ProgramFilesAAS32)\JavaScriptCore.resources\%(RecursiveDir)%(Filename)%(Extension)')" />
112 <Copy SourceFiles=
"@(Bin64Files)" DestinationFolder=
"$(AppleInternalBin64)" />
113 <Copy SourceFiles=
"@(Bin64Files)" DestinationFolder=
"$(DSTROOT)\$(ProgramFilesAAS64)" />
114 <Copy SourceFiles=
"@(Bin64SymbolFiles)" DestinationFolder=
"$(AppleInternal64Symbols)" />
115 <Copy SourceFiles=
"@(Bin64Resources)" DestinationFiles=
"@(Bin64Resources->'$(DSTROOT)\$(ProgramFilesAAS64)\JavaScriptCore.resources\%(RecursiveDir)%(Filename)%(Extension)')" />
116 <Copy SourceFiles=
"@(Derived32Sources)" DestinationFiles=
"@(Derived32Sources->'$(DSTROOT)\AppleInternal\Sources32\JavaScriptCore\%(RecursiveDir)%(Filename)%(Extension)')" />
117 <Copy SourceFiles=
"@(Derived64Sources)" DestinationFiles=
"@(Derived64Sources->'$(DSTROOT)\AppleInternal\Sources64\JavaScriptCore\%(RecursiveDir)%(Filename)%(Extension)')" />