зеркало из https://github.com/dotnet/pinvoke.git
131 строка
7.2 KiB
XML
131 строка
7.2 KiB
XML
<Project>
|
|
<PropertyGroup>
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
<RepoRootPath>$(MSBuildThisFileDirectory)</RepoRootPath>
|
|
<BaseIntermediateOutputPath>$(RepoRootPath)obj\$([MSBuild]::MakeRelative($(RepoRootPath), $(MSBuildProjectDirectory)))\</BaseIntermediateOutputPath>
|
|
<BaseOutputPath Condition=" '$(BaseOutputPath)' == '' ">$(RepoRootPath)bin\</BaseOutputPath>
|
|
<PackageOutputPath>$(RepoRootPath)bin\$(Configuration)\Packages\</PackageOutputPath>
|
|
<LangVersion>10.0</LangVersion>
|
|
<Nullable>disable</Nullable>
|
|
<ImplicitUsings>disable</ImplicitUsings>
|
|
<AnalysisLevel>latest</AnalysisLevel>
|
|
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
|
|
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
|
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
|
|
|
|
<!-- https://github.com/dotnet/msbuild/blob/main/documentation/ProjectReference-Protocol.md#setplatform-negotiation -->
|
|
<EnableDynamicPlatformResolution>false</EnableDynamicPlatformResolution>
|
|
|
|
<!-- Opt in till https://github.com/NuGet/Home/issues/9803 makes this the default. -->
|
|
<RestoreUseStaticGraphEvaluation>false</RestoreUseStaticGraphEvaluation>
|
|
|
|
<!-- This entire repo has just one version.json file, so compute the version once and share with all projects in a large build. -->
|
|
<GitVersionBaseDirectory>$(MSBuildThisFileDirectory)</GitVersionBaseDirectory>
|
|
|
|
<!-- Local builds should embed PDBs so we never lose them when a subsequent build occurs. -->
|
|
<DebugType Condition=" '$(CI)' != 'true' and '$(TF_BUILD)' != 'true' ">embedded</DebugType>
|
|
|
|
<NoWarn>$(NoWarn);CS1591;CA1401</NoWarn>
|
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
<SignAssembly>true</SignAssembly>
|
|
<AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)strongname.snk</AssemblyOriginatorKeyFile>
|
|
|
|
<DesktopOnlyFrameworks>net45</DesktopOnlyFrameworks>
|
|
<PlatformSpecificFrameworks>$(DesktopOnlyFrameworks);uap10.0.19041</PlatformSpecificFrameworks>
|
|
<PortableOnlyFrameworks>netstandard2.0</PortableOnlyFrameworks>
|
|
<PlatformAndPortableFrameworks>$(PortableOnlyFrameworks);$(PlatformSpecificFrameworks)</PlatformAndPortableFrameworks>
|
|
|
|
<TargetPlatformMinVersion Condition=" '$(TargetFramework)' == 'win8' ">8.0</TargetPlatformMinVersion>
|
|
|
|
<Title>PInvoke.$(MSBuildProjectName)</Title>
|
|
<Authors>Andrew Arnott</Authors>
|
|
<Summary>P/Invoke methods for the Windows $(MSBuildProjectName).dll.</Summary>
|
|
<Description>P/Invoke methods for the Windows $(MSBuildProjectName).dll.</Description>
|
|
<PackageProjectUrl>https://github.com/dotnet/pinvoke</PackageProjectUrl>
|
|
<Copyright>Copyright © .NET Foundation and Contributors</Copyright>
|
|
<Tags>pinvoke .net pcl</Tags>
|
|
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
|
<PublishRepositoryUrl>true</PublishRepositoryUrl>
|
|
<EmbedUntrackedSources>true</EmbedUntrackedSources>
|
|
<IncludeSymbols Condition=" '$(DebugType)' != 'embedded' ">true</IncludeSymbols>
|
|
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="all" />
|
|
<PackageReference Include="Nerdbank.GitVersioning" Version="3.5.119" PrivateAssets="all" />
|
|
<!-- Use the Unstable package ID so that update tools will help us keep it current even though it seems to be ever-unstable lately. -->
|
|
<PackageReference Include="StyleCop.Analyzers.Unstable" Version="1.2.0.435" PrivateAssets="all" />
|
|
<PackageReference Include="CSharpIsNullAnalyzer" Version="0.1.329" PrivateAssets="all" />
|
|
<PackageReference Include="DotNetAnalyzers.DocumentationAnalyzers" Version="1.0.0-beta.59" PrivateAssets="all" />
|
|
</ItemGroup>
|
|
<ItemGroup Condition=" '$(IsCodeGenerationProject)' != 'true' ">
|
|
<ProjectReference Include="$(RepoRootPath)src\CodeGenerationAttributes\CodeGenerationAttributes.csproj" PrivateAssets="all">
|
|
<Private>false</Private>
|
|
<OutputItemType>Analyzer</OutputItemType>
|
|
</ProjectReference>
|
|
<ProjectReference Include="$(RepoRootPath)src\CodeGeneration\CodeGeneration.csproj">
|
|
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
|
<OutputItemType>Analyzer</OutputItemType>
|
|
<SkipGetTargetFrameworkProperties>true</SkipGetTargetFrameworkProperties>
|
|
<UndefineProperties>TargetFramework</UndefineProperties>
|
|
<Private>false</Private>
|
|
</ProjectReference>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<AdditionalFiles Include="$(MSBuildThisFileDirectory)stylecop.json" Link="stylecop.json" />
|
|
</ItemGroup>
|
|
|
|
<PropertyGroup Condition=" '$(IsCodeGenerationProject)' != 'true' ">
|
|
<RootNamespace>PInvoke</RootNamespace>
|
|
<AssemblyName>PInvoke.$(MSBuildProjectName)</AssemblyName>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<GeneratorAssemblySearchPaths Include="$(RepoRootPath)bin\$(Configuration)\netstandard2.0\" />
|
|
<AdditionalFiles Include="$(MSBuildThisFileDirectory)../stylecop.json"/>
|
|
<None Include="$(MSBuildProjectName).exports.txt" Condition=" Exists('$(MSBuildProjectName).exports.txt') and '$(TargetFramework)' == 'net45' ">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</None>
|
|
</ItemGroup>
|
|
|
|
<ItemDefinitionGroup>
|
|
<!-- We always want MSBuild properties generated that point at the restored location of each package. -->
|
|
<PackageReference GeneratePathProperty="true" />
|
|
</ItemDefinitionGroup>
|
|
|
|
<Target Name="PrepareReleaseNotes" BeforeTargets="GenerateNuspec" DependsOnTargets="GetBuildVersion">
|
|
<PropertyGroup>
|
|
<PackageReleaseNotes>https://github.com/dotnet/pinvoke/releases/tag/v$(Version)</PackageReleaseNotes>
|
|
</PropertyGroup>
|
|
</Target>
|
|
|
|
<PropertyGroup Condition="'$(IsWpfTempProject)' == ''">
|
|
<IsWpfTempProject>false</IsWpfTempProject>
|
|
<IsWpfTempProject Condition="$(MSBuildProjectName.EndsWith('_wpftmp'))">true</IsWpfTempProject>
|
|
</PropertyGroup>
|
|
|
|
<!--
|
|
Inspired by https://github.com/dotnet/arcade/blob/cbfa29d4e859622ada3d226f90f103f659665d31/src/Microsoft.DotNet.Arcade.Sdk/tools/Workarounds.props#L14-L31
|
|
WPF temp-projects do not import .props and .targets files from NuGet packages.
|
|
(see https://github.com/dotnet/sourcelink/issues/91).
|
|
|
|
Property _TargetAssemblyProjectName is set by GenerateTemporaryTargetAssembly task.
|
|
Disable Source Link and Xliff in WPF temp projects to avoid generating non-deterministic file names to obj dir.
|
|
The project name is non-deterministic and is included in the Source Link json file name and xlf directory names.
|
|
It's also not necessary to generate these assets.
|
|
-->
|
|
<PropertyGroup Condition="'$(IsWpfTempProject)' == 'true'">
|
|
<_WpfTempProjectNuGetFilePathNoExt>$(BaseIntermediateOutputPath)..\$(_TargetAssemblyProjectName)\$(_TargetAssemblyProjectName)$(MSBuildProjectExtension).nuget.g</_WpfTempProjectNuGetFilePathNoExt>
|
|
|
|
<EnableSourceLink>false</EnableSourceLink>
|
|
<EmbedUntrackedSources>false</EmbedUntrackedSources>
|
|
<DeterministicSourcePaths>false</DeterministicSourcePaths>
|
|
<EnableXlfLocalization>false</EnableXlfLocalization>
|
|
</PropertyGroup>
|
|
|
|
<!-- Workaround https://github.com/dotnet/wpf/issues/810 -->
|
|
<Import Project="$(_WpfTempProjectNuGetFilePathNoExt).props" Condition="'$(_WpfTempProjectNuGetFilePathNoExt)' != '' and Exists('$(_WpfTempProjectNuGetFilePathNoExt).props')"/>
|
|
</Project>
|