diff options
-rw-r--r-- | SConstruct | 53 | ||||
-rw-r--r-- | buildscripts/moduleconfig.py | 9 | ||||
-rw-r--r-- | etc/evergreen.yml | 19 | ||||
-rw-r--r-- | src/mongo/db/audit.cpp | 2 | ||||
-rw-r--r-- | src/mongo/db/server_options_server_helpers.cpp | 2 | ||||
-rw-r--r-- | src/mongo/util/resource_constants.h.in | 2 |
6 files changed, 56 insertions, 31 deletions
diff --git a/SConstruct b/SConstruct index 8ab9d54757e..ee3335291b4 100644 --- a/SConstruct +++ b/SConstruct @@ -1917,7 +1917,6 @@ if get_option("system-boost-lib-search-suffixes") is not None: # discover modules, and load the (python) module for each module's build.py mongo_modules = moduleconfig.discover_modules('src/mongo/db/modules', get_option('modules')) -env['MONGO_MODULES'] = [m.name for m in mongo_modules] # --- check system --- ssl_provider = None @@ -3187,32 +3186,6 @@ def doConfigure(myenv): return False - # Resolve --enable-free-mon - if free_monitoring == "auto": - if "enterprise" not in env['MONGO_MODULES']: - free_monitoring = "on" - else: - free_monitoring = "off" - - if free_monitoring == "on": - checkHTTPLib(required=True) - - # Resolve --enable-http-client - if http_client == "auto": - if checkHTTPLib(): - http_client = "on" - else: - print("Disabling http-client as libcurl was not found") - http_client = "off" - elif http_client == "on": - checkHTTPLib(required=True) - - # Sanity check. - # We know that http_client was explicitly disabled here, - # because the free_monitoring check would have failed if no http lib were available. - if (free_monitoring == "on") and (http_client == "off"): - env.ConfError("FreeMonitoring requires an HTTP client which has been explicitly disabled") - if use_system_version_of_library("pcre"): conf.FindSysLibDep("pcre", ["pcre"]) conf.FindSysLibDep("pcrecpp", ["pcrecpp"]) @@ -3483,6 +3456,32 @@ def doConfigure(myenv): # ask each module to configure itself and the build environment. moduleconfig.configure_modules(mongo_modules, conf) + # Resolve --enable-free-mon + if free_monitoring == "auto": + if 'enterprise' not in env['MONGO_MODULES']: + free_monitoring = "on" + else: + free_monitoring = "off" + + if free_monitoring == "on": + checkHTTPLib(required=True) + + # Resolve --enable-http-client + if http_client == "auto": + if checkHTTPLib(): + http_client = "on" + else: + print("Disabling http-client as libcurl was not found") + http_client = "off" + elif http_client == "on": + checkHTTPLib(required=True) + + # Sanity check. + # We know that http_client was explicitly disabled here, + # because the free_monitoring check would have failed if no http lib were available. + if (free_monitoring == "on") and (http_client == "off"): + env.ConfError("FreeMonitoring requires an HTTP client which has been explicitly disabled") + if env['TARGET_ARCH'] == "ppc64le": # This checks for an altivec optimization we use in full text search. # Different versions of gcc appear to put output bytes in different diff --git a/buildscripts/moduleconfig.py b/buildscripts/moduleconfig.py index 29c2d99780c..c1a9ae27f87 100644 --- a/buildscripts/moduleconfig.py +++ b/buildscripts/moduleconfig.py @@ -111,10 +111,17 @@ def configure_modules(modules, conf): The configure() function should prepare the Mongo build system for building the module. """ + env = conf.env + env['MONGO_MODULES'] = [] for module in modules: name = module.name print("configuring module: %s" % (name)) - module.configure(conf, conf.env) + modules_configured = module.configure(conf, env) + if modules_configured: + for module_name in modules_configured: + env['MONGO_MODULES'].append(module_name) + else: + env['MONGO_MODULES'].append(name) def get_module_sconscripts(modules): diff --git a/etc/evergreen.yml b/etc/evergreen.yml index 60c361e1e28..525203ca3c8 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -13135,6 +13135,25 @@ buildvariants: - rhel70 - name: jsCore +- <<: *enterprise-rhel-70-64-bit-template + name: hot_backups-rhel-70-64-bit + display_name: "hot_backups RHEL 7.0" + batchtime: 1440 # 1 day + expansions: + <<: *enterprise-rhel-70-64-bit-expansions-template + compile_flags: --ssl --use-cpu-profiler MONGO_DISTMOD=rhel70 -j$(grep -c ^processor /proc/cpuinfo) --release --variables-files=etc/scons/mongodbtoolchain_gcc.vars --enterprise-features=hot_backups + has_packages: false + tasks: + - name: compile_all_run_unittests_TG + distros: + - rhel70 + - name: jsCore + distros: + - rhel70 + - name: noPassthrough + distros: + - rhel70 + - name: ubuntu1604-debug display_name: "* Ubuntu 16.04 DEBUG" run_on: diff --git a/src/mongo/db/audit.cpp b/src/mongo/db/audit.cpp index 9d85cac35c5..82f506d3acf 100644 --- a/src/mongo/db/audit.cpp +++ b/src/mongo/db/audit.cpp @@ -30,7 +30,7 @@ #include "mongo/db/audit.h" -#if !MONGO_ENTERPRISE_VERSION +#if !MONGO_ENTERPRISE_AUDIT void mongo::audit::logAuthentication(Client* client, StringData mechanism, diff --git a/src/mongo/db/server_options_server_helpers.cpp b/src/mongo/db/server_options_server_helpers.cpp index 231b0268689..8b82056802d 100644 --- a/src/mongo/db/server_options_server_helpers.cpp +++ b/src/mongo/db/server_options_server_helpers.cpp @@ -180,7 +180,7 @@ Status addGeneralServerOptions(moe::OptionSection* options) { .hidden() .setDefault(moe::Value("synchronous")); -#if MONGO_ENTERPRISE_VERSION +#if MONGO_ENTERPRISE_ENCRYPTDB options->addOptionChaining("security.redactClientLogData", "redactClientLogData", moe::Switch, diff --git a/src/mongo/util/resource_constants.h.in b/src/mongo/util/resource_constants.h.in index 898963f0ca0..19a049679d4 100644 --- a/src/mongo/util/resource_constants.h.in +++ b/src/mongo/util/resource_constants.h.in @@ -58,7 +58,7 @@ #endif // NTDDI_VERSION #ifdef MONGO_ENTERPRISE_VERSION -#define MONGO_PRODUCT_EDITION_STR "Enterprise" +#define MONGO_PRODUCT_EDITION_STR @buildinfo_modules@ #elif MONGO_CONFIG_SSL #define MONGO_PRODUCT_EDITION_STR "SSL" #else |