64b5ee7010
Main benefits: - Projects can be built offline. Previously you needed internet access the first time building to download the packages. - Changes to packages like Godot.NET.Sdk can be easily tested before publishing. This was already possible but required too many manual steps. - First time builds are a bit faster, as the Sdk package doesn't need to be downloaded. In practice, the package is very small so it makes little difference. Bumped Godot.NET.Sdk to 4.0.0-dev3 in order to enable the recent changes regarding '.mono/' -> '.godot/mono/'.
37 lines
1.6 KiB
XML
37 lines
1.6 KiB
XML
<Project>
|
|
<!-- Generate C# file with the version of all the nupkgs bundled with Godot -->
|
|
|
|
<Target Name="SetPropertiesForGenerateGodotNupkgsVersions">
|
|
<PropertyGroup>
|
|
<GodotNETSdkPackageVersionFile>$(SolutionDir)..\Godot.NET.Sdk\Godot.NET.Sdk\Godot.NET.Sdk_PackageVersion.txt</GodotNETSdkPackageVersionFile>
|
|
<GeneratedGodotNupkgsVersionsFile>$(IntermediateOutputPath)GodotNupkgsVersions.g.cs</GeneratedGodotNupkgsVersionsFile>
|
|
</PropertyGroup>
|
|
</Target>
|
|
|
|
<Target Name="GenerateGodotNupkgsVersionsFile"
|
|
DependsOnTargets="PrepareForBuild;_GenerateGodotNupkgsVersionsFile"
|
|
BeforeTargets="BeforeCompile;CoreCompile">
|
|
<ItemGroup>
|
|
<Compile Include="$(GeneratedGodotNupkgsVersionsFile)" />
|
|
<FileWrites Include="$(GeneratedGodotNupkgsVersionsFile)" />
|
|
</ItemGroup>
|
|
</Target>
|
|
<Target Name="_GenerateGodotNupkgsVersionsFile"
|
|
DependsOnTargets="SetPropertiesForGenerateGodotNupkgsVersions"
|
|
Inputs="$(MSBuildProjectFile);@(GodotNETSdkPackageVersionFile)"
|
|
Outputs="$(GeneratedGodotNupkgsVersionsFile)">
|
|
<PropertyGroup>
|
|
<GenerateGodotNupkgsVersionsCode><![CDATA[
|
|
namespace $(RootNamespace) {
|
|
public class GeneratedGodotNupkgsVersions {
|
|
public const string GodotNETSdk = "$([System.IO.File]::ReadAllText('$(GodotNETSdkPackageVersionFile)').Trim())"%3b
|
|
}
|
|
}
|
|
]]></GenerateGodotNupkgsVersionsCode>
|
|
</PropertyGroup>
|
|
<WriteLinesToFile Lines="$(GenerateGodotNupkgsVersionsCode)"
|
|
File="$(GeneratedGodotNupkgsVersionsFile)"
|
|
Overwrite="True" WriteOnlyWhenDifferent="True" />
|
|
</Target>
|
|
</Project>
|