[modular] Add modular_config output_name parameter
This enables products to contain multiple Modular configuration files
with different names.
Note that at this time, basemgr expects configuration at a hardcoded
path, /config/data/startup.config, which matches the default
output_name.
Bug: 54048
Change-Id: Ie6dd7bbf290e534e93bd1f9e296065d77d2cf38a
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/404710
Commit-Queue: Yegor Pomortsev <ypomortsev@google.com>
Reviewed-by: Gabe Schine <thatguy@google.com>
Reviewed-by: Casey Borders <casbor@google.com>
diff --git a/src/modular/build/modular_config/modular_config.gni b/src/modular/build/modular_config/modular_config.gni
index fa3513d..a0e188f 100644
--- a/src/modular/build/modular_config/modular_config.gni
+++ b/src/modular/build/modular_config/modular_config.gni
@@ -37,13 +37,19 @@
}
# Packages a modular framework configuration after validating the configuration.
-# Configuration will be found in basemgr's /config/data/startup.config.
+# Configuration will be found in basemgr's /config/data directory.
#
# Parameters
# config (required)
# This is a file containing configuration for the modular framework.
# It will be schema-validated.
#
+# output_name (optional)
+# The output name for the configuration file.
+# For example, if output_name is `foo.config`, basemgr can read this
+# configuration file from `/config/data/foo.config`.
+# Default: startup.config
+#
# sdk_category (optional)
# Publication level of the library in SDKs.
# See //build/sdk/sdk_atom.gni.
@@ -73,10 +79,15 @@
config_data_deps += [ ":" + target_name + "_basemgr.config" ]
}
+ output_name = "startup.config"
+ if (defined(invoker.output_name)) {
+ output_name = invoker.output_name
+ }
+
config_data(invoker.target_name) {
for_pkg = "basemgr"
sources = [ rebase_path(invoker.config) ]
- outputs = [ "startup.config" ]
+ outputs = [ output_name ]
deps = config_data_deps
}