xref: /aosp_15_r20/external/grpc-grpc/src/csharp/Grpc.Tools/Grpc.Tools.csproj (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1*cc02d7e2SAndroid Build Coastguard Worker<Project Sdk="Microsoft.NET.Sdk" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2*cc02d7e2SAndroid Build Coastguard Worker  <PropertyGroup>
3*cc02d7e2SAndroid Build Coastguard Worker    <AssemblyName>Protobuf.MSBuild</AssemblyName>
4*cc02d7e2SAndroid Build Coastguard Worker    <VersionPrefix>$(GrpcCsharpVersion)</VersionPrefix>
5*cc02d7e2SAndroid Build Coastguard Worker    <!-- If changing targets, change also paths in Google.Protobuf.Tools.targets. -->
6*cc02d7e2SAndroid Build Coastguard Worker    <TargetFrameworks>net45;netstandard1.3</TargetFrameworks>
7*cc02d7e2SAndroid Build Coastguard Worker    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
8*cc02d7e2SAndroid Build Coastguard Worker  </PropertyGroup>
9*cc02d7e2SAndroid Build Coastguard Worker
10*cc02d7e2SAndroid Build Coastguard Worker  <Import Project="SourceLink.csproj.include" />
11*cc02d7e2SAndroid Build Coastguard Worker
12*cc02d7e2SAndroid Build Coastguard Worker  <PropertyGroup Label="Asset root folders.">
13*cc02d7e2SAndroid Build Coastguard Worker    <!-- Root of well known types .proto files -->
14*cc02d7e2SAndroid Build Coastguard Worker    <Assets_ProtoInclude>../../../third_party/protobuf/src/google/protobuf/</Assets_ProtoInclude>
15*cc02d7e2SAndroid Build Coastguard Worker
16*cc02d7e2SAndroid Build Coastguard Worker    <!-- Protocol buffers compiler binaries -->
17*cc02d7e2SAndroid Build Coastguard Worker    <Assets_ProtoCompiler>../protoc_plugins/protoc_</Assets_ProtoCompiler>
18*cc02d7e2SAndroid Build Coastguard Worker
19*cc02d7e2SAndroid Build Coastguard Worker    <!-- Plugins binaries -->
20*cc02d7e2SAndroid Build Coastguard Worker    <Assets_GrpcPlugins>../protoc_plugins/</Assets_GrpcPlugins>
21*cc02d7e2SAndroid Build Coastguard Worker  </PropertyGroup>
22*cc02d7e2SAndroid Build Coastguard Worker
23*cc02d7e2SAndroid Build Coastguard Worker  <PropertyGroup Condition=" '$(TargetFramework)' != 'net45' ">
24*cc02d7e2SAndroid Build Coastguard Worker    <DefineConstants>$(DefineConstants);NETCORE</DefineConstants>
25*cc02d7e2SAndroid Build Coastguard Worker  </PropertyGroup>
26*cc02d7e2SAndroid Build Coastguard Worker
27*cc02d7e2SAndroid Build Coastguard Worker  <PropertyGroup Label="NuGet package definition" Condition=" '$(Configuration)' == 'Release' ">
28*cc02d7e2SAndroid Build Coastguard Worker    <BuildOutputTargetFolder>build\_protobuf\</BuildOutputTargetFolder>
29*cc02d7e2SAndroid Build Coastguard Worker    <DevelopmentDependency>true</DevelopmentDependency>
30*cc02d7e2SAndroid Build Coastguard Worker    <NoPackageAnalysis>true</NoPackageAnalysis>
31*cc02d7e2SAndroid Build Coastguard Worker    <PackageId>Grpc.Tools</PackageId>
32*cc02d7e2SAndroid Build Coastguard Worker    <Authors>The gRPC Authors</Authors>
33*cc02d7e2SAndroid Build Coastguard Worker    <Copyright>Copyright 2018 The gRPC Authors</Copyright>
34*cc02d7e2SAndroid Build Coastguard Worker    <Description>gRPC and Protocol Buffer compiler for C# projects</Description>
35*cc02d7e2SAndroid Build Coastguard Worker    <PackageIcon>packageIcon.png</PackageIcon>
36*cc02d7e2SAndroid Build Coastguard Worker    <PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
37*cc02d7e2SAndroid Build Coastguard Worker    <PackageProjectUrl>https://github.com/grpc/grpc</PackageProjectUrl>
38*cc02d7e2SAndroid Build Coastguard Worker    <PackageTags>gRPC RPC HTTP/2</PackageTags>
39*cc02d7e2SAndroid Build Coastguard Worker    <PackageReadmeFile>README.md</PackageReadmeFile>
40*cc02d7e2SAndroid Build Coastguard Worker  </PropertyGroup>
41*cc02d7e2SAndroid Build Coastguard Worker
42*cc02d7e2SAndroid Build Coastguard Worker  <ItemGroup>
43*cc02d7e2SAndroid Build Coastguard Worker    <None Include="../packageIcon.png" Pack="true" PackagePath="\"/>
44*cc02d7e2SAndroid Build Coastguard Worker    <None Include="README.md" Pack="true" PackagePath="\"/>
45*cc02d7e2SAndroid Build Coastguard Worker  </ItemGroup>
46*cc02d7e2SAndroid Build Coastguard Worker
47*cc02d7e2SAndroid Build Coastguard Worker  <ItemGroup Label="NuGet package assets">
48*cc02d7e2SAndroid Build Coastguard Worker    <None Pack="true" PackagePath="build\" Include="build\**\*.xml; build\**\*.props; build\**\*.targets;" />
49*cc02d7e2SAndroid Build Coastguard Worker
50*cc02d7e2SAndroid Build Coastguard Worker    <!-- Protobuf assets - well known types -->
51*cc02d7e2SAndroid Build Coastguard Worker    <_ProtoAssetName Include="any;api;descriptor;duration;empty;field_mask;
52*cc02d7e2SAndroid Build Coastguard Worker                              source_context;struct;timestamp;type;wrappers" />
53*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="build/native/include/google/protobuf/" Include="@(_ProtoAssetName->'$(Assets_ProtoInclude)%(Identity).proto')" />
54*cc02d7e2SAndroid Build Coastguard Worker
55*cc02d7e2SAndroid Build Coastguard Worker    <!-- protocol buffers compiler -->
56*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/windows_x86/" Include="$(Assets_ProtoCompiler)windows_x86/protoc.exe" />
57*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/windows_x64/" Include="$(Assets_ProtoCompiler)windows_x64/protoc.exe" />
58*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/linux_x86/" Include="$(Assets_ProtoCompiler)linux_x86/protoc" />
59*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/linux_x64/" Include="$(Assets_ProtoCompiler)linux_x64/protoc" />
60*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/linux_arm64/" Include="$(Assets_ProtoCompiler)linux_aarch64/protoc" />
61*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/macosx_x64/" Include="$(Assets_ProtoCompiler)macos_x64/protoc" />
62*cc02d7e2SAndroid Build Coastguard Worker
63*cc02d7e2SAndroid Build Coastguard Worker    <!-- gRPC protocol buffer compiler plugins -->
64*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/windows_x86/" Include="$(Assets_GrpcPlugins)protoc_windows_x86/grpc_csharp_plugin.exe" />
65*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/windows_x64/" Include="$(Assets_GrpcPlugins)protoc_windows_x64/grpc_csharp_plugin.exe" />
66*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/linux_x86/" Include="$(Assets_GrpcPlugins)protoc_linux_x86/grpc_csharp_plugin" />
67*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/linux_x64/" Include="$(Assets_GrpcPlugins)protoc_linux_x64/grpc_csharp_plugin" />
68*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/linux_arm64/" Include="$(Assets_GrpcPlugins)protoc_linux_aarch64/grpc_csharp_plugin" />
69*cc02d7e2SAndroid Build Coastguard Worker    <_Asset PackagePath="tools/macosx_x64/" Include="$(Assets_GrpcPlugins)protoc_macos_x64/grpc_csharp_plugin" />
70*cc02d7e2SAndroid Build Coastguard Worker
71*cc02d7e2SAndroid Build Coastguard Worker    <None Include="@(_Asset)" Pack="true" Visible="false" />
72*cc02d7e2SAndroid Build Coastguard Worker  </ItemGroup>
73*cc02d7e2SAndroid Build Coastguard Worker
74*cc02d7e2SAndroid Build Coastguard Worker  <ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
75*cc02d7e2SAndroid Build Coastguard Worker    <Reference Include="Microsoft.Build.Framework; Microsoft.Build.Utilities.v4.0" Pack="false" />
76*cc02d7e2SAndroid Build Coastguard Worker  </ItemGroup>
77*cc02d7e2SAndroid Build Coastguard Worker
78*cc02d7e2SAndroid Build Coastguard Worker  <ItemGroup Condition=" '$(TargetFramework)' != 'net45' ">
79*cc02d7e2SAndroid Build Coastguard Worker    <PackageReference Include="Microsoft.Build.Framework; Microsoft.Build.Utilities.Core" Version="15.6.*" />
80*cc02d7e2SAndroid Build Coastguard Worker    <!--  Set PrivateAssets="All" on all items, even those implicitly added,
81*cc02d7e2SAndroid Build Coastguard Worker          so that they do not become dependencies of this package. -->
82*cc02d7e2SAndroid Build Coastguard Worker    <PackageReference Update="@(PackageReference)" PrivateAssets="All" />
83*cc02d7e2SAndroid Build Coastguard Worker  </ItemGroup>
84*cc02d7e2SAndroid Build Coastguard Worker
85*cc02d7e2SAndroid Build Coastguard Worker</Project>
86