System.Interactive.Async.csproj 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <Project Sdk="Microsoft.NET.Sdk">
  2. <PropertyGroup>
  3. <Description>Interactive Extensions Async Library used to express queries over asynchronous enumerable sequences.</Description>
  4. <AssemblyTitle>Interactive Extensions - Async Library</AssemblyTitle>
  5. <!--
  6. .NET 10.0 gets its own target because that doesn't need a transitive reference
  7. to System.Linq.AsyncEnumerable - it's built in from .NET 10.0 and later -
  8. but all other targets do need that reference.
  9. Even though we support back to .NET 8.0 for v7, we don't build targets for
  10. any versions older than net10.0 because net8.0 and net9.0 are both covered
  11. by the netstandard2.0 target.
  12. -->
  13. <TargetFrameworks>net48;netstandard2.0;netstandard2.1;net6.0;net10.0</TargetFrameworks>
  14. <PackageTags>Ix;Interactive;Extensions;Enumerable;Asynchronous</PackageTags>
  15. </PropertyGroup>
  16. <PropertyGroup>
  17. <!-- IDE0305 wants to turn things like list.ToArray into [..list], which we don't find to be an improvement in readability. -->
  18. <NoWarn>$(NoWarn);IDE0305</NoWarn>
  19. </PropertyGroup>
  20. <ItemGroup>
  21. <Compile Include="..\System.Linq.Async\System\Error.cs" Link="System\Error.cs" />
  22. <Compile Include="..\System.Linq.Async\System\Linq\AsyncIterator.cs" Link="System\Linq\AsyncIterator.cs" />
  23. <Compile Include="..\System.Linq.Async\System\Linq\Set.cs" Link="System\Linq\Set.cs" />
  24. <Compile Include="..\System.Linq.Async\System\Strings.cs" Link="System\Strings.cs" />
  25. <Compile Include="..\System.Linq.Async\System\Threading\Tasks\AsyncEnumerableExt.cs" Link="System\Threading\Tasks\AsyncEnumerableExt.cs" />
  26. </ItemGroup>
  27. <ItemGroup>
  28. <EmbeddedResource Include="Properties\System.Interactive.Async.rd.xml" />
  29. </ItemGroup>
  30. <!--
  31. Incorporate the reference assemblies. Note that these have a different set of TFMs from the proper assemblies.
  32. See ../../Documentation/adr/0001-Ix-Ref-Assembly-Mismatches.md
  33. -->
  34. <ItemGroup>
  35. <None Include="../refs/System.Interactive.Async/bin/$(Configuration)/**/System.Interactive.Async.*" PackagePath="ref/" Pack="true" />
  36. </ItemGroup>
  37. <!--
  38. These warnings occur because we are deliberately creating a lib/ref mismatch. There doesn't seem to be
  39. an official way to do that, so we have to suppress the warnings.
  40. See ../../Documentation/adr/0001-Ix-Ref-Assembly-Mismatches.md for an explanation of this bizarreness.
  41. -->
  42. <PropertyGroup>
  43. <!--
  44. NU5128: lib/ref mismatch. This is deliberate, as explained in the ADR.
  45. NU5131: spurious missing file errors. It appears that the build is confused by what we're doing.
  46. -->
  47. <NoWarn>$(NoWarn);NU5128;NU5131</NoWarn>
  48. </PropertyGroup>
  49. <ItemGroup Condition="'$(TargetFramework)' != 'net10.0'">
  50. <PackageReference Include="System.Linq.AsyncEnumerable" Version="10.0.0" />
  51. </ItemGroup>
  52. <ItemGroup>
  53. <ProjectReference Include="..\System.Linq.Async.SourceGenerator\System.Linq.Async.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" Private="false" />
  54. </ItemGroup>
  55. <ItemGroup>
  56. <Compile Update="System\Linq\Operators\Average.Generated.cs">
  57. <DependentUpon>Average.Generated.tt</DependentUpon>
  58. <DesignTime>True</DesignTime>
  59. <AutoGen>True</AutoGen>
  60. </Compile>
  61. <Compile Update="System\Linq\Operators\Sum.Generated.cs">
  62. <DependentUpon>Sum.Generated.tt</DependentUpon>
  63. <DesignTime>True</DesignTime>
  64. <AutoGen>True</AutoGen>
  65. </Compile>
  66. </ItemGroup>
  67. <ItemGroup>
  68. <None Update="System\Linq\Operators\Average.Generated.tt">
  69. <LastGenOutput>Average.Generated.cs</LastGenOutput>
  70. <Generator>TextTemplatingFileGenerator</Generator>
  71. </None>
  72. <None Update="System\Linq\Operators\Sum.Generated.tt">
  73. <LastGenOutput>Sum.Generated.cs</LastGenOutput>
  74. <Generator>TextTemplatingFileGenerator</Generator>
  75. </None>
  76. </ItemGroup>
  77. <ItemGroup>
  78. <Service Include="{508349b6-6b84-4df5-91f0-309beebad82d}" />
  79. </ItemGroup>
  80. </Project>