blob: d0e4956d0946cc08f9fa55dd4157341af9d816a0 [file] [log] [blame]
# Copyright 2022 The Fuchsia Authors.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/assembly/product_assembly_configuration.gni")
import("//build/assembly/sshd_config.gni")
import("//build/info/info.gni")
assert(
is_fuchsia,
"Product definitions and assemblies should only be defined in the fuchsia toolchain")
# This is the base platform configuration used by core
_platform_configuration_base = {
build_type = "eng"
bluetooth = {
type = "standard"
snoop = "lazy"
}
# Include sl4f on all core products until tests transition to other APIs.
development_support = {
include_sl4f = true
tools = {
audio = {
driver_tools = true
full_stack_tools = true
}
connectivity = {
enable_networking = true
enable_wlan = true
enable_thread = true
}
}
}
fonts = {
# See base_packages below.
font_collection = "small-open-fonts-collection"
}
media = {
audio = {
full_stack = {
}
}
enable_codecs = true
enable_sessions = true
}
power = {
enable_non_hermetic_testing = true
}
setui = {
}
storage = {
}
ui = {
supported_input_devices = [
"button",
"touchscreen",
]
}
# If the 'authorized_ssh_keys_path' GN arg has been set, then pass that path
# as part of the platform configuration.
if (authorized_ssh_keys_path != false) {
development_support = {
authorized_ssh_keys_path =
rebase_path(authorized_ssh_keys_path, root_build_dir)
}
}
}
_storage_f2fs = {
storage = {
mutable_storage_garbage_collection = true
filesystems = {
volume = {
fvm = {
data = {
data_filesystem_format = "f2fs"
}
blob = {
}
}
}
}
}
}
_storage_minfs = {
storage = {
mutable_storage_garbage_collection = true
filesystems = {
volume = {
fvm = {
data = {
data_filesystem_format = "minfs"
}
blob = {
}
}
}
}
}
}
_base_packages = [
{
# Provides font assets for `platform.fonts.font_collection` above.
package_target = "//src/fonts/asset_providers:small-open-fonts-collection.asset-provider.package"
},
]
_cache_packages = [
{
package_target = "//src/chromium:web_engine_pkg"
},
]
product_assembly_configuration("core") {
testonly = true
platform = {
forward_variables_from(_platform_configuration_base, "*")
}
product = {
build_info = default_product_build_info
}
base_packages = _base_packages
cache_packages = _cache_packages
deps = [ "//build/info:build_info_files" ]
version = build_info_version
}
product_assembly_configuration("core_with_f2fs") {
testonly = true
platform = {
forward_variables_from(_platform_configuration_base, "*")
forward_variables_from(_storage_f2fs, "*")
}
product = {
build_info = default_product_build_info
}
base_packages = _base_packages
cache_packages = _cache_packages
deps = [ "//build/info:build_info_files" ]
version = build_info_version
}
product_assembly_configuration("core_with_minfs") {
testonly = true
platform = {
forward_variables_from(_platform_configuration_base, "*")
forward_variables_from(_storage_minfs, "*")
}
product = {
build_info = default_product_build_info
}
base_packages = _base_packages
cache_packages = _cache_packages
deps = [ "//build/info:build_info_files" ]
version = build_info_version
}
product_assembly_configuration("core_with_dfv2_fuzzing") {
testonly = true
platform = {
forward_variables_from(_platform_configuration_base, "*")
driver_framework = {
test_fuzzing_config = {
enable_load_fuzzer = true
max_load_delay_ms = 300
enable_test_shutdown_delays = true
}
}
}
product = {
build_info = default_product_build_info
}
base_packages = _base_packages
cache_packages = _cache_packages
deps = [ "//build/info:build_info_files" ]
version = build_info_version
}