Rework header copy in boost build

This commit is contained in:
Niels Martin Hansen 2015-01-18 03:47:58 +01:00
parent 2986932f31
commit 773b60c36c
1 changed files with 15 additions and 2 deletions

View File

@ -28,7 +28,20 @@
</ClCompile>
</ItemDefinitionGroup>
<Target Name="CopyHeaders" BeforeTargets="ClCompile">
<PropertyGroup>
<BuildGenerateSourcesTargets>
$(BuildGenerateSourcesTargets);
CopyBoostHeaders
</BuildGenerateSourcesTargets>
</PropertyGroup>
<!-- Have the target depend on the boost version.hpp file so it will usually
be skipped if the boost version hasn't changed since last build. -->
<Target
Name="CopyBoostHeaders"
Inputs="$(BoostPath)\libs\config\include\boost\version.hpp"
Outputs="$(AegisubSourceBase)include\boost\version.hpp"
>
<Message Importance="High" Text="Copy boost headers" />
<!-- All this cruft is to work around that despite what the documentation
claims, %(RecursiveDir) matches everything from the first * (not even
**) until the last / -->
@ -36,7 +49,7 @@
<BoostLibraries Include="$([System.IO.Directory]::GetDirectories(&quot;$(BoostPath)\libs&quot;))" />
<BoostIncludeDirs Include="%(BoostLibraries.Identity)\include\boost;$(BoostPath)\libs\numeric\conversion\include\boost" />
<Headers Include="%(BoostIncludeDirs.Identity)\**\*.*" />
</ItemGroup>
</ItemGroup>
<Copy
SourceFiles="@(Headers)"
DestinationFiles="@(Headers->'$(AegisubSourceBase)include\boost\%(RecursiveDir)%(Filename)%(Extension)')"