[modular][config] Add an option to modular_config() to not launch basemgr.cmx on boot.

Buganizer bug: b/139372447

Change-Id: Ieaae22a6dba838ce464ce56c2de00b867d537f34
diff --git a/peridot/build/modular_config/modular_config.gni b/peridot/build/modular_config/modular_config.gni
index 8b0a37b..bd6a803 100644
--- a/peridot/build/modular_config/modular_config.gni
+++ b/peridot/build/modular_config/modular_config.gni
@@ -5,6 +5,12 @@
 import("//build/config.gni")
 import("//build/json/validate_json.gni")
 
+declare_args() {
+  # Indicates whether to include basemgr.cmx in the boot sequence for the
+  # product image.
+  launch_basemgr_on_boot = true
+}
+
 # Validates a modular framework configuration file against a schema
 #
 # Parameters
@@ -54,6 +60,14 @@
     ]
   }
 
+  # By default, add the sysmgr config to automatically launch basemgr.cmx,
+  # unless the invoker explicitly disables this with
+  # launch_basemgr_on_boot = false.
+  config_data_deps = [ ":${invoker.target_name}_validate" ]
+  if (launch_basemgr_on_boot) {
+    config_data_deps += [ ":basemgr.config" ]
+  }
+
   config_data(invoker.target_name) {
     for_pkg = "basemgr"
     sources = [
@@ -63,9 +77,6 @@
       "startup.config",
     ]
 
-    deps = [
-      ":${invoker.target_name}_validate",
-      ":basemgr.config",
-    ]
+    deps = config_data_deps
   }
 }