blob: 8c5d402830d616d24c024844dced79bb762db2e6 [file] [log] [blame]
# Copyright 2022 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.
import("//build/cpp/sdk_source_set.gni")
_shared_public_configs = [ "//sdk/config" ]
sdk_source_set("cpp") {
category = "partner"
sdk_name = "component_outgoing_cpp"
include_base = "//sdk"
stable = true
sources = [
"globals.cc",
"globals.h",
"handlers.h",
"outgoing_directory.cc",
"outgoing_directory.h",
"structured_config.h",
]
# TODO(https://fxbug.dev/322528969): Temporarily disable asan container check for
# OutgoingDirectory::MakePath. This seems to be a false positive, but let's
# temporarily disable this test for now.
if (target_cpu == "riscv64") {
non_sdk_deps =
[ "//build/config/sanitizers:suppress-asan-container-overflow" ]
}
public_deps = [
"//sdk/fidl/fuchsia.io:fuchsia.io_cpp",
"//sdk/lib/fdio",
"//sdk/lib/fit",
"//sdk/lib/fit-promise",
"//sdk/lib/stdcompat",
"//sdk/lib/svc",
"//zircon/system/ulib/async",
"//zircon/system/ulib/async:async-cpp",
"//zircon/system/ulib/zx",
]
public_configs = _shared_public_configs
}
source_set("cpp_disable_synchronization_check") {
public_deps = [ ":cpp" ]
public_configs = _shared_public_configs
sources = [ "disable_synchronization_check.cc" ]
# Allowlist of components permitted to skip the synchronization check, which
# is turned on by default.
#
# Some components (mostly tests) use OutgoingDirectory with a multithreaded
# dispatcher, without honoring the requirement that the dispatcher servicing
# the outgoing directory is the same one that created it. These are granted a
# legacy exemption to run them with the check disabled so we can enable the
# checker in the SDK.
#
# Do not add to this allowlist without a good reason.
#
# TODO(https://fxbug.dev/42065251): Fix all deps in this allowlist and remove it.
visibility = [
"//src/developer/adb/bin/adb-file-sync:adb-file-sync",
"//src/devices/light-sensor/drivers/ams-light:ams-light-test-bin",
"//src/devices/sysmem/drivers/sysmem:sysmem_common_srcs",
"//src/ui/input/drivers/gt6853:gt6853-test",
]
}