diff --git a/setup/FSharp.SDK/FSharp.SDK.wixproj b/setup/FSharp.SDK/FSharp.SDK.wixproj
index 04e76713f4efbd8d25c90add260bad5f224b7f0c..552ba9960351f55ddc3c600e6e01f61a865164e6 100644
--- a/setup/FSharp.SDK/FSharp.SDK.wixproj
+++ b/setup/FSharp.SDK/FSharp.SDK.wixproj
@@ -10,7 +10,8 @@
- Microsoft.FSharp.SDK
+ Microsoft.FSharp.SDK.Core
+ Microsoft.FSharp.SDK.Resources.$(LocaleCode)
da0da41f-0e00-4598-8eee-b29d31b0ca04
Package
net
@@ -74,6 +75,6 @@
-
+
\ No newline at end of file
diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Dependencies.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Dependencies.swr
new file mode 100644
index 0000000000000000000000000000000000000000..af47f6b3c1fe7aa76a4ddece6b5b1d9eca63d521
--- /dev/null
+++ b/setup/Swix/Microsoft.FSharp.Dependencies/Dependencies.swr
@@ -0,0 +1,43 @@
+use vs
+
+package name=Microsoft.FSharp.Dependencies
+ version=4.1
+
+vs.dependencies
+ vs.dependency id=Microsoft.FSharp.SDK.Core
+ version=4.1
+ type=Required
+
+ vs.dependency id=Microsoft.FSharp.SDK.Resources
+ version=4.1
+ type=Required
+
+ vs.dependency id=Microsoft.FSharp.VSIX.Full.Core
+ version=4.1
+ type=Required
+ when=Microsoft.VisualStudio.Product.Enterprise,Microsoft.VisualStudio.Product.Professional,Microsoft.VisualStudio.Product.Community
+
+ vs.dependency id=Microsoft.FSharp.VSIX.Full.Resources
+ version=4.1
+ type=Required
+ when=Microsoft.VisualStudio.Product.Enterprise,Microsoft.VisualStudio.Product.Professional,Microsoft.VisualStudio.Product.Community
+
+ vs.dependency id=Microsoft.FSharp.VSIX.Desktop.Core
+ version=4.1
+ type=Required
+ when=Microsoft.VisualStudio.Product.DesktopExpress
+
+ vs.dependency id=Microsoft.FSharp.VSIX.Desktop.Resources
+ version=4.1
+ type=Required
+ when=Microsoft.VisualStudio.Product.DesktopExpress
+
+ vs.dependency id=Microsoft.FSharp.VSIX.Web.Core
+ version=4.1
+ type=Required
+ when=Microsoft.VisualStudio.Product.WebExpress
+
+ vs.dependency id=Microsoft.FSharp.VSIX.Web.Resources
+ version=4.1
+ type=Required
+ when=Microsoft.VisualStudio.Product.WebExpress
diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr
index bf639935d7a83ccae061ba8eb3de7b9cc917382d..cc027e4bbe0dbc78b6e7d8bae3ab5c80319cfac8 100644
--- a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr
@@ -1,17 +1,7 @@
use vs
-package name=Microsoft.FSharp.Dependencies.$(VSSku)
+package name=Microsoft.FSharp.Dependencies
version=4.1
- vs.package.language=neutral
-
-vs.dependencies
- vs.dependency id=Microsoft.FSharp.VSIX.$(VSSku)
- version=4.1
- type=Required
-
- vs.dependency id=Microsoft.FSharp.SDK
- version=4.1
- type=Required
folder "InstallDir:MSBuild\Microsoft\VisualStudio\v15.0\FSharp"
file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\resources\Microsoft.FSharp.Shim.targets"
diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj
index 071b86deb0876957d7f1b252598aff9afa4d43da..40f510c7f0fe34b5e7475fe8bc44322d535811e8 100644
--- a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj
+++ b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj
@@ -10,7 +10,7 @@
$(FSharpSourcesRoot)\..\$(Configuration)
$(FSharpSourcesRoot)\..\packages
$(BinariesFolder)\insertion
- Microsoft.FSharp.Dependencies.$(VSSku)
+ Microsoft.FSharp.Dependencies
$(MSBuildThisFileDirectory)obj
@@ -19,18 +19,14 @@
$(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
$(PackagePreprocessorDefinitions);PackagesFolder=$(PackagesFolder)
- $(PackagePreprocessorDefinitions);VSSku=$(VSSku)
+
-
-
-
-
diff --git a/setup/Swix/Microsoft.FSharp.SDK.Core/Files.swr b/setup/Swix/Microsoft.FSharp.SDK.Core/Files.swr
new file mode 100644
index 0000000000000000000000000000000000000000..a3b0e1c7558e71311614caaaf91708985d72796c
--- /dev/null
+++ b/setup/Swix/Microsoft.FSharp.SDK.Core/Files.swr
@@ -0,0 +1,8 @@
+use vs
+
+package name=Microsoft.FSharp.SDK.Core
+ version=4.1
+ vs.package.type=msi
+
+vs.payloads
+ vs.payload source="$(BinariesFolder)\msi\Microsoft.FSharp.SDK.Core.msi"
diff --git a/setup/Swix/Microsoft.FSharp.SDK.Core/Microsoft.FSharp.SDK.Core.swixproj b/setup/Swix/Microsoft.FSharp.SDK.Core/Microsoft.FSharp.SDK.Core.swixproj
new file mode 100644
index 0000000000000000000000000000000000000000..03062b5d636f260410dd54e7151287c3f3cc6935
--- /dev/null
+++ b/setup/Swix/Microsoft.FSharp.SDK.Core/Microsoft.FSharp.SDK.Core.swixproj
@@ -0,0 +1,28 @@
+
+
+
+ ..\..\..\src
+ neutral
+ false
+ manifest
+ Microsoft.FSharp.SDK.Core
+ true
+ Debug
+ $(FSharpSourcesRoot)\..\$(Configuration)
+ $(BinariesFolder)\insertion
+
+
+
+
+
+ $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
+
+
+
+
+
+
+
+
+
+
diff --git a/setup/Swix/Microsoft.FSharp.SDK.Resources/Empty.swr b/setup/Swix/Microsoft.FSharp.SDK.Resources/Empty.swr
new file mode 100644
index 0000000000000000000000000000000000000000..3ffac4852873bf77cd534e15b1e6407c62a740ad
--- /dev/null
+++ b/setup/Swix/Microsoft.FSharp.SDK.Resources/Empty.swr
@@ -0,0 +1,6 @@
+use vs
+
+package name=Microsoft.FSharp.SDK.Resources
+ version=4.1
+ vs.package.type=msi
+ vs.package.language=$(LocaleRegion)
\ No newline at end of file
diff --git a/setup/Swix/Microsoft.FSharp.SDK/Files.swr b/setup/Swix/Microsoft.FSharp.SDK.Resources/Files.swr
similarity index 70%
rename from setup/Swix/Microsoft.FSharp.SDK/Files.swr
rename to setup/Swix/Microsoft.FSharp.SDK.Resources/Files.swr
index d161ff0fb99b56f86dde28f63cc83cc8273395d1..26c9847538e8282eb734ae52c6b00fb221c9ba4c 100644
--- a/setup/Swix/Microsoft.FSharp.SDK/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.SDK.Resources/Files.swr
@@ -1,9 +1,9 @@
use vs
-package name=Microsoft.FSharp.SDK
+package name=Microsoft.FSharp.SDK.Resources
version=4.1
vs.package.type=msi
vs.package.language=$(LocaleRegion)
vs.payloads
- vs.payload source="$(BinariesFolder)\msi\Microsoft.FSharp.SDK.$(LocaleCode).msi"
+ vs.payload source="$(BinariesFolder)\msi\Microsoft.FSharp.SDK.Resources.$(LocaleCode).msi"
diff --git a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj b/setup/Swix/Microsoft.FSharp.SDK.Resources/Microsoft.FSharp.SDK.Resources.swixproj
similarity index 89%
rename from setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj
rename to setup/Swix/Microsoft.FSharp.SDK.Resources/Microsoft.FSharp.SDK.Resources.swixproj
index 3e836ccb65775738e1b2b3958189f3a87ecfb48c..3ae84ecb8dec70fa93c985a94b1df7de592699a5 100644
--- a/setup/Swix/Microsoft.FSharp.SDK/Microsoft.FSharp.SDK.swixproj
+++ b/setup/Swix/Microsoft.FSharp.SDK.Resources/Microsoft.FSharp.SDK.Resources.swixproj
@@ -5,7 +5,7 @@
neutral
false
manifest
- Microsoft.FSharp.SDK.$(LocaleCode)
+ Microsoft.FSharp.SDK.Resources.$(LocaleCode)
true
Debug
$(FSharpSourcesRoot)\..\$(Configuration)
@@ -22,7 +22,11 @@
$(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack)
-
+
+
+
+
+
diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr b/setup/Swix/Microsoft.FSharp.Vsix.Core/Files.swr
similarity index 63%
rename from setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr
rename to setup/Swix/Microsoft.FSharp.Vsix.Core/Files.swr
index 2cd1df4fd55e18cac2c5f603110576f1d9d15687..5d2bc8383ef564d0a8201538d3debbed1a022dfe 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix/Core.Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Core/Files.swr
@@ -1,9 +1,8 @@
use vs
-package name=Microsoft.FSharp.VSIX.$(VSSku)
+package name=Microsoft.FSharp.VSIX.$(VSSku).Core
version=4.1
vs.package.type=vsix
- vs.package.language=$(LocaleRegion)
vs.package.vsixId=VisualFSharp
vs.payloads
diff --git a/setup/Swix/Microsoft.FSharp.Vsix.Core/Microsoft.FSharp.Vsix.Core.swixproj b/setup/Swix/Microsoft.FSharp.Vsix.Core/Microsoft.FSharp.Vsix.Core.swixproj
new file mode 100644
index 0000000000000000000000000000000000000000..ffb10deb955162b8654f60dae0972d3da1fc5621
--- /dev/null
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Core/Microsoft.FSharp.Vsix.Core.swixproj
@@ -0,0 +1,34 @@
+
+
+
+ ..\..\..\src
+ neutral
+ false
+ true
+ Debug
+ $(FSharpSourcesRoot)\..\$(Configuration)
+ $(BinariesFolder)\insertion
+ Microsoft.FSharp.VSIX.$(VSSku).Core
+ $(MSBuildThisFileDirectory)obj
+ manifest
+
+
+
+
+
+ $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
+ $(PackagePreprocessorDefinitions);VSSku=$(VSSku)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Desktop.Templates.swr
similarity index 96%
rename from setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr
rename to setup/Swix/Microsoft.FSharp.Vsix.Resources/Desktop.Templates.swr
index a3977cc67f0666f8161ff9e82b6fa94c549d13b2..264ac22d2fc0a3bebb32a2c3700924ef4d71226c 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Desktop.Templates.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Desktop.Templates.swr
@@ -1,6 +1,6 @@
use vs
-package name=Microsoft.FSharp.VSIX.$(VSSku)
+package name=Microsoft.FSharp.VSIX.$(VSSku).Resources
version=4.1
vs.package.language=$(LocaleRegion)
diff --git a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Empty.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Empty.swr
new file mode 100644
index 0000000000000000000000000000000000000000..5b1acc40bd449424c779c488950426999ddfeaab
--- /dev/null
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Empty.swr
@@ -0,0 +1,5 @@
+use vs
+
+package name=Microsoft.FSharp.VSIX.$(VSSku).Resources
+ version=4.1
+ vs.package.language=$(LocaleRegion)
diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr
similarity index 96%
rename from setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr
rename to setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr
index fa907fa0edf8b0496e15c7ba01af75626a1ab7d2..64a7212159d19a4e3addf56fa70d035cd564fc3e 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr
@@ -1,6 +1,6 @@
use vs
-package name=Microsoft.FSharp.VSIX.$(VSSku)
+package name=Microsoft.FSharp.VSIX.$(VSSku).Resources
version=4.1
vs.package.language=$(LocaleRegion)
diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Full.Templates.swr
similarity index 98%
rename from setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr
rename to setup/Swix/Microsoft.FSharp.Vsix.Resources/Full.Templates.swr
index fa876a3fef310ccbd7457d48749aa9574868b6ed..176ff8c8e98caaf29c682d5e5a8b5e7b41b94339 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Full.Templates.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Full.Templates.swr
@@ -1,6 +1,6 @@
use vs
-package name=Microsoft.FSharp.VSIX.$(VSSku)
+package name=Microsoft.FSharp.VSIX.$(VSSku).Resources
version=4.1
vs.package.language=$(LocaleRegion)
diff --git a/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj
similarity index 85%
rename from setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj
rename to setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj
index 9cc2d0f1199b4c627ea5d008ca7ba4533d1a1c79..01bb34505d2b5f2b5643d3e7a559cd5fd58db1c0 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix/Microsoft.FSharp.Vsix.swixproj
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj
@@ -8,18 +8,11 @@
Debug
$(FSharpSourcesRoot)\..\$(Configuration)
$(BinariesFolder)\insertion
- Microsoft.FSharp.VSIX.$(VSSku).$(LocaleCode)
+ Microsoft.FSharp.VSIX.$(VSSku).Resources.$(LocaleCode)
$(MSBuildThisFileDirectory)obj
-
-
-
- manifest
-
-
-
vsix
-
+
@@ -30,14 +23,14 @@
$(PackagePreprocessorDefinitions);LocaleRegion=$(LocaleRegion)
$(PackagePreprocessorDefinitions);IsLangPack=$(IsLangPack)
-
+
-
+
-
-
+
+
diff --git a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Web.Templates.swr
similarity index 95%
rename from setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr
rename to setup/Swix/Microsoft.FSharp.Vsix.Resources/Web.Templates.swr
index e97560064787af2ce116beec11ac108c75d000ea..4eed84e98b121bc0886697ce2cdfdb775aeeceee 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix/LangPack.Web.Templates.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Web.Templates.swr
@@ -1,6 +1,6 @@
use vs
-package name=Microsoft.FSharp.VSIX.$(VSSku)
+package name=Microsoft.FSharp.VSIX.$(VSSku).Resources
version=4.1
vs.package.language=$(LocaleRegion)
diff --git a/setup/Swix/Microsoft.FSharp.vsmanproj b/setup/Swix/Microsoft.FSharp.vsmanproj
index d3e8445271183b6ddbc7ad754c027675cfa55ff4..25e55147a3ae5a0dab9a02ea29f2cd878c2bf3e1 100644
--- a/setup/Swix/Microsoft.FSharp.vsmanproj
+++ b/setup/Swix/Microsoft.FSharp.vsmanproj
@@ -15,13 +15,19 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/setup/fsharp-setup-build.proj b/setup/fsharp-setup-build.proj
index 2ad86745eb48562e3c140b5edbe3397314d189e7..208209368cf668412f0dc97678c7430e23805d65 100644
--- a/setup/fsharp-setup-build.proj
+++ b/setup/fsharp-setup-build.proj
@@ -15,54 +15,61 @@
FSharp.Wix.Extensions\FSharp.Wix.Extensions.csproj
-
+
-
+
+
+
+ Swix\Microsoft.FSharp.SDK.Core\Microsoft.FSharp.SDK.Core.swixproj
+
+
+
-
+ AdditionalMetadata="ProjectPath=Swix\Microsoft.FSharp.SDK.Resources\Microsoft.FSharp.SDK.Resources.swixproj">
+
+
+
+ Swix\Microsoft.FSharp.Vsix.Core\Microsoft.FSharp.Vsix.Core.swixproj
+ Full
+
+
+
+ Swix\Microsoft.FSharp.Vsix.Core\Microsoft.FSharp.Vsix.Core.swixproj
+ Desktop
+
+
+
+ Swix\Microsoft.FSharp.Vsix.Core\Microsoft.FSharp.Vsix.Core.swixproj
+ Web
+
+
+
-
+ AdditionalMetadata="ProjectPath=Swix\Microsoft.FSharp.Vsix.Resources\Microsoft.FSharp.Vsix.Resources.swixproj;VSSku=Full">
+
-
+ AdditionalMetadata="ProjectPath=Swix\Microsoft.FSharp.Vsix.Resources\Microsoft.FSharp.Vsix.Resources.swixproj;VSSku=Desktop">
+
-
+ AdditionalMetadata="ProjectPath=Swix\Microsoft.FSharp.Vsix.Resources\Microsoft.FSharp.Vsix.Resources.swixproj;VSSku=Web">
+
Swix\Microsoft.FSharp.Dependencies\Microsoft.FSharp.Dependencies.swixproj
- Full
-
-
-
- Swix\Microsoft.FSharp.Dependencies\Microsoft.FSharp.Dependencies.swixproj
- Desktop
-
-
-
- Swix\Microsoft.FSharp.Dependencies\Microsoft.FSharp.Dependencies.swixproj
- Web
-
+
Swix\Microsoft.FSharp.vsmanproj