69 lines
3.3 KiB
XML
69 lines
3.3 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<PropertyGroup>
|
|
<OutputType>Exe</OutputType>
|
|
<TargetFramework Condition="'$(Mono)' == ''">net5.0</TargetFramework>
|
|
<TargetFramework Condition="'$(Mono)' != ''">netstandard2.1</TargetFramework>
|
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
<Optimize>true</Optimize>
|
|
<UseVSHostingProcess>false</UseVSHostingProcess>
|
|
<LangVersion>7.3</LangVersion>
|
|
<DebugSymbols>true</DebugSymbols>
|
|
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
|
<AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>
|
|
<OutputPath>../bin</OutputPath>
|
|
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
|
<ExternalConsole>false</ExternalConsole>
|
|
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
|
|
<CodeAnalysisRuleSet>..\OpenRA.ruleset</CodeAnalysisRuleSet>
|
|
<Configurations>Release;Debug</Configurations>
|
|
<AssemblyName>OpenRA</AssemblyName>
|
|
<IsPublishable Condition="'$(CopyGenericLauncher)' == 'False'">false</IsPublishable>
|
|
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<TargetPlatform Condition="$([MSBuild]::IsOsPlatform('Windows'))">win-x64</TargetPlatform>
|
|
<TargetPlatform Condition="$([MSBuild]::IsOsPlatform('Linux'))">linux-x64</TargetPlatform>
|
|
<TargetPlatform Condition="$([MSBuild]::IsOsPlatform('OSX'))">osx-x64</TargetPlatform>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<!-- Work around an issue where Rider does not detect files in the project root using the default glob -->
|
|
<Compile Include="**/*.cs" Exclude="$(DefaultItemExcludes)" />
|
|
</ItemGroup>
|
|
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
|
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
<Optimize>false</Optimize>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(TargetPlatform)' == 'win-x86'">
|
|
<Prefer32bit>true</Prefer32bit>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(RunConfiguration)' == 'Red Alert'">
|
|
<StartAction>Project</StartAction>
|
|
<StartArguments>Engine.EngineDir=".." Game.Mod=ra</StartArguments>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(RunConfiguration)' == 'Dune 2000'">
|
|
<StartAction>Project</StartAction>
|
|
<StartArguments>Engine.EngineDir=".." Game.Mod=d2k</StartArguments>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(RunConfiguration)' == 'Tiberian Dawn'">
|
|
<StartAction>Project</StartAction>
|
|
<StartArguments>Engine.EngineDir=".." Game.Mod=cnc</StartArguments>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(RunConfiguration)' == 'Tiberian Sun'">
|
|
<StartAction>Project</StartAction>
|
|
<StartArguments>Engine.EngineDir=".." Game.Mod=ts</StartArguments>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<None Include="App.config" />
|
|
<ProjectReference Include="..\OpenRA.Game\OpenRA.Game.csproj" />
|
|
<AdditionalFiles Include="../stylecop.json" />
|
|
<AdditionalFiles Include="Properties/launchSettings.json" />
|
|
</ItemGroup>
|
|
<Target Name="DisableAnalyzers" BeforeTargets="CoreCompile" Condition="'$(Configuration)'=='Release'">
|
|
<!-- Disable code style analysis on Release builds to improve compile-time performance -->
|
|
<ItemGroup Condition="'$(Configuration)'=='Release'">
|
|
<Analyzer Remove="@(Analyzer)" />
|
|
</ItemGroup>
|
|
</Target>
|
|
</Project>
|