diff options
author | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2014-09-24 10:36:02 -0400 |
---|---|---|
committer | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-02-04 15:48:24 -0500 |
commit | db71320ea9a3b9636a85fb96c4c16cee9c2dc409 (patch) | |
tree | 389669f714a51a209f01e5923dbcd2a2aa7aec1f | |
parent | 37ea3acc57d117ea6414c108b9c888083dbf2144 (diff) | |
download | mongo-db71320ea9a3b9636a85fb96c4c16cee9c2dc409.tar.gz |
SERVER-15400: Create Windows Enterprise Zip File with vcredist and dependent dlls
(cherry picked from commit c9b18a3824573e503d99c6b0f14a1a7d2049b50e)
-rw-r--r-- | SConstruct | 2 | ||||
-rwxr-xr-x | buildscripts/make_archive.py | 17 | ||||
-rw-r--r-- | src/mongo/SConscript | 2 |
3 files changed, 18 insertions, 3 deletions
diff --git a/SConstruct b/SConstruct index 2a1e091363a..d39b444202f 100644 --- a/SConstruct +++ b/SConstruct @@ -609,9 +609,11 @@ extraLibPlaces = [] env['EXTRACPPPATH'] = [] env['EXTRALIBPATH'] = [] +env['EXTRABINPATH'] = [] def addExtraLibs( s ): for x in s.split(","): + env.Append( EXTRABINPATH=[ x + "/bin" ] ) env.Append( EXTRACPPPATH=[ x + "/include" ] ) env.Append( EXTRALIBPATH=[ x + "/lib" ] ) env.Append( EXTRALIBPATH=[ x + "/lib64" ] ) diff --git a/buildscripts/make_archive.py b/buildscripts/make_archive.py index 840b134e717..5df995b41e9 100755 --- a/buildscripts/make_archive.py +++ b/buildscripts/make_archive.py @@ -29,12 +29,23 @@ For a detailed usage example, see src/SConscript.client or src/mongo/SConscript. import optparse import os import sys +import shlex import shutil import zipfile from subprocess import (Popen, PIPE, STDOUT) def main(argv): - opts = parse_options(argv[1:]) + args = [] + for arg in argv[1:]: + if arg.startswith("@"): + file_name = arg[1:] + f_handle = open(file_name, "r") + args.extend(s1.strip('"') for s1 in shlex.split(f_handle.readline(), posix=False)) + f_handle.close() + else: + args.append(arg) + + opts = parse_options(args) if opts.archive_format in ('tar', 'tgz'): make_tar_archive(opts) elif opts.archive_format in ('zip'): @@ -170,7 +181,9 @@ def get_preferred_filename(input_filename, transformations): returns the substituted string ''' for match, replace in transformations: - if input_filename.startswith(match): + match_lower = match.lower() + input_filename_lower = input_filename.lower() + if input_filename_lower.startswith(match_lower): return replace + input_filename[len(match):] return input_filename diff --git a/src/mongo/SConscript b/src/mongo/SConscript index 8caf5092ab5..98e9b7ac434 100644 --- a/src/mongo/SConscript +++ b/src/mongo/SConscript @@ -1239,7 +1239,7 @@ module_banner_transforms = ["--transform %s=$SERVER_DIST_BASENAME" % d for d in # within the archive (e.g. { "src/mongo/db/modules/enterprise/docs": "snmp"}) archive_addition_transforms = [] for full_dir, archive_dir in env["ARCHIVE_ADDITION_DIR_MAP"].items(): - archive_addition_transforms.append("--transform %s=$SERVER_DIST_BASENAME/%s" % + archive_addition_transforms.append("--transform \"%s=$SERVER_DIST_BASENAME/%s\"" % (full_dir, archive_dir)) env.Command( |