blob: f9f53332b316b6d9e0f811b0634fa7674d342aa4 [file] [log] [blame]
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(VCTargetsPath)\NaCl\ImportBefore\*.targets" Condition="Exists('$(VCTargetsPath)\NaCl\ImportBefore')" />
<Import Project="$(VCTargetsPath)\Microsoft.CppCommon.targets" />
<UsingTask TaskName="NaClCompile" AssemblyFile="$(VCTargetsPath)\NaCl\NaCl.Build.CPPTasks.dll" />
<UsingTask TaskName="NaClLink" AssemblyFile="$(VCTargetsPath)\NaCl\NaCl.Build.CPPTasks.dll" />
<UsingTask TaskName="NaClLib" AssemblyFile="$(VCTargetsPath)\NaCl\NaCl.Build.CPPTasks.dll" />
<UsingTask TaskName="VCMessage" AssemblyName="Microsoft.Build.CppTasks.Common, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<PropertyGroup>
<!-- Enable incremental build by enable file tracking in tasks-->
<TrackFileAccess Condition="'$(TrackFileAccess)' == ''">true</TrackFileAccess>
</PropertyGroup>
<!-- *******************************************************************************************
CLCompile
******************************************************************************************* -->
<Target Name="ClCompile"
Condition="'@(ClCompile)' != ''"
DependsOnTargets="SelectClCompile">
<NaClCompile Condition="'%(ClCompile.ExcludedFromBuild)'!='true'"
BuildingInIDE ="$(BuildingInsideVisualStudio)"
Sources ="@(ClCompile)"
OutputCommandLine ="%(ClCompile.OutputCommandLine)"
ProcessorNumber ="%(ClCompile.ProcessorNumber)"
MultiProcessorCompilation ="%(ClCompile.MultiProcessorCompilation)"
MinimalRebuildFromTracking ="%(ClCompile.MinimalRebuildFromTracking)"
NaCLCompilerPath ="$(VSNaClSDKRoot)toolchain\win_x86_pnacl\newlib\bin\pnacl-clang.bat"
PropertiesFile ="$(VCTargetsPath)\NaCl\Props\nacl_compile.xml"
TLogReadFiles ="@(CLTLogReadFiles)"
TLogWriteFiles ="@(CLTLogWriteFiles)"
Platform ="$(Platform)"
TrackFileAccess ="$(TrackFileAccess)"
TrackerLogDirectory ="%(ClCompile.TrackerLogDirectory)"
ConfigurationType ="$(ConfigurationType)">
</NaClCompile>
</Target>
<!-- *******************************************************************************************
Link
******************************************************************************************* -->
<Target Name="Link"
Condition="'@(Link)' != ''">
<PropertyGroup>
<Link_MinimalRebuildFromTracking Condition="'@(Link->AnyHaveMetadataValue('MinimalRebuildFromTracking', 'false'))' == 'true'">false</Link_MinimalRebuildFromTracking>
<Link_MinimalRebuildFromTracking Condition="'$(BuildType)' != 'Build' or '$(ForceRebuild)' == 'true'" >false</Link_MinimalRebuildFromTracking>
<Link_MinimalRebuildFromTracking Condition="'$(Link_MinimalRebuildFromTracking)' == ''">true</Link_MinimalRebuildFromTracking>
</PropertyGroup>
<NaClLink BuildingInIDE ="$(BuildingInsideVisualStudio)"
Sources ="@(Link)"
OutputCommandLine ="%(Link.OutputCommandLine)"
NaClLinkerPath ="$(VSNaClSDKRoot)toolchain\win_x86_pnacl\newlib\bin\pnacl-clang++.bat"
CreateNMFPath ="$(VSNaClSDKRoot)tools\create_nmf.py"
MinimalRebuildFromTracking ="$(Link_MinimalRebuildFromTracking)"
OutputFile ="%(Link.OutputFile)"
PropertiesFile ="$(VCTargetsPath)\NaCl\Props\pnacl_link.xml"
TLogReadFiles ="@(LinkTLogReadFiles)"
TLogWriteFiles ="@(LinkTLogWriteFiles)"
ToolchainName ="$(ToolchainName)"
CreateNMF ="%(Link.CreateNMF)"
ProjectName ="$(ProjectName)"
Platform ="$(Platform)"
TranslateX86 ="%(Link.TranslateX86)"
TranslateX64 ="%(Link.TranslateX64)"
TranslateARM ="%(Link.TranslateARM)"
TrackFileAccess ="$(TrackFileAccess)"
TrackerLogDirectory ="%(Link.TrackerLogDirectory)"
ConfigurationType ="$(ConfigurationType)">
<Output TaskParameter="SkippedExecution" PropertyName="LinkSkippedExecution" />
</NaClLink>
<Message Condition="'$(LinkSkippedExecution)' == 'false'" Text="$(MSBuildProjectFile) -&gt; $(TargetPath)" Importance="High" />
</Target>
<!-- *******************************************************************************************
Lib
******************************************************************************************* -->
<!-- Lib script based on: MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets -->
<Target Name="Lib"
Condition="'@(Lib)' != ''">
<ItemGroup>
<Lib>
<MinimalRebuildFromTracking Condition="'%(Lib.MinimalRebuildFromTracking)' == '' and '$(BuildType)' == 'Build' and '$(ForceRebuild)' != 'true'">true</MinimalRebuildFromTracking>
</Lib>
</ItemGroup>
<NaClLib BuildingInIDE ="$(BuildingInsideVisualStudio)"
Sources ="@(Lib)"
OutputCommandLine ="%(Lib.OutputCommandLine)"
LibrarianToolPath ="$(VSNaClSDKRoot)toolchain\win_x86_pnacl\newlib\bin\pnacl-ar.bat"
MinimalRebuildFromTracking ="%(Lib.MinimalRebuildFromTracking)"
OutputFile ="%(Lib.OutputFile)"
PropertiesFile ="$(VCTargetsPath)\NaCl\Props\nacl_lib.xml"
TrackerLogDirectory ="%(Lib.TrackerLogDirectory)"
TLogReadFiles ="@(LIBTLogReadFiles)"
TLogWriteFiles ="@(LIBTLogWriteFiles)"
Platform ="$(Platform)"
TrackFileAccess ="$(TrackFileAccess)">
<Output TaskParameter="SkippedExecution" PropertyName="LibSkippedExecution" />
</NaClLib>
<Message Condition="'$(LibSkippedExecution)' == 'false'" Text="$(MSBuildProjectFile) -&gt; $(TargetPath)" Importance="High" />
</Target>
<!-- Imports -->
<Import Project="$(VCTargetsPath)\NaCl\NaCl.CppBuild.targets" />
<Import Project="$(VCTargetsPath)\NaCl\PlatformToolsets\win_x86_newlib\Microsoft.Cpp.NaCl.win_x86_newlib.targets" Condition="'pnacl' == 'newlib' AND (exists('$(VCTargetsPath)\NaCl\PlatformToolsets\win_x86_newlib\Microsoft.Cpp.NaCl.win_x86_newlib.targets'))" />
<Import Project="$(VCTargetsPath)\NaCl\PlatformToolsets\win_x86_glibc\Microsoft.Cpp.NaCl.win_x86_glibc.targets" Condition="'$(ToolchainName)' == 'glibc' AND (exists('$(VCTargetsPath)\NaCl\PlatformToolsets\win_x86_glibc\Microsoft.Cpp.NaCl.win_x86_glibc.targets'))" />
</Project>