aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/runtime')
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/BlazeOptionHandler.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/CommonCommandOptions.java15
2 files changed, 19 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/BlazeOptionHandler.java b/src/main/java/com/google/devtools/build/lib/runtime/BlazeOptionHandler.java
index cb7548ba81..248ba4578b 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/BlazeOptionHandler.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/BlazeOptionHandler.java
@@ -292,6 +292,10 @@ public abstract class BlazeOptionHandler {
for (String warning : optionsParser.getWarnings()) {
eventHandler.handle(Event.warn(warning));
}
+ CommonCommandOptions commonOptions = optionsParser.getOptions(CommonCommandOptions.class);
+ for (String warning : commonOptions.deprecationWarnings) {
+ eventHandler.handle(Event.warn(warning));
+ }
} catch (OptionsParsingException e) {
eventHandler.handle(Event.error(e.getMessage()));
return ExitCode.COMMAND_LINE_ERROR;
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/CommonCommandOptions.java b/src/main/java/com/google/devtools/build/lib/runtime/CommonCommandOptions.java
index 1f4e0d738f..c93f667878 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/CommonCommandOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/CommonCommandOptions.java
@@ -275,4 +275,19 @@ public class CommonCommandOptions extends OptionsBase {
+ "logged with the rest of the Bazel invocation."
)
public ToolCommandLineEvent toolCommandLine;
+
+ @Option(
+ name = "unconditional_warning",
+ defaultValue = "",
+ documentationCategory = OptionDocumentationCategory.UNDOCUMENTED,
+ effectTags = {OptionEffectTag.TERMINAL_OUTPUT},
+ allowMultiple = true,
+ help =
+ "A warning that will unconditionally get printed with build warnings and errors. This is "
+ + "useful to deprecate bazelrc files or --config definitions. If the intent is to "
+ + "effectively deprecate some flag or combination of flags, this is NOT sufficient. "
+ + "The flag or flags should use the deprecationWarning field in the option definition, "
+ + "or the bad combination should be checked for programmatically."
+ )
+ public List<String> deprecationWarnings;
}