Terminal.Gui.csproj 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. <Project Sdk="Microsoft.NET.Sdk">
  2. <!-- =================================================================== -->
  3. <!-- Version numbers -->
  4. <!-- Automatically updated by gitversion (run `dotnet-gitversion /updateprojectfiles`) -->
  5. <!-- GitVersion.xml controls settings -->
  6. <!-- =================================================================== -->
  7. <PropertyGroup>
  8. <Version>2.0.0</Version>
  9. </PropertyGroup>
  10. <!-- =================================================================== -->
  11. <!-- Assembly name. -->
  12. <!-- Referenced throughout this file for consistency. -->
  13. <!-- =================================================================== -->
  14. <PropertyGroup>
  15. <AssemblyName>Terminal.Gui</AssemblyName>
  16. </PropertyGroup>
  17. <!-- =================================================================== -->
  18. <!-- .NET Build Settings -->
  19. <!-- =================================================================== -->
  20. <PropertyGroup>
  21. <TargetFrameworks>net8.0</TargetFrameworks>
  22. <LangVersion>12</LangVersion>
  23. <RootNamespace>$(AssemblyName)</RootNamespace>
  24. <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
  25. <DefineTrace>true</DefineTrace>
  26. <DebugType>portable</DebugType>
  27. <DefineConstants>$(DefineConstants);CONTRACTS_FULL;CODE_ANALYSIS</DefineConstants>
  28. <ImplicitUsings>enable</ImplicitUsings>
  29. <NoLogo>true</NoLogo>
  30. <SuppressNETCoreSdkPreviewMessage>true</SuppressNETCoreSdkPreviewMessage>
  31. <JsonSerializerIsReflectionEnabledByDefault>false</JsonSerializerIsReflectionEnabledByDefault>
  32. <IsTrimmable>true</IsTrimmable>
  33. <IsAotCompatible>true</IsAotCompatible>
  34. </PropertyGroup>
  35. <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
  36. <DefineDebug>true</DefineDebug>
  37. <DefineConstants>$(DefineConstants);DEBUG_IDISPOSABLE</DefineConstants>
  38. </PropertyGroup>
  39. <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
  40. <Optimize>true</Optimize>
  41. <VersionSuffix></VersionSuffix>
  42. </PropertyGroup>
  43. <!-- =================================================================== -->
  44. <!-- Configuration Manager -->
  45. <!-- =================================================================== -->
  46. <ItemGroup>
  47. <None Remove="Resources\config.json" />
  48. <EmbeddedResource Include="Resources\config.json" />
  49. </ItemGroup>
  50. <!-- =================================================================== -->
  51. <!-- Dependencies -->
  52. <!-- =================================================================== -->
  53. <ItemGroup>
  54. <PackageReference Include="ColorHelper" Version="1.8.1" />
  55. <PackageReference Include="JetBrains.Annotations" Version="2023.3.0" PrivateAssets="all" />
  56. <PackageReference Include="Microsoft.CodeAnalysis" Version="4.9.2" PrivateAssets="all" />
  57. <PackageReference Include="Microsoft.CodeAnalysis.Common" Version="4.9.2" PrivateAssets="all" />
  58. <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.9.2" PrivateAssets="all" />
  59. <!-- Enable Nuget Source Link for github -->
  60. <PackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" PrivateAssets="all" />
  61. <PackageReference Include="System.IO.Abstractions" Version="21.0.2" />
  62. <PackageReference Include="System.Text.Json" Version="8.0.3" />
  63. <PackageReference Include="Wcwidth" Version="2.0.0" />
  64. <ProjectReference Include="..\Analyzers\Terminal.Gui.Analyzers.Internal\Terminal.Gui.Analyzers.Internal.csproj">
  65. <PrivateAssets>all</PrivateAssets>
  66. <OutputItemType>Analyzer</OutputItemType>
  67. <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
  68. </ProjectReference>
  69. </ItemGroup>
  70. <!-- =================================================================== -->
  71. <!-- Global Usings and Type Aliases -->
  72. <!-- =================================================================== -->
  73. <ItemGroup>
  74. <Using Include="JetBrains.Annotations" />
  75. <Using Include="JetBrains.Annotations.PureAttribute" Alias="PureAttribute" />
  76. <Using Include="System.Drawing" />
  77. <Using Include="System.Text" />
  78. </ItemGroup>
  79. <!-- =================================================================== -->
  80. <!-- Assembliy names for which internal items are visible -->
  81. <!-- =================================================================== -->
  82. <ItemGroup>
  83. <InternalsVisibleTo Include="UnitTests" />
  84. <InternalsVisibleTo Include="TerminalGuiDesigner" />
  85. </ItemGroup>
  86. <!-- =================================================================== -->
  87. <!-- API Documentation -->
  88. <!-- =================================================================== -->
  89. <ItemGroup>
  90. <None Include="..\docfx\images\logo.png">
  91. <Pack>true</Pack>
  92. <PackagePath>\</PackagePath>
  93. </None>
  94. <None Include="..\README.md">
  95. <Pack>true</Pack>
  96. <PackagePath>\</PackagePath>
  97. </None>
  98. </ItemGroup>
  99. <!-- =================================================================== -->
  100. <!-- i18 -->
  101. <!-- =================================================================== -->
  102. <ItemGroup>
  103. <Compile Update="Resources\Strings.Designer.cs">
  104. <DesignTime>true</DesignTime>
  105. <AutoGen>true</AutoGen>
  106. <DependentUpon>Strings.resx</DependentUpon>
  107. </Compile>
  108. </ItemGroup>
  109. <ItemGroup>
  110. <EmbeddedResource Update="Resources\Strings.resx">
  111. <Generator>ResXFileCodeGenerator</Generator>
  112. <LastGenOutput>Strings.Designer.cs</LastGenOutput>
  113. </EmbeddedResource>
  114. </ItemGroup>
  115. <!-- =================================================================== -->
  116. <!-- Nuget -->
  117. <!-- =================================================================== -->
  118. <PropertyGroup>
  119. <PackageId>$(AssemblyName)</PackageId>
  120. <PackageLicenseExpression>MIT</PackageLicenseExpression>
  121. <PackageProjectUrl>https://github.com/gui-cs/$(AssemblyName)</PackageProjectUrl>
  122. <PackageIcon>logo.png</PackageIcon>
  123. <PackageReadmeFile>README.md</PackageReadmeFile>
  124. <PackageTags>csharp, terminal, c#, f#, gui, toolkit, console, tui</PackageTags>
  125. <Description>Cross platform Terminal UI toolkit for .NET</Description>
  126. <Owners>Miguel de Icaza, Tig Kindel</Owners>
  127. <Summary>A toolkit for building rich console apps for .NET that works on Windows, Mac, and Linux/Unix.</Summary>
  128. <Title>$(AssemblyName) - Cross-platform Terminal User Interface (TUI) toolkit for .NET</Title>
  129. <PackageReleaseNotes>
  130. See: $(PackageProjectUrl)/releases
  131. </PackageReleaseNotes>
  132. <DocumentationFile>bin\$(Configuration)\$(AssemblyName).xml</DocumentationFile>
  133. <GeneratePackageOnBuild Condition=" '$(Configuration)' == 'Debug' ">true</GeneratePackageOnBuild>
  134. <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
  135. <RepositoryUrl>https://github.com/gui-cs/$(AssemblyName).git</RepositoryUrl>
  136. <RepositoryType>git</RepositoryType>
  137. <IncludeSymbols>true</IncludeSymbols>
  138. <SymbolPackageFormat>snupkg</SymbolPackageFormat>
  139. <!-- Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element) -->
  140. <PublishRepositoryUrl>true</PublishRepositoryUrl>
  141. <GitRepositoryRemoteName>upstream</GitRepositoryRemoteName>
  142. <!-- Embed source files that are not tracked by the source control manager in the PDB -->
  143. <EmbedUntrackedSources>true</EmbedUntrackedSources>
  144. <EnableSourceLink>true</EnableSourceLink>
  145. <Authors>Miguel de Icaza, Tig Kindel (@tig), @BDisp</Authors>
  146. </PropertyGroup>
  147. </Project>