diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props
index ae79f273..90ff5345 100644
--- a/platforms/Windows/SideBySideUpgradeStrategy.props
+++ b/platforms/Windows/SideBySideUpgradeStrategy.props
@@ -17,10 +17,14 @@
-->
- {7E95DC06-7F84-4E8E-A038-8304AF0468FB}
- {87019842-3F3E-4227-B5C5-23A8EF72AD89}
- {91D382AF-1E92-44DC-A4AD-AEE91C1B5160}
- {8DD91C86-D13D-490B-B06B-9522A9CF504C}
+ {7E95DC06-7F84-4E8E-A038-8304AF0468FB}
+ {0F18B0C5-F6EE-46DE-A930-E666BEE6A9C3}
+ {87019842-3F3E-4227-B5C5-23A8EF72AD89}
+ {BBF4E043-FAB3-4E7A-9E6D-714E3F3EBA9C}
+ {91D382AF-1E92-44DC-A4AD-AEE91C1B5160}
+ {6F26625B-7662-4631-8E0E-F2244339ED37}
+ {8DD91C86-D13D-490B-B06B-9522A9CF504C}
+ {C5519168-CF7B-4127-98B7-D886D9789B42}
{BEA8C6DC-F73E-445B-9486-2333D1CF2886}
{313B9C1F-D5B5-4FED-B7E0-138F1EE6B26A}
{01AFF1CF-A025-41B6-BCBC-728D794353FD}
@@ -54,10 +58,14 @@
$(DefineConstants);
BundleUpgradeCode=$(BundleUpgradeCode);
- BldUpgradeCode=$(BldUpgradeCode);
- CliUpgradeCode=$(CliUpgradeCode);
- DbgUpgradeCode=$(DbgUpgradeCode);
- IdeUpgradeCode=$(IdeUpgradeCode);
+ BldAssertsUpgradeCode=$(BldAssertsUpgradeCode);
+ BldNoAssertsUpgradeCode=$(BldNoAssertsUpgradeCode);
+ CliAssertsUpgradeCode=$(CliAssertsUpgradeCode);
+ CliNoAssertsUpgradeCode=$(CliNoAssertsUpgradeCode);
+ DbgAssertsUpgradeCode=$(DbgAssertsUpgradeCode);
+ DbgNoAssertsUpgradeCode=$(DbgNoAssertsUpgradeCode);
+ IdeAssertsUpgradeCode=$(IdeAssertsUpgradeCode);
+ IdeNoAssertsUpgradeCode=$(IdeNoAssertsUpgradeCode);
RtlUpgradeCode=$(RtlUpgradeCode);
AndroidPlatformUpgradeCode=$(AndroidPlatformUpgradeCode);
WindowsPlatformUpgradeCode=$(WindowsPlatformUpgradeCode);
diff --git a/platforms/Windows/bld/bld.wixproj b/platforms/Windows/bld/asserts/bld.asserts.wixproj
similarity index 97%
rename from platforms/Windows/bld/bld.wixproj
rename to platforms/Windows/bld/asserts/bld.asserts.wixproj
index 0f3385e8..bd53ebaa 100644
--- a/platforms/Windows/bld/bld.wixproj
+++ b/platforms/Windows/bld/asserts/bld.asserts.wixproj
@@ -5,6 +5,7 @@
_USR_LIB_CLANG=$(ImageRoot)\Toolchains\$(ProductVersion)+Asserts\usr\lib\clang;
_USR_LIB_SWIFT_CLANG=$(ImageRoot)\Toolchains\$(ProductVersion)+Asserts\usr\lib\swift\clang;
+ bld.asserts
diff --git a/platforms/Windows/bld/asserts/bld.asserts.wxs b/platforms/Windows/bld/asserts/bld.asserts.wxs
new file mode 100644
index 00000000..8d972e11
--- /dev/null
+++ b/platforms/Windows/bld/asserts/bld.asserts.wxs
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/bld/bld.wxi b/platforms/Windows/bld/bld.wxi
new file mode 100644
index 00000000..b3660e35
--- /dev/null
+++ b/platforms/Windows/bld/bld.wxi
@@ -0,0 +1,580 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/bld/bld.wxs b/platforms/Windows/bld/bld.wxs
deleted file mode 100644
index 0af0ebea..00000000
--- a/platforms/Windows/bld/bld.wxs
+++ /dev/null
@@ -1,581 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/platforms/Windows/bld/noasserts/bld.noasserts.wixproj b/platforms/Windows/bld/noasserts/bld.noasserts.wixproj
new file mode 100644
index 00000000..6b9d4f5b
--- /dev/null
+++ b/platforms/Windows/bld/noasserts/bld.noasserts.wixproj
@@ -0,0 +1,36 @@
+
+
+
+ $(DefineConstants);
+ _USR_LIB_CLANG_NOASSERTS=$(ImageRoot)\Toolchains\$(ProductVersion)+Asserts\usr\lib\clang;
+ _USR_LIB_SWIFT_CLANG_NOASSERTS=$(ImageRoot)\Toolchains\$(ProductVersion)+Asserts\usr\lib\swift\clang;
+
+ bld.noasserts
+
+
+
+
+
+
+
+
+ ClangResources_noasserts
+ _usr_lib_clang_noasserts
+ var._USR_LIB_CLANG_NOASSERTS
+ true
+ true
+ true
+
+
+
+
+
+ SwiftClangResources_noasserts
+ _usr_lib_swift_clang_noasserts
+ var._USR_LIB_SWIFT_CLANG_NOASSERTS
+ true
+ true
+ true
+
+
+
diff --git a/platforms/Windows/bld/noasserts/bld.noasserts.wxs b/platforms/Windows/bld/noasserts/bld.noasserts.wxs
new file mode 100644
index 00000000..c0b96802
--- /dev/null
+++ b/platforms/Windows/bld/noasserts/bld.noasserts.wxs
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/bundle/installer.wixproj b/platforms/Windows/bundle/installer.wixproj
index b62f1e58..0f991aa8 100644
--- a/platforms/Windows/bundle/installer.wixproj
+++ b/platforms/Windows/bundle/installer.wixproj
@@ -8,6 +8,7 @@
$(DefineConstants);
IncludeAndroid=$(Platforms.Contains("android"));
IncludeWindows=$(Platforms.Contains("windows"));
+ IncludeNoAsserts=$(ToolchainVariants.Contains("noasserts"));
@@ -16,10 +17,20 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs
index 717a719b..3d951c23 100644
--- a/platforms/Windows/bundle/installer.wxs
+++ b/platforms/Windows/bundle/installer.wxs
@@ -54,7 +54,16 @@
-
-
+
@@ -726,7 +725,7 @@
-
+
@@ -735,7 +734,7 @@
-
+
@@ -749,7 +748,7 @@
-
+
@@ -757,4 +756,4 @@
-
+
diff --git a/platforms/Windows/cli/noasserts/cli.noasserts.wixproj b/platforms/Windows/cli/noasserts/cli.noasserts.wixproj
new file mode 100644
index 00000000..5547e347
--- /dev/null
+++ b/platforms/Windows/cli/noasserts/cli.noasserts.wixproj
@@ -0,0 +1,27 @@
+
+
+
+ $(DefineConstants);
+ SWIFT_DOCC_BUILD=$(SWIFT_DOCC_BUILD);
+ INCLUDE_SWIFT_DOCC=$(INCLUDE_SWIFT_DOCC);
+ SWIFT_FORMAT_BUILD=$(SWIFT_FORMAT_BUILD);
+ SWIFT_DOCC_RENDER_ARTIFACT_ROOT_DIST=$(SWIFT_DOCC_RENDER_ARTIFACT_ROOT)\dist;
+
+ cli.noasserts
+
+
+
+
+
+
+
+
+ DocCRender_noasserts
+ _usr_share_docc_render_noasserts
+ var.SWIFT_DOCC_RENDER_ARTIFACT_ROOT_DIST
+ true
+ true
+ true
+
+
+
diff --git a/platforms/Windows/cli/noasserts/cli.noasserts.wxs b/platforms/Windows/cli/noasserts/cli.noasserts.wxs
new file mode 100644
index 00000000..11e34234
--- /dev/null
+++ b/platforms/Windows/cli/noasserts/cli.noasserts.wxs
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/dbg/asserts/dbg.asserts.wixproj b/platforms/Windows/dbg/asserts/dbg.asserts.wixproj
new file mode 100644
index 00000000..aa21e7f8
--- /dev/null
+++ b/platforms/Windows/dbg/asserts/dbg.asserts.wixproj
@@ -0,0 +1,5 @@
+
+
+ dbg.asserts
+
+
diff --git a/platforms/Windows/dbg/asserts/dbg.asserts.wxs b/platforms/Windows/dbg/asserts/dbg.asserts.wxs
new file mode 100644
index 00000000..5394c833
--- /dev/null
+++ b/platforms/Windows/dbg/asserts/dbg.asserts.wxs
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/dbg/dbg.wixproj b/platforms/Windows/dbg/dbg.wixproj
deleted file mode 100644
index 8a93eeab..00000000
--- a/platforms/Windows/dbg/dbg.wixproj
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/platforms/Windows/dbg/dbg.wxi b/platforms/Windows/dbg/dbg.wxi
new file mode 100644
index 00000000..399013c7
--- /dev/null
+++ b/platforms/Windows/dbg/dbg.wxi
@@ -0,0 +1,155 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/dbg/dbg.wxs b/platforms/Windows/dbg/dbg.wxs
deleted file mode 100644
index 94848bc2..00000000
--- a/platforms/Windows/dbg/dbg.wxs
+++ /dev/null
@@ -1,156 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/platforms/Windows/dbg/noasserts/dbg.noasserts.wixproj b/platforms/Windows/dbg/noasserts/dbg.noasserts.wixproj
new file mode 100644
index 00000000..ac16dbb5
--- /dev/null
+++ b/platforms/Windows/dbg/noasserts/dbg.noasserts.wixproj
@@ -0,0 +1,5 @@
+
+
+ dbg.noasserts
+
+
diff --git a/platforms/Windows/dbg/noasserts/dbg.noasserts.wxs b/platforms/Windows/dbg/noasserts/dbg.noasserts.wxs
new file mode 100644
index 00000000..fd1ea6a1
--- /dev/null
+++ b/platforms/Windows/dbg/noasserts/dbg.noasserts.wxs
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/ide/asserts/ide.asserts.wixproj b/platforms/Windows/ide/asserts/ide.asserts.wixproj
new file mode 100644
index 00000000..1e311f8c
--- /dev/null
+++ b/platforms/Windows/ide/asserts/ide.asserts.wixproj
@@ -0,0 +1,5 @@
+
+
+ ide.asserts
+
+
diff --git a/platforms/Windows/ide/asserts/ide.asserts.wxs b/platforms/Windows/ide/asserts/ide.asserts.wxs
new file mode 100644
index 00000000..ae3c9c9f
--- /dev/null
+++ b/platforms/Windows/ide/asserts/ide.asserts.wxs
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/ide/ide.wixproj b/platforms/Windows/ide/ide.wixproj
deleted file mode 100644
index 8a93eeab..00000000
--- a/platforms/Windows/ide/ide.wixproj
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/platforms/Windows/ide/ide.wxi b/platforms/Windows/ide/ide.wxi
new file mode 100644
index 00000000..89096ee5
--- /dev/null
+++ b/platforms/Windows/ide/ide.wxi
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/ide/ide.wxs b/platforms/Windows/ide/ide.wxs
deleted file mode 100644
index 97170e15..00000000
--- a/platforms/Windows/ide/ide.wxs
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/platforms/Windows/ide/noasserts/ide.noasserts.wixproj b/platforms/Windows/ide/noasserts/ide.noasserts.wixproj
new file mode 100644
index 00000000..fa37d563
--- /dev/null
+++ b/platforms/Windows/ide/noasserts/ide.noasserts.wixproj
@@ -0,0 +1,5 @@
+
+
+ ide.noasserts
+
+
diff --git a/platforms/Windows/ide/noasserts/ide.noasserts.wxs b/platforms/Windows/ide/noasserts/ide.noasserts.wxs
new file mode 100644
index 00000000..9a1244ab
--- /dev/null
+++ b/platforms/Windows/ide/noasserts/ide.noasserts.wxs
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs
index b1dd1330..f82ce7b4 100644
--- a/platforms/Windows/shared/shared.wxs
+++ b/platforms/Windows/shared/shared.wxs
@@ -37,7 +37,7 @@
-
+
@@ -59,6 +59,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+