|
@@ -374,6 +374,14 @@ if env["platform"] in platform_opts:
|
|
|
for opt in platform_opts[env["platform"]]:
|
|
|
opts.Add(opt)
|
|
|
|
|
|
+# Platform-specific flags.
|
|
|
+# These can sometimes override default options, so they need to be processed
|
|
|
+# as early as possible to ensure that we're using the correct values.
|
|
|
+flag_list = platform_flags[env["platform"]]
|
|
|
+for key, value in flag_list.items():
|
|
|
+ if key not in ARGUMENTS or ARGUMENTS[key] == "auto": # Allow command line to override platform flags
|
|
|
+ env[key] = value
|
|
|
+
|
|
|
# Update the environment to take platform-specific options into account.
|
|
|
opts.Update(env, {**ARGUMENTS, **env.Dictionary()})
|
|
|
|
|
@@ -568,17 +576,8 @@ if env["build_profile"] != "":
|
|
|
print_error('Failed to open feature build profile: "{}"'.format(env["build_profile"]))
|
|
|
Exit(255)
|
|
|
|
|
|
-# Platform specific flags.
|
|
|
-# These can sometimes override default options.
|
|
|
-flag_list = platform_flags[env["platform"]]
|
|
|
-for key, value in flag_list.items():
|
|
|
- if key not in ARGUMENTS or ARGUMENTS[key] == "auto": # Allow command line to override platform flags
|
|
|
- env[key] = value
|
|
|
-
|
|
|
# 'dev_mode' and 'production' are aliases to set default options if they haven't been
|
|
|
# set manually by the user.
|
|
|
-# These need to be checked *after* platform specific flags so that different
|
|
|
-# default values can be set (e.g. to keep LTO off for `production` on some platforms).
|
|
|
if env["dev_mode"]:
|
|
|
env["verbose"] = methods.get_cmdline_bool("verbose", True)
|
|
|
env["warnings"] = ARGUMENTS.get("warnings", "extra")
|