csharpc-sharpdotnetxamlavaloniauicross-platformcross-platform-xamlavaloniaguimulti-platformuser-interfacedotnetcore
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.7 KiB
33 lines
1.7 KiB
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
|
|
<!-- Ensure that code generator is actually built -->
|
|
<ItemGroup>
|
|
<ProjectReference Include="$(MSBuildThisFileDirectory)\..\src\tools\MicroComGenerator\MicroComGenerator.csproj">
|
|
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
|
<ExcludeAssets>all</ExcludeAssets>
|
|
<SkipGetTargetFrameworkProperties>true</SkipGetTargetFrameworkProperties>
|
|
</ProjectReference>
|
|
</ItemGroup>
|
|
|
|
<Target Name="GenerateAvaloniaNativeComInterop"
|
|
BeforeTargets="CoreCompile"
|
|
DependsOnTargets="ResolveReferences"
|
|
Inputs="@(AvnComIdl);$(MSBuildThisFileDirectory)../src/tools/MicroComGenerator/**/*.cs"
|
|
Outputs="%(AvnComIdl.OutputFile)">
|
|
<Message Importance="high" Text="Generating file %(AvnComIdl.OutputFile) from @(AvnComIdl)" />
|
|
<Exec Command="dotnet $(MSBuildThisFileDirectory)../src/tools/MicroComGenerator/bin/$(Configuration)/netcoreapp3.1/MicroComGenerator.dll -i @(AvnComIdl) --cs %(AvnComIdl.OutputFile)" LogStandardErrorAsError="true" />
|
|
<ItemGroup>
|
|
<!-- Remove and re-add generated file, this is needed for the clean build -->
|
|
<Compile Remove="%(AvnComIdl.OutputFile)"/>
|
|
<Compile Include="%(AvnComIdl.OutputFile)"/>
|
|
</ItemGroup>
|
|
</Target>
|
|
<ItemGroup>
|
|
<UpToDateCheckInput Include="@(AvnComIdl)"/>
|
|
<UpToDateCheckInput Include="$(MSBuildThisFileDirectory)/../src/tools/MicroComGenerator/**/*.cs"/>
|
|
</ItemGroup>
|
|
<PropertyGroup>
|
|
<_AvaloniaPatchComInterop>true</_AvaloniaPatchComInterop>
|
|
</PropertyGroup>
|
|
<Import Project="$(MSBuildThisFileDirectory)/BuildTargets.targets" />
|
|
</Project>
|
|
|