diff --git a/eng/Bundle.proj b/eng/Bundle.proj
index 626184870d4..4f6c79f644a 100644
--- a/eng/Bundle.proj
+++ b/eng/Bundle.proj
@@ -106,9 +106,27 @@
<_DcpBinlog Condition="'$(ContinuousIntegrationBuild)' == 'true'">-bl:$(ArtifactsLogDir)RestoreDcp.binlog
+
+
+ <_BundleBuildOs Condition="$(TargetRid.StartsWith('win-'))">windows
+ <_BundleBuildOs Condition="$(TargetRid.StartsWith('osx-'))">darwin
+ <_BundleBuildOs Condition="$(TargetRid.StartsWith('linux-musl-'))">linux-musl
+ <_BundleBuildOs Condition="'$(_BundleBuildOs)' == '' and $(TargetRid.StartsWith('linux-'))">linux
+
+ <_BundleBuildArch Condition="$(TargetRid.EndsWith('-x64'))">amd64
+ <_BundleBuildArch Condition="$(TargetRid.EndsWith('-arm64'))">arm64
+ <_BundleBuildArch Condition="$(TargetRid.EndsWith('-x86'))">386
-
-
+
+
+
diff --git a/tools/CreateLayout/Program.cs b/tools/CreateLayout/Program.cs
index b04ec44e7a1..93f5af57b24 100644
--- a/tools/CreateLayout/Program.cs
+++ b/tools/CreateLayout/Program.cs
@@ -189,8 +189,10 @@ private Task CopyDcpAsync()
var dcpPath = FindDcpPath();
if (dcpPath is null)
{
- Log(" WARNING: DCP not found. Skipping.");
- return Task.CompletedTask;
+ throw new InvalidOperationException(
+ $"DCP package not found for RID '{_rid}'. " +
+ $"Ensure the DCP NuGet package for the target platform is restored before running CreateLayout. " +
+ $"A bundle without DCP would fail layout validation at runtime.");
}
var dcpDir = Path.Combine(_outputPath, "dcp");