chromium/chrome/android/modules/chrome_feature_modules.gni

# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/android/config.gni")
import("//chrome/android/features/dev_ui/dev_ui_module.gni")
import("//chrome/android/modules/buildflags.gni")
import(
    "//chrome/android/modules/cablev2_authenticator/cablev2_authenticator_module.gni")
import("//chrome/android/modules/stack_unwinder/stack_unwinder_module.gni")
import("//chrome/android/modules/test_dummy/test_dummy_module.gni")
import("//device/vr/buildflags/buildflags.gni")

if (enable_arcore) {
  import("//chrome/android/features/ar/ar_module.gni")
}

# List of feature module descs for each Chrome flavor. These lists are used to
# autogenerate the relevant module targets and bundles. A feature module desc
# is a GN scope with the following fields:
#   name: Name of feature module.
#   java_deps: Java libraries and resources going into module.
#   android_manifest: AndroidManifest.xml of module.
#   android_manifest_dep: (Optional) Target that generates AndroidManifest.xml.
#   native_deps: (Optional) Native code going into module.
#   native_entrypoints: (Optional) File with list of exposed symbols from native
#     feature module library.
#   loadable_modules_32_bit: (Optional) List of additional 32-bit shared
#     library files going into module if the module is executed in 32 bit.
#   loadable_modules_64_bit: (Optional) List of additional 64-bit shared
#     library files going into module if the module is executed in 64 bit.
#   pak_deps: (Optional) Grit or repack targets of PAKs going into module.
#   paks: (Optional) PAKs going into module.
# Each new module needs to add a desc to one of the lists below.

chrome_module_descs = [
  cablev2_authenticator_module_desc,
  test_dummy_module_desc,
  stack_unwinder_module_desc,
]
if (dfmify_dev_ui) {
  chrome_module_descs += [ dev_ui_module_desc ]
}
if (false) {  # AR DFM is currently disabled
  chrome_module_descs += [ ar_module_desc ]
}

monochrome_module_descs = chrome_module_descs

# TODO: Remove once unused downstream.
trichrome_module_descs = chrome_module_descs