Add a --output_directory_suffix command line option to facilitate the removal of the C++ toolchain identifier from the output path.

RELNOTES: None.
PiperOrigin-RevId: 166705005
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
index 56ed29d..a367817 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
@@ -1874,8 +1874,16 @@
     } else {
       lipoSuffix = "";
     }
-    String toolchainPrefix = toolchainIdInOutputDirectory
-        ? toolchainIdentifier : desiredCpu;
+    String toolchainPrefix;
+    if (toolchainIdInOutputDirectory) {
+      toolchainPrefix = toolchainIdentifier;
+    } else {
+      toolchainPrefix = desiredCpu;
+      if (!cppOptions.outputDirectoryTag.isEmpty()) {
+        toolchainPrefix += "-" + cppOptions.outputDirectoryTag;
+      }
+    }
+
     return toolchainPrefix + lipoSuffix;
   }
 
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
index fec5f44..371d57c 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
@@ -151,6 +151,19 @@
   )
   public String cppCompiler;
 
+  // This is different from --platform_suffix in that that one is designed to facilitate the
+  // migration to toolchains and this one is designed to eliminate the C++ toolchain identifier
+  // form the output directory path.
+  @Option(
+      name = "cc_output_directory_tag",
+      defaultValue = "",
+      category = "misc",
+      documentationCategory = OptionDocumentationCategory.UNCATEGORIZED,
+      effectTags = {OptionEffectTag.UNKNOWN},
+      help = "Specifies a suffix to be added to the configuration directory."
+  )
+  public String outputDirectoryTag;
+
   @Option(
     name = "glibc",
     defaultValue = "null",