1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
--- SConstruct.orig 2023-04-24 16:15:19 UTC
+++ SConstruct
@@ -23,9 +23,9 @@ import SCons.Script
import SCons
import SCons.Script
-from mongo_tooling_metrics.client import get_mongo_metrics_client
-from mongo_tooling_metrics.errors import ExternalHostException
-from mongo_tooling_metrics.lib.top_level_metrics import SConsToolingMetrics
+#from mongo_tooling_metrics.client import get_mongo_metrics_client
+#from mongo_tooling_metrics.errors import ExternalHostException
+#from mongo_tooling_metrics.lib.top_level_metrics import SConsToolingMetrics
from site_scons.mongo import build_profiles
# This must be first, even before EnsureSConsVersion, if
@@ -1659,22 +1659,22 @@ env.AddMethod(lambda env, name, **kwargs: add_option(n
# The placement of this is intentional. Here we setup an atexit method to store tooling metrics.
# We should only register this function after env, env_vars and the parser have been properly initialized.
-try:
- metrics_client = get_mongo_metrics_client()
- metrics_client.register_metrics(
- SConsToolingMetrics,
- utc_starttime=datetime.utcnow(),
- artifact_dir=env.Dir('$BUILD_DIR').get_abspath(),
- env_vars=env_vars,
- env=env,
- parser=_parser,
- )
-except ExternalHostException as _:
- pass
-except Exception as _:
- print(
- "This MongoDB Virtual Workstation could not connect to the internal cluster\nThis is a non-issue, but if this message persists feel free to reach out in #server-dev-platform"
- )
+#try:
+# metrics_client = get_mongo_metrics_client()
+# metrics_client.register_metrics(
+# SConsToolingMetrics,
+# utc_starttime=datetime.utcnow(),
+# artifact_dir=env.Dir('$BUILD_DIR').get_abspath(),
+# env_vars=env_vars,
+# env=env,
+# parser=_parser,
+# )
+#except ExternalHostException as _:
+# pass
+#except Exception as _:
+# print(
+# "This MongoDB Virtual Workstation could not connect to the internal cluster\nThis is a non-issue, but if this message persists feel free to reach out in #server-dev-platform"
+# )
if get_option('build-metrics'):
env['BUILD_METRICS_ARTIFACTS_DIR'] = '$BUILD_ROOT/$VARIANT_DIR'
@@ -1812,9 +1812,9 @@ if has_option('variables-help'):
print(env_vars.GenerateHelpText(env))
Exit(0)
-unknown_vars = env_vars.UnknownVariables()
-if unknown_vars:
- env.FatalError("Unknown variables specified: {0}", ", ".join(list(unknown_vars.keys())))
+#unknown_vars = env_vars.UnknownVariables()
+#if unknown_vars:
+# env.FatalError("Unknown variables specified: {0}", ", ".join(list(unknown_vars.keys())))
install_actions.setup(env, get_option('install-action'))
@@ -3033,7 +3033,7 @@ if env.TargetOSIs('posix'):
# If runtime hardening is requested, then build anything
# destined for an executable with the necessary flags for PIE.
env.AppendUnique(
- PROGCCFLAGS=['-fPIE'],
+ PROGCCFLAGS=['-fpic'],
PROGLINKFLAGS=['-pie'],
)
@@ -3041,7 +3041,6 @@ if env.TargetOSIs('posix'):
env.Append(
CCFLAGS=[
"-fasynchronous-unwind-tables",
- "-g2" if not env.TargetOSIs('emscripten') else "-g",
"-Wall",
"-Wsign-compare",
"-Wno-unknown-pragmas",
@@ -3224,8 +3223,12 @@ if not env.TargetOSIs('windows', 'macOS') and (env.Too
# setting it for both C and C++ by setting both of CFLAGS and
# CXXFLAGS.
+ arm_march_flag = "armv8-a"
+ if get_option('use-hardware-crc32') == "on":
+ arm_march_flag += "+crc"
+
default_targeting_flags_for_architecture = {
- "aarch64": {"-march=": "armv8.2-a", "-mtune=": "generic"},
+ "aarch64": {"-march=": arm_march_flag, "-mtune=": "generic"},
"i386": {"-march=": "nocona", "-mtune=": "generic"},
"ppc64le": {"-mcpu=": "power8", "-mtune=": "power8", "-mcmodel=": "medium"},
"s390x": {"-march=": "z196", "-mtune=": "zEC12"},
|