# Copyright 2020 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# A collection of GN arguments that developers can manually set to alter the
# behavior of the build.

declare_args() {
  # List of labels for binaries to include in the system image.
  dev_system_image_deps = []

  # List of labels for targets that should be built but not included in any
  # build outputs that are part of the build API (e.g. zbi's, package servers).
  dev_build_only_deps = []

  # List of labels for objects to include in the ZBI.
  dev_bootfs_labels = []

  # List of binary labels to include in the zedboot ZBI.
  dev_zedboot_bootfs_labels = []

  # List of binary labels to include in the recovery ZBI.
  dev_recovery_bootfs_labels = []

  # List of strings to append to the kernel command line.
  dev_kernel_cmdline = []

  # List of strings to append to the zedboot kernel command line.
  dev_zedboot_kernel_cmdline = []

  # List of strings to append to the recovery kernel command line.
  dev_recovery_kernel_cmdline = []
}
