]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - JavaScriptCore.vcxproj/JavaScriptCore.proj
JavaScriptCore-7600.1.4.9.tar.gz
[apple/javascriptcore.git] / JavaScriptCore.vcxproj / JavaScriptCore.proj
diff --git a/JavaScriptCore.vcxproj/JavaScriptCore.proj b/JavaScriptCore.vcxproj/JavaScriptCore.proj
new file mode 100644 (file)
index 0000000..6b3f971
--- /dev/null
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project InitialTargets="PreBuild" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+\r
+  <!-- normalize configuration case -->\r
+  <PropertyGroup Condition="'$(CONFIGURATION)'=='Release'">\r
+       <CONFIG>Production</CONFIG>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(CONFIGURATION)'=='Debug'">\r
+       <CONFIG>DebugSuffix</CONFIG>\r
+  </PropertyGroup>\r
+\r
+  <!-- Wrapper to build JavaScriptCore for both win32 and x64. -->\r
+  <PropertyGroup>\r
+    <OFFICIAL_BUILD>1</OFFICIAL_BUILD>\r
+    <WebKit_Libraries>$(SRCROOT)\AppleInternal</WebKit_Libraries>\r
+    <WebKit_OutputDir>$(OBJROOT)</WebKit_OutputDir>\r
+    <AppleInternal>$(DSTROOT)\AppleInternal</AppleInternal>\r
+    <AppleInternalLib32>$(AppleInternal)\lib32</AppleInternalLib32>\r
+    <AppleInternalLib64>$(AppleInternal)\lib64</AppleInternalLib64>\r
+    <AppleInternalBin32>$(AppleInternal)\bin32</AppleInternalBin32>\r
+    <AppleInternalBin64>$(AppleInternal)\bin64</AppleInternalBin64>\r
+    <AppleInternal32Symbols>$(AppleInternal)\public32\sym</AppleInternal32Symbols>\r
+    <AppleInternal64Symbols>$(AppleInternal)\public64\sym</AppleInternal64Symbols>\r
+    <ProgramFilesAAS32>Program Files (x86)\Common Files\Apple\Apple Application Support</ProgramFilesAAS32>\r
+    <ProgramFilesAAS64>Program Files\Common Files\Apple\Apple Application Support</ProgramFilesAAS64>\r
+    <ConfigurationBuildDir>$(OBJROOT)\$(CONFIG)</ConfigurationBuildDir>  \r
+    <OutputDirectory>$(DSTROOT)</OutputDirectory>\r
+  </PropertyGroup>\r
+\r
+  <ItemGroup>\r
+    <JavaScriptCore Include="JavaScriptCore.submit.sln">\r
+      <AdditionalProperties>Platform=Win32;WEBKIT_OUTPUTDIR=$(WebKit_OutputDir);WEBKIT_LIBRARIES=$(WebKit_Libraries);OFFICIAL_BUILD=$(OFFICIAL_BUILD)</AdditionalProperties>\r
+    </JavaScriptCore>\r
+    <JavaScriptCore Include="JavaScriptCore.submit.sln">\r
+      <AdditionalProperties>Platform=x64;WEBKIT_OUTPUTDIR=$(WebKit_OutputDir);WEBKIT_LIBRARIES=$(WebKit_Libraries);OFFICIAL_BUILD=$(OFFICIAL_BUILD)</AdditionalProperties>\r
+    </JavaScriptCore>\r
+  </ItemGroup>\r
\r
+  <!-- Prepare for build -->\r
+  <Target Name="PreBuild" BeforeTargets="Build">\r
+    <Error Text="DSTROOT property or environment variable must be defined." Condition="'$(DSTROOT)' == ''" />\r
+    <Error Text="OBJROOT property or environment variable must be defined." Condition="'$(OBJROOT)' == ''" />\r
+    <Message Text="Copying necessary headers to $(ConfigurationBuildDir)" />\r
+    <MakeDir Directories="$(DSTROOT);$(OBJROOT);$(ConfigurationBuildDir)\include\private" />\r
\r
+    <CreateItem Include="$(WebKit_Libraries)\include\private\**\*.*">\r
+      <Output TaskParameter="Include" ItemName="PrivateIncFiles" />\r
+    </CreateItem>\r
+\r
+    <Copy SourceFiles="@(PrivateIncFiles)" DestinationFiles="@(PrivateIncFiles->'$(ConfigurationBuildDir)\include\private\%(RecursiveDir)%(Filename)%(Extension)')" />\r
+    <Message Text="Build output -> $(OBJROOT)" />\r
+    <Message Text="Final output -> $(DSTROOT)" />\r
+    <MakeDir Directories="$(AppleInternalLib32);$(AppleInternalLib64);$(AppleInternalBin32);$(AppleInternalBin64);$(AppleInternal32Symbols);$(AppleInternal64Symbols);$(AppleInternal)\include;$(DSTROOT)\$(ProgramFilesAAS32);$(DSTROOT)\$(ProgramFilesAAS64)" />\r
+    <MakeDir Directories="$(DSTROOT)\$(ProgramFilesAAS32)\JavaScriptCore.resources;$(DSTROOT)\$(ProgramFilesAAS64)\JavaScriptCore.resources" />\r
+    <MakeDir Directories="$(DSTROOT)\AppleInternal\Sources32\JavaScriptCore;$(DSTROOT)\AppleInternal\Sources64\JavaScriptCore" />\r
+  </Target>\r
+\r
+  <!-- Build JavaScriptCore Software -->\r
+  <Target Name="Build" AfterTargets="PreBuild">\r
+    <Message Text="Building $(CONFIGURATION) Solution" />\r
+    <Error Text="DSTROOT property or environment variable must be defined." Condition="'$(DSTROOT)' == ''" />\r
+    <Message Text="Output=$(WebKit_OutputDir)" />\r
+    <MSBuild Projects="@(JavaScriptCore)" Properties="Configuration=$(CONFIG)" Targets="ReBuild" />\r
+  </Target>\r
+\r
+  <Target Name="PostBuild" AfterTargets="Build">\r
+    <Error Text="DSTROOT property or environment variable must be defined." Condition="'$(DSTROOT)' == ''" />\r
+    <Message Text="Moving $(CONFIG) build results to $(DSTROOT)" />\r
+\r
+    <!-- Identify the files to copy over -->\r
+    <CreateItem Include="$(ConfigurationBuildDir)\include\**\*.*">\r
+      <Output TaskParameter="Include" ItemName="IncFiles" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\bin32\*">\r
+      <Output TaskParameter="Include" ItemName="Bin32Files" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\bin64\*">\r
+      <Output TaskParameter="Include" ItemName="Bin64Files" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\bin32\*.pdb">\r
+      <Output TaskParameter="Include" ItemName="Bin32SymbolFiles" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\bin64\*.pdb">\r
+      <Output TaskParameter="Include" ItemName="Bin64SymbolFiles" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\bin32\JavaScriptCore.resources\**\*.*">\r
+      <Output TaskParameter="Include" ItemName="Bin32Resources" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\bin64\JavaScriptCore.resources\**\*.*">\r
+      <Output TaskParameter="Include" ItemName="Bin64Resources" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\lib32\*">\r
+      <Output TaskParameter="Include" ItemName="Lib32Files" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\lib64\*">\r
+      <Output TaskParameter="Include" ItemName="Lib64Files" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\obj32\JavaScriptCore\DerivedSources\**\*.*">\r
+      <Output TaskParameter="Include" ItemName="Derived32Sources" />\r
+    </CreateItem>\r
+    <CreateItem Include="$(ConfigurationBuildDir)\obj64\JavaScriptCore\DerivedSources\**\*.*">\r
+      <Output TaskParameter="Include" ItemName="Derived64Sources" />\r
+    </CreateItem>\r
+\r
+    <Copy SourceFiles="@(IncFiles)" DestinationFiles="@(IncFiles->'$(DSTROOT)\AppleInternal\include\%(RecursiveDir)%(Filename)%(Extension)')" />\r
+    <Copy SourceFiles="@(Lib32Files)" DestinationFolder="$(AppleInternalLib32)" />\r
+    <Copy SourceFiles="@(Lib64Files)" DestinationFolder="$(AppleInternalLib64)" />\r
+    <Copy SourceFiles="@(Bin32Files)" DestinationFolder="$(AppleInternalBin32)" />\r
+    <Copy SourceFiles="@(Bin32Files)" DestinationFolder="$(DSTROOT)\$(ProgramFilesAAS32)" />\r
+    <Copy SourceFiles="@(Bin32SymbolFiles)" DestinationFolder="$(AppleInternal32Symbols)" />\r
+    <Copy SourceFiles="@(Bin32Resources)" DestinationFiles="@(Bin32Resources->'$(DSTROOT)\$(ProgramFilesAAS32)\JavaScriptCore.resources\%(RecursiveDir)%(Filename)%(Extension)')" />\r
+    <Copy SourceFiles="@(Bin64Files)" DestinationFolder="$(AppleInternalBin64)" />\r
+    <Copy SourceFiles="@(Bin64Files)" DestinationFolder="$(DSTROOT)\$(ProgramFilesAAS64)" />\r
+    <Copy SourceFiles="@(Bin64SymbolFiles)" DestinationFolder="$(AppleInternal64Symbols)" />\r
+    <Copy SourceFiles="@(Bin64Resources)" DestinationFiles="@(Bin64Resources->'$(DSTROOT)\$(ProgramFilesAAS64)\JavaScriptCore.resources\%(RecursiveDir)%(Filename)%(Extension)')" />\r
+    <Copy SourceFiles="@(Derived32Sources)" DestinationFiles="@(Derived32Sources->'$(DSTROOT)\AppleInternal\Sources32\JavaScriptCore\%(RecursiveDir)%(Filename)%(Extension)')" />\r
+    <Copy SourceFiles="@(Derived64Sources)" DestinationFiles="@(Derived64Sources->'$(DSTROOT)\AppleInternal\Sources64\JavaScriptCore\%(RecursiveDir)%(Filename)%(Extension)')" />\r
+  </Target>\r
+\r
+</Project>\r
+\r