aspnetcore/build/repo.props

153 lines
7.6 KiB
XML

<Project>
<Import Project="..\eng\targets\RuntimeIdentifiers.props" />
<PropertyGroup>
<!-- This repo does not have solutions to build -->
<DisableDefaultTargets>true</DisableDefaultTargets>
<DisableDefaultItems>true</DisableDefaultItems>
<BuildSolutions>false</BuildSolutions>
<SkipTests>false</SkipTests>
<SkipTests Condition="'$(CompileOnly)' == 'true'">true</SkipTests>
<IsFinalBuild Condition="'$(IsFinalBuild)' == ''">false</IsFinalBuild>
<SubmoduleRoot>$(RepositoryRoot)modules\</SubmoduleRoot>
<DependencyPackageDir>$(RepositoryRoot).deps\build\</DependencyPackageDir>
<SignedDependencyPackageDir>$(RepositoryRoot).deps\Signed\Packages\</SignedDependencyPackageDir>
<SignCheckExclusionsFile>$(RepositoryRoot)eng\signcheck.exclusions.txt</SignCheckExclusionsFile>
<SharedSourcesFolder>$(RepositoryRoot)src\Shared\</SharedSourcesFolder>
</PropertyGroup>
<ItemGroup>
<SharedSourceDirectories Include="$(SharedSourcesFolder)Hosting.WebHostBuilderFactory\" />
</ItemGroup>
<ItemGroup>
<IntermediateInstaller Include="win-x86" FileExt=".zip" />
<IntermediateInstaller Include="win-x86" FileExt=".wixlib" />
<IntermediateInstaller Include="win-x64" FileExt=".zip" />
<IntermediateInstaller Include="win-x64" FileExt=".wixlib" />
<IntermediateInstaller Include="win-arm" FileExt=".zip" />
<IntermediateInstaller Include="osx-x64" FileExt=".tar.gz" />
<IntermediateInstaller Include="linux-x64" FileExt=".tar.gz" />
<IntermediateInstaller Include="linux-arm" FileExt=".tar.gz" />
<IntermediateInstaller Include="linux-musl-x64" FileExt=".tar.gz" />
<NativeInstaller Include="win-x86" FileExt=".exe" />
<NativeInstaller Include="win-x86" FileExt=".zip" />
<NativeInstaller Include="win-x64" FileExt=".exe" />
<NativeInstaller Include="win-x64" FileExt=".zip" />
<NativeInstaller Include="win-arm" FileExt=".zip" />
<NativeInstaller Include="osx-x64" FileExt=".tar.gz" />
<NativeInstaller Include="linux-x64" FileExt=".tar.gz" />
<NativeInstaller Include="linux-arm" FileExt=".tar.gz" />
<NativeInstaller Include="linux-musl-x64" FileExt=".tar.gz" />
<NativeInstaller Include="x64" FileExt=".deb" />
<NativeInstaller Include="x64" FileExt=".rpm" />
<NativeInstaller Include="rh.rhel.7-x64" FileExt=".rpm" />
<SharedFrameworkName Include="Microsoft.AspNetCore.All" />
<SharedFrameworkName Include="Microsoft.AspNetCore.App" />
</ItemGroup>
<ItemGroup>
<!-- These projects use 'legacy' csproj, which is not supported by dotnet-msbuild. -->
<ProjectToExclude Include="
$(RepositoryRoot)src\Servers\HttpSys\samples\TestClient\TestClient.csproj;
$(RepositoryRoot)src\Middleware\WebSockets\samples\TestServer\TestServer.csproj;
"
Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
<!-- Exclude the websockets samples for now because they use classic .csproj, which is not yet supported in our build. -->
<ProjectToExclude Include="
$(RepositoryRoot)src\Middleware\WebSockets\samples\**\*.csproj;
$(RepositoryRoot)src\Middleware\NodeServices.Sockets\**\*.csproj;
$(RepositoryRoot)src\Tools\dotnet-watch\test\TestProjects\**\*.csproj;
$(RepositoryRoot)src\Razor\Razor.Design\test\testassets\**\*.*proj;
$(RepositoryRoot)src\SignalR\clients\cpp\**\*.*proj;
$(RepositoryRoot)src\SignalR\clients\ts\**\node_modules\**\*.*proj;
" />
</ItemGroup>
<Choose>
<!-- Project selection can be overridden on the command line by passing in -projects -->
<When Condition="'$(Projects)' != ''">
<ItemGroup>
<ProjectToBuild Include="$(Projects)" Exclude="@(ProjectToExclude)">
<RestoreInParallel Condition="'%(Extension)' == '.npmproj'">false</RestoreInParallel>
</ProjectToBuild>
</ItemGroup>
</When>
<Otherwise>
<ItemGroup>
<SamplesProject Include="$(RepositoryRoot)src\**\samples\**\*.csproj;"/>
<ProjectToExclude Include="@(SamplesProject)" Condition="'$(BuildSamples)' == 'false' "/>
<ProjectToBuild Condition=" '$(OS)' == 'Windows_NT' AND '$(MSBuildRuntimeType)' != 'Core' " Include="$(RepositoryRoot)src\Servers\**\*.vcxproj">
<!-- Required to prevent triggering double-builds. See eng\targets\ResolveIisReferences.targets for details. -->
<AdditionalProperties Condition="'$(SharedFxRid)' == 'win-x64'">Platform=x64</AdditionalProperties>
<AdditionalProperties Condition="'$(SharedFxRid)' == 'win-x86'">Platform=x86</AdditionalProperties>
</ProjectToBuild>
<ProjectToBuild Condition="'$(SkipNpm)' != 'true'"
Include="$(RepositoryRoot)src\SignalR\**\*.npmproj"
RestoreInParallel="false"
Exclude="@(ProjectToExclude)" />
<ProjectToBuild Condition="'$(SkipJavaClient)' != 'true'"
Include="$(RepositoryRoot)src\SignalR\**\*.javaproj"
Exclude="@(ProjectToExclude)" />
<ProjectToBuild Include="
$(RepositoryRoot)src\DefaultBuilder\**\*.*proj;
$(RepositoryRoot)src\Features\JsonPatch\**\*.*proj;
$(RepositoryRoot)src\DataProtection\**\*.*proj;
$(RepositoryRoot)src\Antiforgery\**\*.*proj;
$(RepositoryRoot)src\Hosting\**\*.*proj;
$(RepositoryRoot)src\Http\**\*.*proj;
$(RepositoryRoot)src\Html\**\*.*proj;
$(RepositoryRoot)src\Identity\**\*.*proj;
$(RepositoryRoot)src\Servers\**\*.csproj;
$(RepositoryRoot)src\Servers\**\*.pkgproj;
$(RepositoryRoot)src\Security\**\*.*proj;
$(RepositoryRoot)src\Shared\**\*.*proj;
$(RepositoryRoot)src\Tools\**\*.*proj;
$(RepositoryRoot)src\Middleware\**\*.*proj;
$(RepositoryRoot)src\Razor\**\*.*proj;
$(RepositoryRoot)src\Mvc\**\*.*proj;
$(RepositoryRoot)src\Azure\**\*.*proj;
$(RepositoryRoot)src\MusicStore\**\*.*proj;
$(RepositoryRoot)src\SignalR\**\*.csproj;
"
Exclude="
@(ProjectToExclude);
$(RepositoryRoot)**\node_modules\**\*;
$(RepositoryRoot)**\bin\**\*;
$(RepositoryRoot)**\obj\**\*;">
<RestoreInParallel Condition="'%(Extension)' == '.npmproj'">false</RestoreInParallel>
</ProjectToBuild>
</ItemGroup>
</Otherwise>
</Choose>
<!-- Properties for publishing -->
<PropertyGroup>
<!-- myget = non-orchestrated builds -->
<PublishToMyGet Condition=" $(PublishType.Contains('myget')) ">true</PublishToMyGet>
<!-- azure = non-orchestrated builds -->
<PublishToAzureFeed Condition="$(PublishType.Contains('azure'))">true</PublishToAzureFeed>
<!-- blob = orchestrated builds -->
<PublishToTransportFeed Condition="$(PublishType.Contains('blob'))">true</PublishToTransportFeed>
</PropertyGroup>
<Import Project="runtimes.props" />
<Import Project="sources.props" />
<Import Project="external-dependencies.props" />
<Import Project="artifacts.props" />
<Import Project="submodules.props" />
<Import Project="CodeSign.props" />
</Project>