﻿<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_$(ToolchainName)\bin\$(TargetArchitecture)-nacl-gcc.exe"
                 PropertiesFile                     ="$(VCTargetsPath)\NaCl\Props\nacl_compile.xml"
                 TLogReadFiles                      ="@(CLTLogReadFiles)"
                 TLogWriteFiles                     ="@(CLTLogWriteFiles)"
                 ToolExe                            ="$(CLToolExe)"
                 ToolPath                           ="$(CLToolPath)"
                 TrackFileAccess                    ="$(TrackFileAccess)"
                 TrackerLogDirectory                ="%(ClCompile.TrackerLogDirectory)">
    </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_$(ToolchainName)\bin\$(TargetArchitecture)-nacl-g++.exe"
              MinimalRebuildFromTracking     ="$(Link_MinimalRebuildFromTracking)"
              OutputFile                     ="%(Link.OutputFile)"
              PropertiesFile                 ="$(VCTargetsPath)\NaCl\Props\nacl_link.xml"
              TLogReadFiles                  ="@(LinkTLogReadFiles)"
              TLogWriteFiles                 ="@(LinkTLogWriteFiles)"
              ToolExe                        ="$(LinkToolExe)"
              ToolPath                       ="$(LinkToolPath)"
              TrackerLogDirectory            ="%(Link.TrackerLogDirectory)"
              TrackFileAccess                ="$(TrackFileAccess)"
        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_$(ToolchainName)\bin\$(TargetArchitecture)-nacl-ar.exe"
             MinimalRebuildFromTracking     ="%(Lib.MinimalRebuildFromTracking)"
             OutputFile                     ="%(Lib.OutputFile)"
             PropertiesFile                 ="$(VCTargetsPath)\NaCl\Props\nacl_lib.xml"
             TrackerLogDirectory            ="%(Lib.TrackerLogDirectory)"
             TLogReadFiles                  ="@(LIBTLogReadFiles)"
             TLogWriteFiles                 ="@(LIBTLogWriteFiles)"
             ToolExe                        ="$(LIBToolExe)"
             ToolPath                       ="$(LIBToolPath)"
             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="'$(ToolchainName)' == '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>
