summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSridhar Nanjundeswaran <sridhar@10gen.com>2013-09-09 16:46:38 -0700
committerSridhar Nanjundeswaran <sridhar@10gen.com>2013-09-13 12:49:13 -0700
commit89d8e55e2e56c32efbc47330dbc8bef3832f8b22 (patch)
tree3b2222da88ac6935fc8b1f8df93313813376c3b0
parent2110a136ef89f761928014364acef203d1feca4e (diff)
downloadmongo-89d8e55e2e56c32efbc47330dbc8bef3832f8b22.tar.gz
SERVER-9956 - Installer changes for enterprise edition for Windows
1) Changed default install directory 2) C++ driver is now an optional feature that can be installed 3) Enterprise dlls are now installed for enterprise builds Note: Enterprise is only supported for x64 2008R2+ builds
-rw-r--r--.gitignore4
-rwxr-xr-xbuildscripts/packaging/msi/MongoDB.wixproj23
-rwxr-xr-xbuildscripts/packaging/msi/MongoDB_64.wixproj32
-rwxr-xr-xbuildscripts/packaging/msi/build32bitmsi.bat7
-rw-r--r--buildscripts/packaging/msi/build64bit2008R2msi.bat31
-rwxr-xr-xbuildscripts/packaging/msi/build64bitmsi.bat10
-rw-r--r--buildscripts/packaging/msi/buildenterprisemsi.bat48
-rwxr-xr-xbuildscripts/packaging/msi/wxs/BinaryFragment.wxs60
-rwxr-xr-xbuildscripts/packaging/msi/wxs/FeatureFragment.wxs30
-rwxr-xr-xbuildscripts/packaging/msi/wxs/Installer.wxs22
-rwxr-xr-xbuildscripts/packaging/msi/wxs/Installer_64.wxs31
11 files changed, 243 insertions, 55 deletions
diff --git a/.gitignore b/.gitignore
index dc5b2551e23..7ff5faaf5e1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -161,3 +161,7 @@ src/third_party/v8/src/libraries.cc
src/mongo/buildinfo.cpp
buildinfo.cpp
/.settings/
+
+*.msi
+*.wixobj
+*.wixpdb \ No newline at end of file
diff --git a/buildscripts/packaging/msi/MongoDB.wixproj b/buildscripts/packaging/msi/MongoDB.wixproj
index 3352dc0ba35..bfa7d133ce7 100755
--- a/buildscripts/packaging/msi/MongoDB.wixproj
+++ b/buildscripts/packaging/msi/MongoDB.wixproj
@@ -3,31 +3,30 @@
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
- <Version Condition=" '$(Version)' == '' ">2.4.0</Version>
- <License Condition=" '$(License)' == '' ">..\..\..\distsrc</License>
- <Source Condition=" '$(Source)' == '' ">..\..\..\build\win32\normal\mongo</Source>
<ProductVersion>3.5</ProductVersion>
<ProjectGuid>{fc40ea06-5d8c-4edf-9e19-a0bdd9a3a7d5}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
- <OutputName>MongoDB_$(Version)</OutputName>
+ <OutputName>MongoDB_$(Version)_x86_Standard</OutputName>
<OutputType>Package</OutputType>
<DefineSolutionProperties>false</DefineSolutionProperties>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
+ <ProductId Condition=" '$(ProductId)' == '' ">*</ProductId>
+ <UpgradeCode Condition=" '$(UpgradeCode)' == '' ">867C1D1D-2040-4E90-B04E-1158F9CBDE96</UpgradeCode>
<Name>MongoDB</Name>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<OutputPath>bin\$(Configuration)\$(Platform)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\$(Platform)\</IntermediateOutputPath>
- <DefineConstants>MongoDBVersion=$(Version);LicenseSource=$(License);BinarySource=$(Source)</DefineConstants>
<TreatWarningsAsErrors>True</TreatWarningsAsErrors>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<VerboseOutput>True</VerboseOutput>
</PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
- <OutputPath>bin\$(Configuration)\$(Platform)\</OutputPath>
- <IntermediateOutputPath>obj\$(Configuration)\$(Platform)\</IntermediateOutputPath>
- <DefineConstants>MongoDBVersion=$(Version);LicenseSource=$(License);BinarySource=$(Source)</DefineConstants>
- <TreatWarningsAsErrors>True</TreatWarningsAsErrors>
+ <PropertyGroup>
+ <ClientSource Condition=" '$(Source)' == '' ">..\..\..\build\win32\normal\clientlib</ClientSource>
+ <License Condition=" '$(License)' == '' ">..\..\..\distsrc</License>
+ <Source Condition=" '$(Source)' == '' ">..\..\..\build\win32\normal\mongo</Source>
+ <Version Condition=" '$(Version)' == '' ">2.4.0</Version>
+ <DefineConstants>MongoDBVersion=$(Version);LicenseSource=$(License);BinarySource=$(Source);Edition=Standard;ProductId=$(ProductId);UpgradeCode=$(UpgradeCode);ClientSource=$(ClientSource)</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="wxs\BinaryFragment.wxs" />
diff --git a/buildscripts/packaging/msi/MongoDB_64.wixproj b/buildscripts/packaging/msi/MongoDB_64.wixproj
index 58722d4e8c6..02748882ec7 100755
--- a/buildscripts/packaging/msi/MongoDB_64.wixproj
+++ b/buildscripts/packaging/msi/MongoDB_64.wixproj
@@ -3,32 +3,36 @@
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x64</Platform>
- <Version Condition=" '$(Version)' == '' ">2.4.0</Version>
- <License Condition=" '$(License)' == '' ">..\..\..\distsrc</License>
- <Source Condition=" '$(Source)' == '' ">..\..\..\build\win32\64\mongo</Source>
<ProductVersion>3.5</ProductVersion>
<ProjectGuid>{fa9df7fc-a283-4eb8-b0c6-f9fa31e22cbc}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
- <OutputName>MongoDB_$(Version)_x64</OutputName>
+ <OutputName>MongoDB_$(Version)_x64_$(Flavor)_$(Edition)</OutputName>
<OutputType>Package</OutputType>
<DefineSolutionProperties>false</DefineSolutionProperties>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<Name>MongoDB</Name>
+ <OutputPath>bin\$(Configuration)\$(Platform)\$(Flavor)\$(Edition)\</OutputPath>
+ <IntermediateOutputPath>obj\$(Configuration)\$(Platform)\$(Flavor)\$(Edition)\</IntermediateOutputPath>
+ <TreatWarningsAsErrors>True</TreatWarningsAsErrors>
+ <ProductId Condition=" '$(ProductId)' == '' ">*</ProductId>
+ <UpgradeCode Condition=" '$(UpgradeCode)' == '' ">FCF901F6-E963-40B1-9A17-978242068587</UpgradeCode>
+ </PropertyGroup>
+ <PropertyGroup>
+ <ClientSource Condition=" '$(Source)' == '' ">..\..\..\build\win32\64\client_build</ClientSource>
+ <Edition Condition=" '$(Edition)' == '' ">Standard</Edition>
+ <Flavor Condition=" '$(Flavor)' == '' ">2008R2Plus</Flavor>
+ <License Condition=" '$(License)' == '' ">..\..\..\distsrc</License>
+ <SaslSource Condition=" '$(SaslSource)' == '' ">..\..\..\build\win32\64\mongo</SaslSource>
+ <SnmpSource Condition=" '$(SnmpSource)' == '' ">..\..\..\build\win32\64\mongo</SnmpSource>
+ <Source Condition=" '$(Source)' == '' ">..\..\..\build\win32\64\mongo</Source>
+ <SslSource Condition=" '$(SslSource)' == '' ">..\..\..\build\win32\64\mongo</SslSource>
+ <Version Condition=" '$(Version)' == '' ">2.4.0</Version>
+ <DefineConstants>MongoDBVersion=$(Version);LicenseSource=$(License);BinarySource=$(Source);Edition=$(Edition);SaslSource=$(SaslSource);SslSource=$(SslSource);SnmpSource=$(SnmpSource);ProductId=$(ProductId);UpgradeCode=$(UpgradeCode);Flavor=$(Flavor);ClientSource=$(ClientSource)</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
- <OutputPath>bin\$(Configuration)\$(Platform)\</OutputPath>
- <IntermediateOutputPath>obj\$(Configuration)\$(Platform)\</IntermediateOutputPath>
- <DefineConstants>MongoDBVersion=$(Version);LicenseSource=$(License);BinarySource=$(Source)</DefineConstants>
- <TreatWarningsAsErrors>True</TreatWarningsAsErrors>
<VerboseOutput>True</VerboseOutput>
</PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
- <OutputPath>bin\$(Configuration)\$(Platform)\</OutputPath>
- <IntermediateOutputPath>obj\$(Configuration)\$(Platform)\</IntermediateOutputPath>
- <DefineConstants>MongoDBVersion=$(Version);LicenseSource=$(License);BinarySource=$(Source)</DefineConstants>
- <TreatWarningsAsErrors>True</TreatWarningsAsErrors>
- </PropertyGroup>
<ItemGroup>
<Compile Include="wxs\BinaryFragment.wxs" />
<Compile Include="wxs\FeatureFragment.wxs" />
diff --git a/buildscripts/packaging/msi/build32bitmsi.bat b/buildscripts/packaging/msi/build32bitmsi.bat
index c6af701c362..ca5ac86a5c2 100755
--- a/buildscripts/packaging/msi/build32bitmsi.bat
+++ b/buildscripts/packaging/msi/build32bitmsi.bat
@@ -1,6 +1,7 @@
@ECHO OFF
SET VERSION=2.4.0
SET BINDIR=..\..\..\build\win32\normal\mongo
+SET CLIENTLIBDIR=..\..\..\build\win32\normal\client_build
SET LICENSEDIR=..\..\..\distsrc
:loop
@@ -17,9 +18,13 @@ IF NOT "%1"=="" (
SET LICENSEDIR=%2
SHIFT
)
+ IF "%1"=="-clientlibdir" (
+ SET CLIENTLIBDIR=%2
+ SHIFT
+ )
SHIFT
GOTO :loop
)
ECHO Building msi for version %VERSION% with binaries from %BINDIR% and license files from %LICENSEDIR%
-msbuild /p:Configuration=Release;Version=%VERSION%;License=%LICENSEDIR%;Source=%BINDIR% MongoDB.wixproj \ No newline at end of file
+%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\msbuild /p:Configuration=Release;Version=%VERSION%;License=%LICENSEDIR%;Source=%BINDIR%;ClientSource=%CLIENTLIBDIR% MongoDB.wixproj \ No newline at end of file
diff --git a/buildscripts/packaging/msi/build64bit2008R2msi.bat b/buildscripts/packaging/msi/build64bit2008R2msi.bat
new file mode 100644
index 00000000000..3f4bd9df9e3
--- /dev/null
+++ b/buildscripts/packaging/msi/build64bit2008R2msi.bat
@@ -0,0 +1,31 @@
+@ECHO OFF
+SET VERSION=2.4.0
+SET BINDIR=..\..\..\build\win32\64\mongo
+SET CLIENTLIBDIR=..\..\..\build\win32\64\client_build
+SET LICENSEDIR=..\..\..\distsrc
+SET EDITION=Standard
+SET FLAVOR=2008R2Plus
+:loop
+IF NOT "%1"=="" (
+ IF "%1"=="-version" (
+ SET VERSION=%2
+ SHIFT
+ )
+ IF "%1"=="-bindir" (
+ SET BINDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-licensedir" (
+ SET LICENSEDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-clientlibdir" (
+ SET CLIENTLIBDIR=%2
+ SHIFT
+ )
+ SHIFT
+ GOTO :loop
+)
+
+ECHO Building msi for version %VERSION% with binaries from %BINDIR% and license files from %LICENSEDIR%
+%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\msbuild /p:Configuration=Release;Version=%VERSION%;License=%LICENSEDIR%;Source=%BINDIR%;Edition=%EDITION%;Flavor=%FLAVOR%;ClientSource=%CLIENTLIBDIR% MongoDB_64.wixproj \ No newline at end of file
diff --git a/buildscripts/packaging/msi/build64bitmsi.bat b/buildscripts/packaging/msi/build64bitmsi.bat
index 622fc9d315d..bc46d355c1e 100755
--- a/buildscripts/packaging/msi/build64bitmsi.bat
+++ b/buildscripts/packaging/msi/build64bitmsi.bat
@@ -1,8 +1,10 @@
@ECHO OFF
SET VERSION=2.4.0
SET BINDIR=..\..\..\build\win32\64\mongo
+SET CLIENTLIBDIR=..\..\..\build\win32\64\client_build
SET LICENSEDIR=..\..\..\distsrc
-
+SET EDITION=Standard
+SET FLAVOR=2008
:loop
IF NOT "%1"=="" (
IF "%1"=="-version" (
@@ -17,9 +19,13 @@ IF NOT "%1"=="" (
SET LICENSEDIR=%2
SHIFT
)
+ IF "%1"=="-clientlibdir" (
+ SET CLIENTLIBDIR=%2
+ SHIFT
+ )
SHIFT
GOTO :loop
)
ECHO Building msi for version %VERSION% with binaries from %BINDIR% and license files from %LICENSEDIR%
-msbuild /p:Configuration=Release;Version=%VERSION%;License=%LICENSEDIR%;Source=%BINDIR% MongoDB_64.wixproj \ No newline at end of file
+%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\msbuild /p:Configuration=Release;Version=%VERSION%;License=%LICENSEDIR%;Source=%BINDIR%;Edition=%EDITION%;Flavor=%FLAVOR%;ClientSource=%CLIENTLIBDIR% MongoDB_64.wixproj \ No newline at end of file
diff --git a/buildscripts/packaging/msi/buildenterprisemsi.bat b/buildscripts/packaging/msi/buildenterprisemsi.bat
new file mode 100644
index 00000000000..3b068e051e6
--- /dev/null
+++ b/buildscripts/packaging/msi/buildenterprisemsi.bat
@@ -0,0 +1,48 @@
+@ECHO OFF
+SET VERSION=2.6.0
+SET BINDIR=..\..\..\build\win32\64\dynamic-windows\extrapathdyn_c__Utils_sasl_c__Utils_snmp_c__Utils_ssl\release\ssl\mongo
+SET CLIENTLIBDIR=..\..\..\build\win32\64\dynamic-windows\extrapathdyn_c__Utils_sasl_c__Utils_snmp_c__Utils_ssl\release\ssl\client_build
+SET LICENSEDIR=..\..\..\distsrc
+SET EDITION=Enterprise
+SET FLAVOR=2008R2Plus
+SET SASLDIR=..\..\..\..\..\..\Utils\sasl\bin
+SET OPENSSLDIR=..\..\..\..\..\..\Utils\ssl\bin
+SET SNMPDIR=..\..\..\..\..\..\Utils\snmp\bin
+
+:loop
+IF NOT "%1"=="" (
+ IF "%1"=="-version" (
+ SET VERSION=%2
+ SHIFT
+ )
+ IF "%1"=="-bindir" (
+ SET BINDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-licensedir" (
+ SET LICENSEDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-sasldir" (
+ SET SASLDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-openssldir" (
+ SET OPENSSLDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-snmpdir" (
+ SET SNMPDIR=%2
+ SHIFT
+ )
+ IF "%1"=="-clientlibdir" (
+ SET CLIENTLIBDIR=%2
+ SHIFT
+ )
+ SHIFT
+ GOTO :loop
+)
+
+ECHO Building enterprise msi for version %VERSION% with binaries from %BINDIR%, sasl from %SASLDIR%, ssl from %OPENSSLDIR%, snmp from %SNMPDIR% and license files from %LICENSEDIR%
+
+%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\msbuild /p:Configuration=Release;Version=%VERSION%;License=%LICENSEDIR%;Source=%BINDIR%;SaslSource=%SASLDIR%;SnmpSource=%SNMPDIR%;SslSource=%OPENSSLDIR%;Edition=%EDITION%;Flavor=%FLAVOR%;ClientSource=%CLIENTLIBDIR% MongoDB_64.wixproj \ No newline at end of file
diff --git a/buildscripts/packaging/msi/wxs/BinaryFragment.wxs b/buildscripts/packaging/msi/wxs/BinaryFragment.wxs
index 312a463ecc9..2dacae0dab1 100755
--- a/buildscripts/packaging/msi/wxs/BinaryFragment.wxs
+++ b/buildscripts/packaging/msi/wxs/BinaryFragment.wxs
@@ -62,6 +62,66 @@
<File Id="f_mongotop" Name="mongotop.exe" Source="$(var.BinarySource)\mongotop.exe"
DiskId ="1" KeyPath="yes"/>
</Component>
+ <?if $(var.Edition) = Enterprise ?>
+ <Component Id="c_sasl" Guid="6632B1B8-9F0C-452C-9101-BE6044471CAC">
+ <File Id="f_sasl" Name="libsasl.dll" Source="$(var.SaslSource)\libsasl.dll"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_saslPdb" Guid="84DE7D8C-A6D6-4A23-935F-F0FFE3BBC52B">
+ <File Id="f_saslPdb" Name="libsasl.pdb" Source="$(var.SaslSource)\libsasl.pdb"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_ssleay" Guid="8879033A-F4F7-4879-A7F8-4D81355A47E3">
+ <File Id="f_ssleay" Name="ssleay32.dll" Source="$(var.SslSource)\ssleay32.dll"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_libeay" Guid="E6CC6AA5-AC71-45EC-803C-71F816E33135">
+ <File Id="f_libeay" Name="libeay32.dll" Source="$(var.SslSource)\libeay32.dll"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_snmp" Guid="F5E5A889-FC9F-4B9A-BEFD-C8ABC9A92D8D">
+ <File Id="f_ssnmp" Name="netsnmp.dll" Source="$(var.SnmpSource)\netsnmp.dll"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_snmpPdb" Guid="6AAB0ACE-C354-4D3A-B490-2AA235647AB3">
+ <File Id="f_snmpPdb" Name="netsnmp.pdb" Source="$(var.SnmpSource)\netsnmp.pdb"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <?endif ?>
+ <Directory Id="Driver" Name="Driver">
+ <Component Id="c_mongoclientlib" Guid="B0AF30BE-924F-47C7-A2B9-AE22E0BFCEC1">
+ <File Id="f_mongoclientlib" Name="mongoclient.lib" Source="$(var.ClientSource)\mongoclient.lib"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_mongoclientdll" Guid="0B202F31-C173-4D59-A31E-1DD87C16EDC6">
+ <File Id="f_mongoclientdll" Name="mongoclient.dll" Source="$(var.ClientSource)\mongoclient.dll"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_mongoclientpdb" Guid="C1AA694E-FC9B-4540-8C73-638BDC2CD7A5">
+ <File Id="f_mongoclientpdb" Name="mongoclient.pdb" Source="$(var.ClientSource)\mongoclient.pdb"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ <Component Id="c_mongoclientexp" Guid="E95F4011-1E88-4A53-807F-F43175864EAF">
+ <File Id="f_mongoclientexp" Name="mongoclient.exp" Source="$(var.ClientSource)\mongoclient.exp"
+ DiskId="1" KeyPath="yes" />
+ </Component>
+ </Directory>
</DirectoryRef>
+
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroup Id="cg_EnterpriseBase">
+ <ComponentRef Id="c_sasl" />
+ <ComponentRef Id="c_saslPdb" />
+ <ComponentRef Id="c_ssleay" />
+ <ComponentRef Id="c_libeay" />
+ <ComponentRef Id="c_snmp" />
+ <ComponentRef Id="c_snmpPdb" />
+ </ComponentGroup>
+ <ComponentGroup Id="cg_EnterpriseServer">
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <ComponentRef Id="c_snmp" />
+ <ComponentRef Id="c_snmpPdb" />
+ </ComponentGroup>
+ <?endif ?>
</Fragment>
</Wix> \ No newline at end of file
diff --git a/buildscripts/packaging/msi/wxs/FeatureFragment.wxs b/buildscripts/packaging/msi/wxs/FeatureFragment.wxs
index 45e6cbf3f98..8fde7201086 100755
--- a/buildscripts/packaging/msi/wxs/FeatureFragment.wxs
+++ b/buildscripts/packaging/msi/wxs/FeatureFragment.wxs
@@ -13,12 +13,18 @@
Level ="1">
<ComponentRef Id="c_mongod"/>
<ComponentRef Id="c_mongodPdb"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseServer" />
+ <?endif ?>
</Feature>
<Feature Id="Client"
Title ="Client"
Description="The MongoDB client/shell (mongo)"
Level ="1">
<ComponentRef Id="c_mongo"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <?endif ?>
</Feature>
<Feature Id="MonitoringTools"
Title ="Monitoring Tools"
@@ -26,6 +32,9 @@
Level ="1">
<ComponentRef Id="c_mongostat"/>
<ComponentRef Id="c_mongotop"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <?endif ?>
</Feature>
<Feature Id="ImportExportTools"
Title ="Import/Export Tools"
@@ -35,6 +44,9 @@
<ComponentRef Id="c_mongorestore"/>
<ComponentRef Id="c_mongoexport"/>
<ComponentRef Id="c_mongoimport"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <?endif ?>
</Feature>
<Feature Id="Router"
Title ="Router"
@@ -42,6 +54,9 @@
Level ="1000">
<ComponentRef Id="c_mongos"/>
<ComponentRef Id="c_mongosPdb"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <?endif ?>
</Feature>
<Feature Id="MiscellaneousTools"
Title ="Miscellaneous Tools"
@@ -51,6 +66,21 @@
<ComponentRef Id="c_mongofiles"/>
<ComponentRef Id="c_mongooplog"/>
<ComponentRef Id="c_mongoperf"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <?endif ?>
+ </Feature>
+ <Feature Id="CPlusPlusDriver"
+ Title ="C++ Driver"
+ Description="MongoDB C++ Driver"
+ Level ="1000">
+ <ComponentRef Id="c_mongoclientlib"/>
+ <ComponentRef Id="c_mongoclientdll"/>
+ <ComponentRef Id="c_mongoclientpdb"/>
+ <ComponentRef Id="c_mongoclientexp"/>
+ <?if $(var.Edition) = Enterprise ?>
+ <ComponentGroupRef Id="cg_EnterpriseBase" />
+ <?endif ?>
</Feature>
</Feature>
</FeatureGroup>
diff --git a/buildscripts/packaging/msi/wxs/Installer.wxs b/buildscripts/packaging/msi/wxs/Installer.wxs
index fb23f4a5ccc..82bfa05f654 100755
--- a/buildscripts/packaging/msi/wxs/Installer.wxs
+++ b/buildscripts/packaging/msi/wxs/Installer.wxs
@@ -1,30 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
- <Product Id="D89E6EB1-EAA6-4C7A-A723-D14C278BB705"
+ <Product Id="$(var.ProductId)"
Name="!(wix.ProductName)"
Language="1033"
Version="$(var.MongoDBVersion)"
Manufacturer="MongoDB"
- UpgradeCode="A1A8DF55-352B-4F06-B9BD-5E9CE4345400">
+ UpgradeCode="$(var.UpgradeCode)">
- <?if $(var.Platform) = x64 ?>
- <Package InstallerVersion="200" Compressed="yes" Platform="x64"/>
- <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion) (64 bit)" />
- <?else?>
- <Package InstallerVersion="200" Compressed="yes" />
- <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion)" />
- <?endif?>
+ <Package InstallerVersion="200" Compressed="yes" />
+ <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion)" />
+ <WixVariable Id="InstallFolder" Value="MongoDB $(var.MongoDBVersion) $(var.Edition)"/>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
- <Directory Id="MONGODB" Name="MongoDB">
- <Directory Id="INSTALLLOCATION" Name="$(var.MongoDBVersion)">
- <Directory Id="BIN" Name="bin" />
- </Directory>
+ <Directory Id="INSTALLLOCATION" Name="!(wix.InstallFolder)">
+ <Directory Id="BIN" Name="bin" />
</Directory>
</Directory>
</Directory>
-
+
<Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
<WixVariable Id="WixUIDialogBmp" Value="Dialog.bmp" />
<WixVariable Id="WixUIBannerBmp" Value="Banner.bmp" />
diff --git a/buildscripts/packaging/msi/wxs/Installer_64.wxs b/buildscripts/packaging/msi/wxs/Installer_64.wxs
index fbbcb05fd3b..d6a53f344e5 100755
--- a/buildscripts/packaging/msi/wxs/Installer_64.wxs
+++ b/buildscripts/packaging/msi/wxs/Installer_64.wxs
@@ -1,26 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
- <Product Id="8F757837-F5C4-4A3F-91BC-63AB57C4AFD6"
+ <Product Id="$(var.ProductId)"
Name="!(wix.ProductName)"
Language="1033"
Version="$(var.MongoDBVersion)"
Manufacturer="MongoDB"
- UpgradeCode="14BECF68-7026-4AAB-8E16-7678ABC6B5F7">
+ UpgradeCode="$(var.UpgradeCode)">
- <?if $(var.Platform) = x64 ?>
- <Package InstallerVersion="200" Compressed="yes" Platform="x64"/>
- <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion) (64 bit)" />
+ <Package InstallerVersion="200" Compressed="yes" Platform="x64"/>
+ <WixVariable Id="InstallFolder" Value="MongoDB $(var.MongoDBVersion) $(var.Edition)"/>
+
+ <?if $(var.Edition) = Enterprise ?>
+ <?if $(var.Flavor) = 2008R2Plus?>
+ <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion) $(var.Flavor) Enterprise (64 bit)" />
+ <?else?>
+ <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion) Enterprise (64 bit)" />
+ <?endif?>
<?else?>
- <Package InstallerVersion="200" Compressed="yes" />
- <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion)" />
+ <?if $(var.Flavor) = 2008R2Plus?>
+ <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion) $(var.Flavor) (64 bit)" />
+ <?else?>
+ <WixVariable Id="ProductName" Value="MongoDB $(var.MongoDBVersion) (64 bit)" />
+ <?endif?>
<?endif?>
- <Directory Id="TARGETDIR" Name="SourceDir">
+ <Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFiles64Folder">
- <Directory Id="MONGODB" Name="MongoDB">
- <Directory Id="INSTALLLOCATION" Name="$(var.MongoDBVersion)">
- <Directory Id="BIN" Name="bin" />
- </Directory>
+ <Directory Id="INSTALLLOCATION" Name="!(wix.InstallFolder)">
+ <Directory Id="BIN" Name="bin" />
</Directory>
</Directory>
</Directory>