Add SOONG_ONLY to the banner

Bug: 393162468
Test: manual
Change-Id: I91561c00ef0521cdd350820524b3c198b209a61c
diff --git a/ui/build/config.go b/ui/build/config.go
index 9fbbc48..890ed46 100644
--- a/ui/build/config.go
+++ b/ui/build/config.go
@@ -78,15 +78,19 @@
 	logsPrefix    string
 
 	// From the arguments
-	parallel                  int
-	keepGoing                 int
-	verbose                   bool
-	checkbuild                bool
-	dist                      bool
-	jsonModuleGraph           bool
-	reportMkMetrics           bool // Collect and report mk2bp migration progress metrics.
-	soongDocs                 bool
-	skipConfig                bool
+	parallel        int
+	keepGoing       int
+	verbose         bool
+	checkbuild      bool
+	dist            bool
+	jsonModuleGraph bool
+	reportMkMetrics bool // Collect and report mk2bp migration progress metrics.
+	soongDocs       bool
+	skipConfig      bool
+	// Either the user or product config requested that we skip soong (for the banner). The other
+	// skip flags tell whether *this* soong_ui invocation will skip kati - which will be true
+	// during lunch.
+	soongOnlyRequested        bool
 	skipKati                  bool
 	skipKatiControlledByFlags bool
 	skipKatiNinja             bool
@@ -254,6 +258,7 @@
 
 	if value, ok := ret.environ.Get("SOONG_ONLY"); ok && !ret.skipKatiControlledByFlags {
 		if value == "true" || value == "1" || value == "y" || value == "yes" {
+			ret.soongOnlyRequested = true
 			ret.skipKatiControlledByFlags = true
 			ret.skipKati = true
 			ret.skipKatiNinja = true
@@ -866,6 +871,7 @@
 			if c.skipKatiControlledByFlags {
 				ctx.Fatalf("Cannot specify both --soong-only and --no-soong-only")
 			}
+			c.soongOnlyRequested = true
 			c.skipKatiControlledByFlags = true
 			c.skipKati = true
 			c.skipKatiNinja = true