aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Headless.SDL2/Ryujinx.Headless.SDL2.csproj
blob: cc5a365183ece61d7ab67fa790da3e5b882737c8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <RuntimeIdentifiers>win-x64;osx-x64;linux-x64</RuntimeIdentifiers>
    <OutputType>Exe</OutputType>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <Version>1.0.0-dirty</Version>
    <DefineConstants Condition=" '$(ExtraDefineConstants)' != '' ">$(DefineConstants);$(ExtraDefineConstants)</DefineConstants>
    <SigningCertificate Condition=" '$(SigningCertificate)' == '' ">-</SigningCertificate>
    <TieredPGO>true</TieredPGO>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="OpenTK.Core" />
    <PackageReference Include="Ryujinx.Graphics.Nvdec.Dependencies" />
  </ItemGroup>

  <Target Name="PostBuild" AfterTargets="PostBuildEvent" Condition="$([MSBuild]::IsOSPlatform('OSX'))">
    <Exec Command="codesign --entitlements '$(ProjectDir)..\..\distribution\macos\entitlements.xml' -f --deep -s $(SigningCertificate) '$(TargetDir)$(TargetName)'" />
  </Target>

  <ItemGroup>
    <ProjectReference Include="..\Ryujinx.Graphics.Vulkan\Ryujinx.Graphics.Vulkan.csproj" />
    <ProjectReference Include="..\Ryujinx.Input\Ryujinx.Input.csproj" />
    <ProjectReference Include="..\Ryujinx.Input.SDL2\Ryujinx.Input.SDL2.csproj" />
    <ProjectReference Include="..\Ryujinx.Audio.Backends.SDL2\Ryujinx.Audio.Backends.SDL2.csproj" />
    <ProjectReference Include="..\Ryujinx.Common\Ryujinx.Common.csproj" />
    <ProjectReference Include="..\Ryujinx.HLE\Ryujinx.HLE.csproj" />
    <ProjectReference Include="..\ARMeilleure\ARMeilleure.csproj" />
    <ProjectReference Include="..\Ryujinx.Graphics.OpenGL\Ryujinx.Graphics.OpenGL.csproj" />
    <ProjectReference Include="..\Ryujinx.Graphics.Gpu\Ryujinx.Graphics.Gpu.csproj" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="CommandLineParser" />
    <PackageReference Include="Ryujinx.Graphics.Vulkan.Dependencies.MoltenVK" Condition="'$(RuntimeIdentifier)' != 'linux-x64' AND '$(RuntimeIdentifier)' != 'linux-arm64' AND '$(RuntimeIdentifier)' != 'win-x64'" />
  </ItemGroup>

  <ItemGroup>
    <Content Include="..\..\distribution\legal\THIRDPARTY.md">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
      <TargetPath>THIRDPARTY.md</TargetPath>
    </Content>
    <Content Include="..\..\LICENSE.txt">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
      <TargetPath>LICENSE.txt</TargetPath>
    </Content>
  </ItemGroup>

  <ItemGroup Condition="'$(RuntimeIdentifier)' == 'linux-x64' OR '$(RuntimeIdentifier)' == 'linux-arm64'">
    <Content Include="..\..\distribution\linux\Ryujinx.sh">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>

  <ItemGroup>
    <EmbeddedResource Include="Ryujinx.bmp" />
  </ItemGroup>

  <!-- Due to .net core 3.1 embedded resource loading -->
  <PropertyGroup>
    <EmbeddedResourceUseDependentUponConvention>false</EmbeddedResourceUseDependentUponConvention>
    <ApplicationIcon>..\Ryujinx\Ryujinx.ico</ApplicationIcon>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)' != ''">
    <PublishSingleFile>true</PublishSingleFile>
    <PublishTrimmed>true</PublishTrimmed>
    <TrimMode>partial</TrimMode>
  </PropertyGroup>
</Project>