Files
StandardSence/Directory.Build.targets
T

54 lines
3.1 KiB
XML
Raw Normal View History

<Project>
<!--
StandardScene 插件工程编译后,自动将产物复制到 build\plugins\SimpleComposer / SimpleLite 宿主加载目录)。
适用:StandardScene.Core + Magnetic / QrLidar / Devices / Protocol.VDA5050 / Signal 等卫星插件。
-->
<PropertyGroup>
<StandardSceneRepoRoot>$(MSBuildThisFileDirectory)</StandardSceneRepoRoot>
<StandardScenePluginsDir>$(StandardSceneRepoRoot)build\plugins</StandardScenePluginsDir>
<IsStandardScenePluginCopy>false</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition="'$(MSBuildProjectName)' == 'StandardScene.Core'">true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition="'$(MSBuildProjectName)' == 'StandardScene.Magnetic'">true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition="'$(MSBuildProjectName)' == 'StandardScene.QrLidar'">true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition="'$(MSBuildProjectName)' == 'StandardScene.Devices'">true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition="'$(MSBuildProjectName)' == 'StandardScene.Protocol.VDA5050'">true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition="'$(MSBuildProjectName)' == 'StandardScene.Signal'">true</IsStandardScenePluginCopy>
</PropertyGroup>
<Target Name="CopyStandardScenePluginOutputs"
AfterTargets="Build"
Condition="'$(IsStandardScenePluginCopy)' == 'true' and '$(TargetPath)' != ''">
<MakeDir Directories="$(StandardScenePluginsDir)" />
<ItemGroup>
<StandardScenePluginCopyFile Include="$(TargetPath)" />
<StandardScenePluginCopyFile Include="$(TargetDir)$(TargetName).pdb"
Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
<StandardScenePluginCopyFile Include="$(TargetDir)$(TargetName).scene.json"
Condition="Exists('$(TargetDir)$(TargetName).scene.json')" />
<!-- Devices 插件运行时依赖 -->
<StandardScenePluginCopyFile Include="$(TargetDir)leegKeys-sdk.dll"
Condition="Exists('$(TargetDir)leegKeys-sdk.dll')" />
<StandardScenePluginCopyFile Include="$(TargetDir)IoTClient.dll"
Condition="Exists('$(TargetDir)IoTClient.dll')" />
</ItemGroup>
<Copy SourceFiles="@(StandardScenePluginCopyFile)"
DestinationFolder="$(StandardScenePluginsDir)"
SkipUnchangedFiles="true" />
<ItemGroup Condition="'$(MSBuildProjectName)' == 'StandardScene.Signal'">
<StandardSceneSignalConfig Include="$(TargetDir)Config\Signal\*.json" />
</ItemGroup>
<MakeDir Directories="$(StandardScenePluginsDir)\Config\Signal"
Condition="'@(StandardSceneSignalConfig)' != ''" />
<Copy SourceFiles="@(StandardSceneSignalConfig)"
DestinationFolder="$(StandardScenePluginsDir)\Config\Signal"
SkipUnchangedFiles="true"
Condition="'@(StandardSceneSignalConfig)' != ''" />
<Message Importance="high"
Text="[StandardScene] 已复制 $(MSBuildProjectName) 插件产物到 $(StandardScenePluginsDir)" />
</Target>
</Project>