Files
OpenRA/OpenRA.Game/OpenRA.Game.csproj
2019-05-16 19:34:21 +01:00

88 lines
4.0 KiB
XML

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net461</TargetFramework>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<Optimize>true</Optimize>
<UseVSHostingProcess>false</UseVSHostingProcess>
<LangVersion>5</LangVersion>
<DebugSymbols>true</DebugSymbols>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>
<RootNamespace>OpenRA</RootNamespace>
<OutputPath>..</OutputPath>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<Platforms>x86</Platforms>
<PlatformTarget>x86</PlatformTarget>
<ExternalConsole>false</ExternalConsole>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
<CodeAnalysisRuleSet>..\OpenRA.ruleset</CodeAnalysisRuleSet>
<Configurations>Release;Debug;Red Alert;Tiberian Dawn;Dune 2000;Tiberian Sun</Configurations>
</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="'$(Configuration)' == 'Red Alert' OR '$(RunConfiguration)' == 'Red Alert' ">
<DefineConstants>DEBUG;TRACE</DefineConstants>
<Optimize>false</Optimize>
<StartAction>Project</StartAction>
<StartArguments>Game.Mod=ra</StartArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Dune 2000' OR '$(RunConfiguration)' == 'Dune 2000' ">
<DefineConstants>DEBUG;TRACE</DefineConstants>
<Optimize>false</Optimize>
<StartAction>Project</StartAction>
<StartArguments>Game.Mod=d2k</StartArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Tiberian Dawn' OR '$(RunConfiguration)' == 'Tiberian Dawn' ">
<DefineConstants>DEBUG;TRACE</DefineConstants>
<Optimize>false</Optimize>
<StartAction>Project</StartAction>
<StartArguments>Game.Mod=cnc</StartArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Tiberian Sun' OR '$(RunConfiguration)' == 'Tiberian Sun' ">
<DefineConstants>DEBUG;TRACE</DefineConstants>
<Optimize>false</Optimize>
<StartAction>Project</StartAction>
<StartArguments>Game.Mod=ts</StartArguments>
</PropertyGroup>
<ItemGroup>
<Reference Include="Open.Nat">
<HintPath>..\thirdparty\download\Open.Nat.dll</HintPath>
</Reference>
<Reference Include="Eluant">
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ICSharpCode.SharpZipLib">
<HintPath>..\thirdparty\download\ICSharpCode.SharpZipLib.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="MaxMind.Db">
<HintPath>..\thirdparty\download\MaxMind.Db.dll</HintPath>
<Private>False</Private>
</Reference>
<ProjectReference Include="..\OpenRA.PostProcess\OpenRA.PostProcess.csproj">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<None Include="App.config" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" />
<AdditionalFiles Include="../stylecop.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>
<Target Name="PostProcess" AfterTargets="Build" Inputs="$(TargetPath)" Outputs="$(IntermediateOutputPath)\$(TargetFileName).processed">
<Exec Command="$(TargetDir)/OpenRA.PostProcess.exe $(TargetPath) -LAA" />
<Touch Files="$(IntermediateOutputPath)\$(TargetFileName).processed" AlwaysCreate="true" />
</Target>
</Project>