diff options
Diffstat (limited to 'binplace.targets')
-rw-r--r-- | binplace.targets | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/binplace.targets b/binplace.targets index 6621c721c8..6f3d155784 100644 --- a/binplace.targets +++ b/binplace.targets @@ -11,7 +11,7 @@ <BinPlaceStuffDependsOn Condition="'$(IsRuntimeAssembly)' == 'true' OR '$(IsRuntimeAndReferenceAssembly)' == 'true'">$(BinPlaceStuffDependsOn);BinPlaceRuntimeAssembly</BinPlaceStuffDependsOn> </PropertyGroup> - <ItemGroup> + <ItemGroup Condition="'@(BinplaceConfiguration)' == ''"> <BinplaceConfiguration Include="$(BuildConfiguration)"> <RefPath>$(BuildConfigurationRefPath)</RefPath> <RuntimePath>$(RuntimePath)</RuntimePath> @@ -31,22 +31,28 @@ <Message Importance="low" Text="IsRuntimeAndReferenceAssembly: $(IsRuntimeAndReferenceAssembly)" /> </Target> - <Target Name="BinPlaceReferenceAssembly" DependsOnTargets="GetBinplaceDirs"> + <Target Name="BinPlaceReferenceAssembly" DependsOnTargets="GetBinplaceDirs;GetBinplaceItems"> <Message Importance="low" Text="TargetingPackDir: @(TargetingPackDir)" /> - <Copy Condition="'@(TargetingPackDir)' != ''" SourceFiles="$(TargetPath)" DestinationFolder="%(TargetingPackDir.Identity)" > + <Copy Condition="'@(TargetingPackDir)' != ''" SourceFiles="@(BinplaceItem)" DestinationFolder="%(TargetingPackDir.Identity)" > <Output TaskParameter="DestinationFiles" ItemName="FileWrites" /> </Copy> </Target> - <Target Name="BinPlaceRuntimeAssembly" DependsOnTargets="GetBinplaceDirs"> - <Copy Condition="'@(RuntimeDir)' != ''" SourceFiles="$(TargetPath)" DestinationFolder="%(RuntimeDir.Identity)"> - <Output TaskParameter="DestinationFiles" ItemName="FileWrites" /> - </Copy> - <Copy Condition="'@(RuntimeDir)' != '' And Exists($(TargetPath.Replace('.dll', '.pdb')))" SourceFiles="$(TargetPath.Replace('.dll', '.pdb'))" DestinationFolder="%(RuntimeDir.Identity)"> + <Target Name="BinPlaceRuntimeAssembly" DependsOnTargets="GetBinplaceDirs;GetBinplaceItems"> + <Copy Condition="'@(RuntimeDir)' != ''" SourceFiles="@(BinplaceItem)" DestinationFolder="%(RuntimeDir.Identity)"> <Output TaskParameter="DestinationFiles" ItemName="FileWrites" /> </Copy> </Target> + <Target Name="GetBinplaceItems" DependsOnTargets="GetCopyToOutputDirectoryItems"> + <ItemGroup> + <BinplaceItem Condition="Exists('$(TargetPath)')" Include="$(TargetPath)" /> + <BinplaceItem Condition="Exists('$(TargetDir)$(TargetName).pdb')" Include="$(TargetDir)$(TargetName).pdb" /> + <BinplaceItem Condition="'$(BinplaceReferenceCopyLocalPaths)' != 'false'" Include="@(ReferenceCopyLocalPaths)" /> + <BinplaceItem Condition="'$(BinplaceCopyToOutputDirectoryItems)' != 'false'" Include="@(AllItemsFullPathWithTargetPath)" /> + </ItemGroup> + </Target> + <Target Name="GetBinplaceDirs" DependsOnTargets="GetBuildConfigurations"> <!-- find which, if any, build configuration of this project is best for each binplace configuration --> |