blob: f969d740851d6af335a9aa50ef7d448bd57e778c [file] [log] [blame]
# Copyright 2019 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.
group("build") {
testonly = true
deps = [ ":tests" ]
}
# The tests listed in this target will be built by the default build.
group("tests") {
testonly = true
deps = [
"bazel:tests",
"dart:tests",
"fidl:tests",
"go:tests",
"python:tests",
"rbe:tests",
"rust:tests",
"sdk:tests",
"tools:tests",
"tracer:tests",
]
}
group("non_hermetic_deps") {
# ________ _________ ________ ________
# |\ ____\|\___ ___\\ __ \|\ __ \
# \ \ \___|\|___ \ \_\ \ \|\ \ \ \|\ \
# \ \_____ \ \ \ \ \ \ \\\ \ \ ____\
# \|____|\ \ \ \ \ \ \ \\\ \ \ \___|
# ____\_\ \ \ \__\ \ \_______\ \__\
# |\_________\ \|__| \|_______|\|__|
# \|_________|
# This is an allowlist of actions with `hermetic_deps = false`.
#
# Introducing new actions that are non-hermetic is not allowed.
# A cleanup is in progress. See:
# https://fuchsia.dev/fuchsia-src/contribute/open_projects/build/hermetic_actions
#
# For more information about hermetic build actions:
# https://fuchsia.dev/fuchsia-src/development/build/hermetic_actions
#
# Maintainers will accept changes to the allowlist below that support
# refactors, such as moving a legacy target to a different directory.
#
# To regenerate:
# { fx gn refs $(fx get-build-dir) '//build:non_hermetic_deps'; fx gn refs $(fx get-build-dir) '//build:non_hermetic_deps(//build/toolchain:host_x64)'; } | sed 's|\([^:]*\):.*|"\1/*",|' | sort | uniq
visibility = [
"//third_party/crashpad/*",
"//vendor/google/*",
"//zircon/kernel/lib/version/*",
]
# See: fxrev.dev/528291
visibility += [ "//build/rust:*" ]
# See: fxbug.dev/69444
visibility += [
"//scripts/sdk/gn:gn.modular.tar.gz",
"//sdk:cts_generate",
]
# TODO(http://fxbug.dev/92612): Remove entries when
# assembly input bundle creation no longer triggers false-positives in the
# action_tracer.py due to how it cleans it's dynamic outputs.
visibility += [ "//bundles/assembly/*" ]
# //build/images/assemble_system.gni needs `hermetic_deps = false`, and that
# will not be resolved except by moving to Bazel.
visibility += [
"//build/images/*",
"//src/security/lib/scrutiny/plugins/*",
"//src/security/lib/scrutiny/tests/*",
"//src/security/tests/pkg_test/tests/*",
"//src/security/tests/scrutiny_ffx_integration/*",
"//src/sys/component_manager/tests/fuchsia_boot_resolver:*",
"//src/tests/assembly/*",
"//third_party/network-conformance/images/*",
]
# TODO(fxbug.dev/94463): Remove entry when action tracer can handle ld.lld invocations.
visibility += [ "//src/graphics/lib/magma/src/libmagma:*" ]
# TODO(fxbug.dev/109382): Hermetic deps checking is disabled on build_id_entry
visibility += [ "//third_party/intel/media-driver/fuchsia:*" ]
# These repos are not in the default checkout.
visibility += [
# This git repo is only checked out when the vulkan-cts attribute is set.
"//third_party/arm-mali-bifrost/*",
"//third_party/vulkan-cts/fuchsia/*",
]
# TODO(https://fxbug.dev/87512): Remove this entry when it no longer executes
# fx tools.
visibility += [ "//tools/docsgen:invoke_helpdoc" ]
# The Bazel workspace that exposes Ninja outputs as Bazel inputs
# is generated by an action that has unspecified outputs.
visibility += [
"//build/assembly/scripts:bazel_assembly_input_bundle_tool",
"//build/bazel:*",
"//build/bazel/assembly:*",
"//build/bazel/examples/*",
"//build/bazel/tests/*",
]
}
# Build targets that use the legacy zx_library and zx_host_tool templates
# need to depend on the target below and appear in the visibility list.
# Please don't introduce new uses of these wrappers. Rather:
#
# Instead of zx_library, please use one of the following templates:
# - source_set
# - sdk_source_set
# - static_library
# - sdk_static_library
# - shared_library
# - sdk_shared_library
#
# Instead of zx_host_tool, use executable and set host_toolchain as needed.
#
# See: https://fuchsia.dev/fuchsia-src/contribute/open_projects/build/zx_wrappers_deprecation
group("deprecated_zx_wrapper_allowlist") {
visibility = [
"//sdk/lib/fdio:*",
"//sdk/lib/fit:*",
"//sdk/lib/fit-promise:*",
"//sdk/lib/stdcompat:*",
"//src/bringup/bin/svchost:*",
"//src/devices/block/lib/scsi:*",
"//src/devices/bus/lib/device-protocol-pdev:*",
"//src/devices/bus/lib/device-protocol-platform-device:*",
"//src/devices/bus/lib/virtio:*",
"//src/devices/bus/testing/mock-sdio:*",
"//src/devices/i2c/lib/device-protocol-i2c-channel:*",
"//src/devices/i2c/testing/fake-i2c:*",
"//src/devices/i2c/testing/mock-i2c:*",
"//src/devices/lib/amlogic:*",
"//src/devices/lib/as370:*",
"//src/devices/lib/broadcom:*",
"//src/devices/lib/dev-operation:*",
"//src/devices/lib/dma-buffer:*",
"//src/devices/lib/driver-info:*",
"//src/devices/lib/focaltech:*",
"//src/devices/lib/mmio:*",
"//src/devices/lib/synchronous-executor:*",
"//src/devices/lib/thermal:*",
"//src/devices/lib/ti:*",
"//src/devices/pci/lib/device-protocol-pci:*",
"//src/devices/pci/lib/pci:*",
"//src/devices/rtc/lib/rtc:*",
"//src/devices/testing/fake-bti:*",
"//src/devices/testing/fake-dma-buffer:*",
"//src/devices/testing/fake-mmio-reg:*",
"//src/devices/testing/fake-msi:*",
"//src/devices/testing/fake-object:*",
"//src/devices/testing/fake-resource:*",
"//src/devices/testing/fake_ddk:*",
"//src/devices/testing/mock-mmio-reg:*",
"//src/devices/usb/lib/usb:*",
"//src/firmware/lib/abr:*",
"//src/firmware/lib/zbi:*",
"//src/firmware/lib/zircon_boot:*",
"//src/lib/elfldltl:*",
"//src/lib/fasync:*",
"//src/lib/llvm-profdata:*",
"//src/lib/trivial-allocator:*",
"//src/lib/zbitl:*",
"//src/lib/zxdump:*",
"//src/media/audio/drivers/lib/audio-driver-proto:*",
"//src/media/audio/drivers/lib/audio-proto-utils:*",
"//src/media/audio/drivers/lib/audio-utils:*",
"//src/media/audio/drivers/lib/intel-hda:*",
"//src/media/audio/lib/simple-codec:*",
"//src/storage/gpt:*",
"//src/storage/lib/disk_inspector:*",
"//src/storage/lib/paver:*",
"//src/storage/lib/watchdog:*",
"//src/storage/memfs:*",
"//src/ui/input/testing/fake-hidbus-ifc:*",
"//src/ui/input/testing/mock-hidbus-ifc:*",
"//third_party/android/platform/external/avb:*",
"//zircon/kernel/arch/x86/phys:*",
"//zircon/kernel/dev/coresight:*",
"//zircon/kernel/lib/acpi_lite:*",
"//zircon/kernel/lib/arch:*",
"//zircon/kernel/lib/arch/arm64:*",
"//zircon/kernel/lib/arch/arm86:*",
"//zircon/kernel/lib/arch/host:*",
"//zircon/kernel/lib/arch/x86:*",
"//zircon/kernel/lib/boot-options:*",
"//zircon/kernel/lib/counters:*",
"//zircon/kernel/lib/devicetree:*",
"//zircon/kernel/lib/efi:*",
"//zircon/kernel/lib/special-sections:*",
"//zircon/kernel/phys/lib/boot-shim:*",
"//zircon/kernel/phys/lib/memalloc:*",
"//zircon/kernel/phys/lib/page-table:*",
"//zircon/system/ulib/abs_clock:*",
"//zircon/system/ulib/affine:*",
"//zircon/system/ulib/async:*",
"//zircon/system/ulib/async-default:*",
"//zircon/system/ulib/async-loop:*",
"//zircon/system/ulib/async-loop/testing:*",
"//zircon/system/ulib/async-testing:*",
"//zircon/system/ulib/backtrace-request:*",
"//zircon/system/ulib/bitmap:*",
"//zircon/system/ulib/closure-queue:*",
"//zircon/system/ulib/cmdline:*",
"//zircon/system/ulib/ddk-platform-defs:*",
"//zircon/system/ulib/debugdata:*",
"//zircon/system/ulib/driver-unit-test:*",
"//zircon/system/ulib/edid:*",
"//zircon/system/ulib/elf-search:*",
"//zircon/system/ulib/elfload:*",
"//zircon/system/ulib/explicit-memory:*",
"//zircon/system/ulib/fbl:*",
"//zircon/system/ulib/fdio-caller:*",
"//zircon/system/ulib/ffl:*",
"//zircon/system/ulib/fidl-async:*",
"//zircon/system/ulib/fidl-utils:*",
"//zircon/system/ulib/fs-host:*",
"//zircon/system/ulib/fzl:*",
"//zircon/system/ulib/gfx:*",
"//zircon/system/ulib/hid:*",
"//zircon/system/ulib/hid-parser:*",
"//zircon/system/ulib/hwreg:*",
"//zircon/system/ulib/hwreg-i2c:*",
"//zircon/system/ulib/hwreg/test/asm:*",
"//zircon/system/ulib/id_allocator:*",
"//zircon/system/ulib/image-format:*",
"//zircon/system/ulib/inspect:*",
"//zircon/system/ulib/inspector:*",
"//zircon/system/ulib/io-scheduler:*",
"//zircon/system/ulib/kcounter:*",
"//zircon/system/ulib/kernel-debug:*",
"//zircon/system/ulib/ktrace:*",
"//zircon/system/ulib/lazy_init:*",
"//zircon/system/ulib/ldmsg:*",
"//zircon/system/ulib/lockdep:*",
"//zircon/system/ulib/log-writer-logger:*",
"//zircon/system/ulib/log-writer-textfile:*",
"//zircon/system/ulib/mbr:*",
"//zircon/system/ulib/mini-process:*",
"//zircon/system/ulib/mipi-dsi:*",
"//zircon/system/ulib/mmio-ptr:*",
"//zircon/system/ulib/mock-boot-arguments:*",
"//zircon/system/ulib/mock-function:*",
"//zircon/system/ulib/mtd:*",
"//zircon/system/ulib/nand-redundant-storage:*",
"//zircon/system/ulib/page_tables:*",
"//zircon/system/ulib/perftest:*",
"//zircon/system/ulib/pretty:*",
"//zircon/system/ulib/processargs:*",
"//zircon/system/ulib/profile:*",
"//zircon/system/ulib/ram-crashlog:*",
"//zircon/system/ulib/range:*",
"//zircon/system/ulib/refcount:*",
"//zircon/system/ulib/region-alloc:*",
"//zircon/system/ulib/runtests-utils:*",
"//zircon/system/ulib/runtime:*",
"//zircon/system/ulib/smbios:*",
"//zircon/system/ulib/spi:*",
"//zircon/system/ulib/storage-metrics:*",
"//zircon/system/ulib/storage/buffer:*",
"//zircon/system/ulib/storage/operation:*",
"//zircon/system/ulib/svc:*",
"//zircon/system/ulib/sync:*",
"//zircon/system/ulib/sysconfig-client:*",
"//zircon/system/ulib/syslog:*",
"//zircon/system/ulib/sysmem-connector:*",
"//zircon/system/ulib/sysmem-version:*",
"//zircon/system/ulib/task-utils:*",
"//zircon/system/ulib/test-exceptions:*",
"//zircon/system/ulib/test-utils:*",
"//zircon/system/ulib/tftp:*",
"//zircon/system/ulib/thread-safe-deleter:*",
"//zircon/system/ulib/trace:*",
"//zircon/system/ulib/trace-engine:*",
"//zircon/system/ulib/trace-provider:*",
"//zircon/system/ulib/trace-reader:*",
"//zircon/system/ulib/trace-test-utils:*",
"//zircon/system/ulib/trace-vthread:*",
"//zircon/system/ulib/uart:*",
"//zircon/system/ulib/usb-peripheral-utils:*",
"//zircon/system/ulib/usb-virtual-bus-launcher:*",
"//zircon/system/ulib/virtio:*",
"//zircon/system/ulib/xdc-host-utils:*",
"//zircon/system/ulib/xdc-server-utils:*",
"//zircon/system/ulib/zircon-internal:*",
"//zircon/system/ulib/zx:*",
"//zircon/system/ulib/zx-panic-libc:*",
"//zircon/third_party/ulib/cksum:*",
"//zircon/third_party/ulib/linenoise:*",
"//zircon/third_party/ulib/lz4:*",
"//zircon/third_party/ulib/ngunwind:*",
"//zircon/tools/kazoo:*",
"//zircon/tools/lz4:*",
"//zircon/tools/zbi:*",
]
}
# TODO(https://fxbug.dev/94952): to be populated.
group("output_dir_leaking_allowlist") {
visibility = [ "*" ]
}
# TODO(fxbug.dev/102652): remove this allow list (and allow anyone to use
# subpackages) when Fuchsia makes subpackages generally available.
group("declare_subpackages_allowlist") {
visibility = [
"//examples/components/routing/integration_tests/cpp:*",
"//examples/components/routing/integration_tests/rust:*",
"//examples/components/routing/with_subpackages:*",
"//examples/components/subpackages:*",
# CTF targets that need visibility
"//sdk/ctf/release:*",
"//sdk/ctf/test_realm:*",
"//sdk/ctf/tests/*",
"//src/sys/component_manager/tests/collections:collections_integration_test_pkg.pm",
"//src/sys/pkg/lib/fuchsia-pkg:*",
]
}