Files
Peak-BetterBugphobia/Directory.Build.targets

61 lines
2.4 KiB
XML

<Project>
<!--
This is a special file that contains shared configuration
for all project files in subdirectories.
-->
<!-- Set extra NuGet sources -->
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://nuget.bepinex.dev/v3/index.json;
https://nuget.windows10ce.com/nuget/v3/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
<!-- Modding dependencies -->
<ItemGroup>
<PackageReference Include="BepInEx.Core" Version="5.4.21" />
<PackageReference Include="BepInEx.Analyzers" Version="1.*" PrivateAssets="all" />
<PackageReference Include="BepInEx.AssemblyPublicizer.MSBuild" Version="0.4.3" PrivateAssets="all" />
<PackageReference Include="Hamunii.BepInEx.AutoPlugin" Version="2.0.*" PrivateAssets="all" />
</ItemGroup>
<!-- NuGet fallback stripped game references -->
<ItemGroup Condition="!Exists('$(ManagedDir)')">
<PackageReference Include="UnityEngine.Modules" Version="6000.0.36" PrivateAssets="all" />
</ItemGroup>
<!-- Local game references -->
<ItemGroup Condition="Exists('$(ManagedDir)')">
<!--
Reference all assemblies except ones that come
with our target framework or would cause conflicts
-->
<LocalReferences
Include="$(ManagedDir)*.dll"
Exclude="$(ManagedDir)Mono*.dll;$(ManagedDir)netstandard.dll;$(ManagedDir)System*.dll;$(ManagedDir)mscorlib.dll"
/>
<Reference Include="@(LocalReferences)" Private="false" />
<!-- Publicize these assemblies so we can access their internal members -->
<Reference Include="$(ManagedDir)Assembly-CSharp.dll" Private="false" Publicize="true" />
</ItemGroup>
<!--
Build Thunderstore package by calling `dotnet build -c Release -target:PackTS -v d` (verbosity detailed).
Publish to Thunderstore by including `-property:PublishTS=true` in the command.
-->
<Target Name="PackTS" DependsOnTargets="Build" Condition="$(ThunderstorePackable) != 'false'">
<Error
Text=" PackTS must be called with Release configuration."
Condition="'$(Configuration)' != 'Release'"
/>
<PropertyGroup>
<BuildArgument Condition="'$(PublishTS)' != 'true'">build</BuildArgument>
<BuildArgument Condition="'$(PublishTS)' == 'true'">publish</BuildArgument>
</PropertyGroup>
<Exec Command="dotnet tool restore" />
<Exec Command="dotnet tcli $(BuildArgument) --package-version $(Version) --token $(TCLI_AUTH_TOKEN)" />
</Target>
</Project>