Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dir.props « pkg - github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 495fa71341b7f0ebedc20262326570b50a26ae1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="..\dir.props" />

  <PropertyGroup>
    <!-- Used to determine if we should build some packages only once across multiple official build legs.
         For offline builds we still set OfficialBuildId but we need to build all the packages for a single
         leg only, so we also take DotNetBuildOffline into account. -->
    <BuildingAnOfficialBuildLeg Condition="'$(BuildingAnOfficialBuildLeg)' == '' AND '$(OfficialBuildId)' != '' AND '$(DotNetBuildOffline)' != 'true'">true</BuildingAnOfficialBuildLeg>
  </PropertyGroup>

  <!-- Packages opt-in to automatic RID-specific builds by placing a *.RID.props next to their project
       that defines the OfficialBuildRID item: all RIDs targeted by the package -->
  <Import Project="$(MSBuildProjectDirectory)\*.rids.props" />

  <!-- create the "BuildRID" item which is the set of all supported RIDs, with metadata.
       We'll add a RID for the current platform even if it isn't in the officially supported set -->
  <ItemGroup Condition="'@(OfficialBuildRID)' != ''">
    <BuildRID Include="@(OfficialBuildRID)" Exclude="$(PackageRID)"/>
    <BuildRID Include="$(PackageRID)">
      <Platform Condition="'$(ArchGroup)' == 'x64'">amd64</Platform>
      <Platform Condition="'$(ArchGroup)' != 'x64'">$(ArchGroup)</Platform>
    </BuildRID>
  </ItemGroup>

  <!-- create the "Project" item which is the current $(MSBuildProjectName).pkgproj with meta-data for all
       supported RIDs -->
  <ItemGroup>
    <_project Include="@(BuildRID)">
      <Platform Condition="'%(Platform)' == ''">amd64</Platform>
      <PackageTargetRuntime>%(Identity)</PackageTargetRuntime>
      <AdditionalProperties>PackageTargetRuntime=%(Identity);Platform=%(Platform)</AdditionalProperties>
    </_project>

    <Project Include="@(_project->'$(MSBuildProjectName).pkgproj')" />
  </ItemGroup>

  <!-- Add path globs specific to native binaries to exclude unnecessary files from packages. -->
  <Choose>
    <When Condition="$(PackageTargetRuntime.StartsWith('win'))"/>
    <When Condition="$(PackageTargetRuntime.StartsWith('osx'))">
      <PropertyGroup>
        <LibraryFileExtension>.dylib</LibraryFileExtension>
        <SymbolFileExtension>.dwarf</SymbolFileExtension>
      </PropertyGroup>
    </When>
    <Otherwise>
      <PropertyGroup>
        <LibraryFileExtension>.so</LibraryFileExtension>
        <SymbolFileExtension>.dbg</SymbolFileExtension>
      </PropertyGroup>
    </Otherwise>
  </Choose>
  <ItemGroup>
    <AdditionalLibPackageExcludes Condition="'$(SymbolFileExtension)' != ''" Include="%2A%2A\%2A$(SymbolFileExtension)" />
    <AdditionalSymbolPackageExcludes Condition="'$(LibraryFileExtension)' != ''" Include="%2A%2A\%2A.a;%2A%2A\%2A$(LibraryFileExtension)" />
  </ItemGroup>

  <PropertyGroup>
    <!-- BlockStable on private packages by default -->
    <BlockStable Condition="'$(BlockStable)' == '' and $(MSBuildProjectName.Contains('Private'))">true</BlockStable>
  </PropertyGroup>

</Project>