GtkSharp/Source/Workload/GtkSharp.NET.Sdk.Gtk/GtkSharp.NET.Sdk.Gtk.csproj
Trung Nguyen 60376ae510
feat: GtkSharp net6 workload (#351)
* feat: GtkSharp net6 workload

* feat(Workload): GtkSharp template packs

* chore: Support .NET SDK 6.0.300

And also changed the build script to target SDK bands.

* build: Workload install and uninstall targets
2022-05-29 10:55:50 +02:00

60 lines
2.1 KiB
XML

<Project Sdk="Microsoft.Build.NoTargets">
<Import Project="..\Shared\Common.targets" />
<PropertyGroup>
<PackageId>$(PackageId).Manifest-$(_GtkSharpManifestVersionBand)</PackageId>
<Description>GtkSharp workload manifest</Description>
</PropertyGroup>
<PropertyGroup>
<!-- Workaround: Visual Studio complains if the version contains 4 parts (major.minor.patch.rev, the one that GtkSharp is currently using) -->
<_GtkSharpVersionMajorMinorPatch>$([System.Text.RegularExpressions.Regex]::Match($(Version), '(\d+)\.(\d+).(\d+)'))</_GtkSharpVersionMajorMinorPatch>
<_GtkSharpManifestVersion>$(Version.Replace('$(_GtkSharpVersionMajorMinorPatch).', '$(_GtkSharpVersionMajorMinorPatch)-rev.'))</_GtkSharpManifestVersion>
</PropertyGroup>
<Import Project="..\Shared\ReplaceText.targets" />
<ItemGroup>
<None Update="WorkloadManifest.targets" CopyToOutputDirectory="PreserveNewest" Pack="true" PackagePath="data" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="../GtkSharp.*/*.csproj" />
<!-- Exclude self -->
<ProjectReference Remove="../GtkSharp.NET.*/*.csproj" />
</ItemGroup>
<Target Name="_ReplaceJsonText"
BeforeTargets="Build;AssignTargetPaths"
Inputs="$(MSBuildProjectFile);WorkloadManifest.in.json"
Outputs="$(IntermediateOutputPath)WorkloadManifest.json">
<ReplaceText
Input="WorkloadManifest.in.json"
Output="$(IntermediateOutputPath)WorkloadManifest.json"
OldValue="@VERSION@"
NewValue="$(Version)"
/>
<ReplaceText
Input="$(IntermediateOutputPath)WorkloadManifest.json"
Output="$(IntermediateOutputPath)WorkloadManifest.json"
OldValue="@GTKSHARPMANIFESTVERSION@"
NewValue="$(_GtkSharpManifestVersion)"
/>
<ItemGroup>
<None
Include="$(IntermediateOutputPath)WorkloadManifest.json"
Link="WorkloadManifest.json"
CopyToOutputDirectory="PreserveNewest"
Pack="true"
PackagePath="data"
/>
<FileWrites Include="$(IntermediateOutputPath)WorkloadManifest.json" />
</ItemGroup>
</Target>
</Project>