diff --git a/config.json b/config.json
index bf20cb414ad3..5d568358276b 100644
--- a/config.json
+++ b/config.json
@@ -31,11 +31,17 @@
"defaultValue": false
},
"RuntimeOS": {
- "description": "The RuntimeOS used for building and restoring native OS dependent assets (i.e. RID specific binaries)",
+ "description": "The RuntimeOS of the build system.",
"valueType": "property",
"values": ["win7", "osx.10.10", "ubuntu.14.04", "ubuntu.16.04", "etc-other-rid-based-os-names"],
"defaultValue": ""
},
+ "PackageRID": {
+ "description": "The RID of the target package.",
+ "valueType": "property",
+ "values": ["win7-x64", "ubuntu.14.04-x64"],
+ "defaultValue": ""
+ },
"PortableBuild": {
"description": "Indicates if this is a portable build.",
"valueType": "property",
diff --git a/dir.props b/dir.props
index e97595d2011b..31390dfbeea0 100644
--- a/dir.props
+++ b/dir.props
@@ -124,6 +124,29 @@
+
+ <_runtimeOSVersionIndex>$(RuntimeOS.IndexOfAny(".-0123456789"))
+ <_runtimeOSFamily Condition="'$(_runtimeOSVersionIndex)' != '-1'">$(RuntimeOS.SubString(0, $(_runtimeOSVersionIndex)))
+ <_portableOS>linux
+ <_portableOS Condition="'$(_runtimeOSFamily)' == 'win'">win
+ <_portableOS Condition="'$(_runtimeOSFamily)' == 'osx'">osx
+
+ <_runtimeOS>$(RuntimeOS)
+ <_runtimeOS Condition="'$(_runtimeOS)' == 'tizen.4.0.0'">ubuntu.14.04
+ <_runtimeOS Condition="'$(PortableBuild)' == 'true'">$(_portableOS)
+ $(_runtimeOS)-x64
+
+
+ <_portableOS Condition="'$(OSGroup)' == 'Unix' AND '$(_runtimeOSFamily)' != 'osx'">linux
+ <_portableOS Condition="'$(OSGroup)' == 'Windows_NT'">win
+
+ <_packageRID/>
+ <_packageRID Condition="'$(PortableBuild)' == 'true'">$(_portableOS)-$(ArchGroup)
+ <_packageRID Condition="'$(TargetGroup)' == 'uap'">win10-$(ArchGroup)
+ <_packageRID Condition="'$(TargetGroup)' == 'uapaot'">win10-$(ArchGroup)-aot
+ $(_packageRID)
+ $(RuntimeOS)-$(ArchGroup)
+
diff --git a/external/ILLink/ILLink.depproj b/external/ILLink/ILLink.depproj
index 30b57ffaf9c4..18808d3e6496 100644
--- a/external/ILLink/ILLink.depproj
+++ b/external/ILLink/ILLink.depproj
@@ -6,6 +6,7 @@
netcoreapp1.1
$(ToolsDir)ILLink
false
+ $(ToolRuntimeRID)
true
diff --git a/external/SharedFrameworkValidation/harvestPackages.SharedFramework.depproj b/external/SharedFrameworkValidation/harvestPackages.SharedFramework.depproj
index 93ebafc163a4..a1bc6c2d66f4 100644
--- a/external/SharedFrameworkValidation/harvestPackages.SharedFramework.depproj
+++ b/external/SharedFrameworkValidation/harvestPackages.SharedFramework.depproj
@@ -9,7 +9,7 @@
.NETCoreApp,Version=v1.1
netcoreapp1.1
$(RefRootPath)SharedFrameworkValidation.LKG
- $(_PublishRID)
+ $(_PackageRID)
Reference
diff --git a/external/dir.props b/external/dir.props
index 9427eac821f3..a874fd0e204f 100644
--- a/external/dir.props
+++ b/external/dir.props
@@ -1,13 +1,8 @@
- <_runtimeOSVersionIndex>$(RuntimeOS.IndexOfAny(".-0123456789"))
- <_runtimeOSFamily Condition="'$(_runtimeOSVersionIndex)' != '-1'">$(RuntimeOS.SubString(0, $(_runtimeOSVersionIndex)))
$(IntermediateOutputPath)$(OSGroup)-$(ArchGroup)/
- linux
- win
- osx
- $(RuntimeOS)-$(ArchGroup)
+ None
true
$(IntermediateOutputPath)
diff --git a/external/docs/docs.depproj b/external/docs/docs.depproj
index 60e842cc25d0..21f41e5384b8 100644
--- a/external/docs/docs.depproj
+++ b/external/docs/docs.depproj
@@ -3,7 +3,6 @@
- none
$(XmlDocDir)
false
diff --git a/external/ilasm/ilasm.depproj b/external/ilasm/ilasm.depproj
index fb3e77537290..9a7184b98a6a 100644
--- a/external/ilasm/ilasm.depproj
+++ b/external/ilasm/ilasm.depproj
@@ -2,10 +2,7 @@
-
- $(RuntimeOS)-x64
-
- ubuntu.14.04-x64
+ $(ToolRuntimeRID)
$(ToolsDir)ilasm
false
true
diff --git a/external/netfx-conflicts/netfx-conflicts.depproj b/external/netfx-conflicts/netfx-conflicts.depproj
index 0abf1ec0063a..51fc85b5d164 100644
--- a/external/netfx-conflicts/netfx-conflicts.depproj
+++ b/external/netfx-conflicts/netfx-conflicts.depproj
@@ -8,7 +8,6 @@
.NETStandard,Version=v1.0
netstandard1.1;netstandard1.2;netstandard1.3
Reference
- None
false
diff --git a/external/netfx/netfx.depproj b/external/netfx/netfx.depproj
index d8e461a6a9bd..a860b41ed94a 100644
--- a/external/netfx/netfx.depproj
+++ b/external/netfx/netfx.depproj
@@ -5,7 +5,6 @@
true
Reference
- None
$(RefPath)
diff --git a/external/netstandard/netstandard.depproj b/external/netstandard/netstandard.depproj
index 92e300ef55ee..f818449ea9d7 100644
--- a/external/netstandard/netstandard.depproj
+++ b/external/netstandard/netstandard.depproj
@@ -6,7 +6,6 @@
true
true
Reference
- None
<_NETStandardTFMFolder Condition="'$(NuGetTargetMoniker)' == '.NETStandard,Version=v2.0'">netstandard2.0
diff --git a/external/portable/portable.depproj b/external/portable/portable.depproj
index 54b1f268db0a..1ac886ed1299 100644
--- a/external/portable/portable.depproj
+++ b/external/portable/portable.depproj
@@ -4,7 +4,6 @@
true
Reference
- None
diff --git a/external/runtime/runtime.depproj b/external/runtime/runtime.depproj
index 7423fd37ba91..fbf223dff331 100644
--- a/external/runtime/runtime.depproj
+++ b/external/runtime/runtime.depproj
@@ -2,11 +2,7 @@
-
- win-x64
- linux-x64
- win10-$(ArchGroup)
- win10-$(ArchGroup)-aot
+ $(PackageRID)
true
diff --git a/external/winrt/winrt.depproj b/external/winrt/winrt.depproj
index 67ffa0b1d560..4fc7a6203b9d 100644
--- a/external/winrt/winrt.depproj
+++ b/external/winrt/winrt.depproj
@@ -6,7 +6,6 @@
.winmd
true
Reference
- None
diff --git a/pkg/Microsoft.Private.CoreFx.NETCoreApp/netcoreapp.rids.props b/pkg/Microsoft.Private.CoreFx.NETCoreApp/netcoreapp.rids.props
index 6269203455cf..ef4618d15b45 100644
--- a/pkg/Microsoft.Private.CoreFx.NETCoreApp/netcoreapp.rids.props
+++ b/pkg/Microsoft.Private.CoreFx.NETCoreApp/netcoreapp.rids.props
@@ -1,14 +1,5 @@
-
- linux-$(ArchGroup)
- osx-$(ArchGroup)
- win-$(ArchGroup)
-
-
- $(RuntimeOS)-$(ArchGroup)
-
-
arm
diff --git a/pkg/Microsoft.Private.CoreFx.UAP/uap.rids.props b/pkg/Microsoft.Private.CoreFx.UAP/uap.rids.props
index c92651a996ea..4dda2a8ff588 100644
--- a/pkg/Microsoft.Private.CoreFx.UAP/uap.rids.props
+++ b/pkg/Microsoft.Private.CoreFx.UAP/uap.rids.props
@@ -1,23 +1,5 @@
-
- <_aotSuffix Condition="'$(TargetGroup)' == 'uapaot'">-aot
-
-
-
-
-
-
- win10-$(ArchGroup)$(_aotSuffix)
-
-
-
-
- $(RuntimeOS)-$(ArchGroup)
-
-
-
-
x86
diff --git a/pkg/dir.props b/pkg/dir.props
index 0e27f9cdcb5a..aee4309040a2 100644
--- a/pkg/dir.props
+++ b/pkg/dir.props
@@ -2,20 +2,13 @@
-
- <_runtimeOSVersionIndex>$(RuntimeOS.IndexOfAny(".-0123456789"))
- <_runtimeOSFamily Condition="'$(_runtimeOSVersionIndex)' != '-1'">$(RuntimeOS.SubString(0, $(_runtimeOSVersionIndex)))
-
-
+ that defines the OfficialBuildRID item: all RIDs targeted by the package -->
-
+
amd64
diff --git a/src/SharedFrameworkValidation/RestoreSDKProject/RestoreSDKProject.csproj b/src/SharedFrameworkValidation/RestoreSDKProject/RestoreSDKProject.csproj
index 787ece8d164f..e4b035133d37 100644
--- a/src/SharedFrameworkValidation/RestoreSDKProject/RestoreSDKProject.csproj
+++ b/src/SharedFrameworkValidation/RestoreSDKProject/RestoreSDKProject.csproj
@@ -4,7 +4,7 @@
netcoreapp2.0
$(_RuntimeFrameworkVersion)
4.4.0-$(CoreFxExpectedPrerelease)
- $(_PublishRID)
+ $(_PackageRID)
true
diff --git a/src/SharedFrameworkValidation/SharedFrameworkValidation.proj b/src/SharedFrameworkValidation/SharedFrameworkValidation.proj
index 1891b5b6aae6..eebed9a2742e 100644
--- a/src/SharedFrameworkValidation/SharedFrameworkValidation.proj
+++ b/src/SharedFrameworkValidation/SharedFrameworkValidation.proj
@@ -10,7 +10,6 @@
$(RefRootPath)sharedFrameworkZip.LKG/shared/Microsoft.NETCore.App/$(_LKGSharedFrameworkVersion)
<_RunTestsScriptName Condition="'$(RunningOnUnix)' != 'true'">CloneAndRunTests.cmd
<_RunTestsScriptName Condition="'$(RunningOnUnix)' == 'true'">CloneAndRunTests.sh
- <_PublishRID>$(RuntimeOS)-$(ArchGroup)
@@ -57,8 +56,8 @@
- <_RestorePackagesCommand>"$(DotnetToolCommand)" restore $(MSBuildThisFileDirectory)/RestoreSDKProject/RestoreSDKProject.csproj /p:_PublishRID=$(_PublishRID) /p:_RuntimeFrameworkVersion=$(MicrosoftNETCoreAppPackageVersion) /p:CoreFxExpectedPrerelease=$(CoreFxExpectedPrerelease)
- <_PublishPackagesProjectCommand>"$(DotnetToolCommand)" publish $(MSBuildThisFileDirectory)/RestoreSDKProject/RestoreSDKProject.csproj /p:_PublishRID=$(_PublishRID) /p:_MetaPackageDestinationFolder=$(SharedFrameworkValidationRefPath) -f netcoreapp2.0 -r $(_PublishRID) -o $(SharedFrameworkValidationRuntimePath)
+ <_RestorePackagesCommand>"$(DotnetToolCommand)" restore $(MSBuildThisFileDirectory)/RestoreSDKProject/RestoreSDKProject.csproj /p:_PackageRID=$(PackageRID) /p:_RuntimeFrameworkVersion=$(MicrosoftNETCoreAppPackageVersion) /p:CoreFxExpectedPrerelease=$(CoreFxExpectedPrerelease)
+ <_PublishPackagesProjectCommand>"$(DotnetToolCommand)" publish $(MSBuildThisFileDirectory)/RestoreSDKProject/RestoreSDKProject.csproj /p:_PackageRID=$(PackageRID) /p:_MetaPackageDestinationFolder=$(SharedFrameworkValidationRefPath) -f netcoreapp2.0 -o $(SharedFrameworkValidationRuntimePath) -r $(PackageRID)
@@ -66,7 +65,7 @@