summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Samek <brian.samek@mongodb.com>2016-11-16 13:55:44 -0500
committerBrian Samek <brian.samek@mongodb.com>2016-11-30 14:44:24 -0500
commitbab79e5beca9451e90571d02fb88b74459c2d792 (patch)
treeaf9f4f5ff6da09846fb4dedb644030f2b4bb92e6
parent2910650d6927788ca0a4f500a76bf232d2213ed6 (diff)
downloadmongo-bab79e5beca9451e90571d02fb88b74459c2d792.tar.gz
SERVER-17368 Add openssl files to windows zip file
(cherry picked from commit 99f1f23edbfc07ce00397a4300d28c74b9046b7b)
-rw-r--r--SConstruct22
-rw-r--r--src/mongo/installer/msi/SConscript2
2 files changed, 23 insertions, 1 deletions
diff --git a/SConstruct b/SConstruct
index aa4a0b52035..523728c75da 100644
--- a/SConstruct
+++ b/SConstruct
@@ -760,6 +760,10 @@ env_vars.Add('VERBOSE',
default='auto',
)
+env_vars.Add('WINDOWS_OPENSSL_BIN',
+ help='Sets the path to the openssl binaries for packaging',
+ default='c:/openssl/bin')
+
# -- Validate user provided options --
# A dummy environment that should *only* have the variables we have set. In practice it has
@@ -2620,6 +2624,18 @@ def doConfigure(myenv):
})
libdeps.setup_conftests(conf)
+ def addOpenSslLibraryToDistArchive(file_name):
+ openssl_bin_path = os.path.normpath(env['WINDOWS_OPENSSL_BIN'].lower())
+ full_file_name = os.path.join(openssl_bin_path, file_name)
+ if os.path.exists(full_file_name):
+ env.Append(ARCHIVE_ADDITIONS=[full_file_name])
+ env.Append(ARCHIVE_ADDITION_DIR_MAP={
+ openssl_bin_path: "bin"
+ })
+ return True
+ else:
+ return False
+
if has_option( "ssl" ):
sslLibName = "ssl"
cryptoLibName = "crypto"
@@ -2627,6 +2643,12 @@ def doConfigure(myenv):
sslLibName = "ssleay32"
cryptoLibName = "libeay32"
+ # Add the SSL binaries to the zip file distribution
+ files = ['ssleay32.dll', 'libeay32.dll']
+ for extra_file in files:
+ if not addOpenSslLibraryToDistArchive(extra_file):
+ print("WARNING: Cannot find SSL library '%s'" % extra_file)
+
# Used to import system certificate keychains
if conf.env.TargetOSIs('osx'):
conf.env.AppendUnique(FRAMEWORKS=[
diff --git a/src/mongo/installer/msi/SConscript b/src/mongo/installer/msi/SConscript
index e0e910c3121..4d006b24a8a 100644
--- a/src/mongo/installer/msi/SConscript
+++ b/src/mongo/installer/msi/SConscript
@@ -142,7 +142,7 @@ env.Command(objects,
' -dTargetFileName=${SERVER_ARCHIVE}'
r' -dSaslSource=c:\sasl\bin'
r' -dSnmpSource=c:\snmp\bin'
- r' -dSslSource=c:\openssl\bin'
+ r' -dSslSource=' + env['WINDOWS_OPENSSL_BIN'] +
' -out ' + buildDir + r'\msi\\'
' -arch ' + msi_platform +
' -ext "$WIXUIEXT"'