blob: 6c084c701182cc64248dfc817a3ba6c1d6ea08d2 [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/src/*",
"//tools/gn_desc:gn_desc.json",
"//vendor/google/*",
"//zircon/kernel/lib/version/*",
]
# See: fxrev.dev/528291
visibility += [ "//build/rust:*" ]
# See: fxbug.dev/69444
visibility += [ "//sdk:cts_generate" ]
# See: fxbug.dev/44889
visibility += [ "//sdk:final_fuchsia_idk" ]
# 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" ]
# Unit tests for the ffx e2e library make their own amber-files to test universe package resolve.
visibility += [ "//src/developer/ffx/lib/e2e_emu:*" ]
# 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/bazel_sdk:*",
"//build/bazel/examples/*",
"//build/bazel/licenses:*",
"//build/bazel/tests/*",
]
# FIXME(http://fxbug.dev/121915): //build/packages/prebuilt_packages.gni
# needs `hermetic_action_ignored_prefixes`. Remove these entries when
# `prebuilt_package` is hermetic.
visibility += [
"//examples/fortune:fortune_teller",
"//sdk/ctf:*",
"//sdk/ctf/release:*",
"//sdk/ctf/release/packages:*",
"//src/cast:cast_runner_pkg",
"//src/chromium:chrome_pkg",
"//src/chromium:chromium_cast_runner_tests_cast_runner_integration_tests",
"//src/chromium:chromium_common_tests_base_unittests",
"//src/chromium:chromium_common_tests_blink_common_unittests",
"//src/chromium:chromium_common_tests_ipc_tests",
"//src/chromium:chromium_common_tests_ipc_unittests",
"//src/chromium:chromium_common_tests_media_unittests",
"//src/chromium:chromium_common_tests_mojo_unittests",
"//src/chromium:chromium_common_tests_skia_unittests",
"//src/chromium:chromium_web_engine_tests_web_engine_integration_tests",
"//src/chromium:chromium_web_engine_tests_web_engine_integration_tests_cfv1",
"//src/chromium:chromium_web_engine_tests_web_runner_integration_tests",
"//src/chromium:web_engine_pkg",
"//src/chromium:web_engine_shell_pkg",
"//src/chromium:web_runner_pkg",
"//src/connectivity/wlan/tools/third_party/broadcom:wl_pkg",
"//src/dart:dart_aot_product_runner",
"//src/dart:dart_aot_runner",
"//src/dart:dart_jit_product_runner",
"//src/dart:dart_jit_runner",
"//src/flutter:flutter_aot_product_runner",
"//src/flutter:flutter_aot_runner",
"//src/flutter:flutter_jit_product_runner",
"//src/flutter:flutter_jit_runner",
"//src/graphics/drivers/arm-mali/icd:libvulkan_arm_g52_r0p0",
"//src/media/codec/codecs/vaapi:codec_runner_intel_gen",
"//src/ui/backlight/drivers:chromebook-keyboard-backlight",
]
# TODO(fxbug.dev/84924): License analysis uses the output of 'fx gn gen', which
# can potentially touch every file in the repository. Remove this entry when license
# management becomes a hermetic process.
visibility += [ "//tools/check-licenses/util/cmd/gn/*" ]
visibility += [ "//zircon/kernel/lib/userabi/userboot/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/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/mock-mmio-reg:*",
"//src/firmware/lib/abr:*",
"//src/firmware/lib/zbi:*",
"//src/firmware/lib/zircon_boot:*",
"//src/lib/elfldltl:*",
"//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-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/elf-search:*",
"//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/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/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/lz4:*",
"//zircon/tools/zbi:*",
]
}
# TODO(https://fxbug.dev/94952): to be populated.
group("output_dir_leaking_allowlist") {
visibility = [ "*" ]
}
group("config_data_template_allowlist") {
visibility = [
"//build/images/*",
"//src/cast:cast_runner_config",
"//src/chromium:*",
"//src/cobalt/bin/app:*",
"//src/connectivity/lowpan/drivers/lowpan-ot-driver:config-default",
"//src/connectivity/network/mdns/service:mdns_fuchsia_udp_config",
"//src/connectivity/network/netcfg:config-default",
"//src/connectivity/network/netcfg:config-no-ssh-over-wlan",
"//src/connectivity/network/netcfg:config-prefer-wired",
"//src/connectivity/weave/weavestack:config",
"//src/connectivity/wlan/wlancfg:config",
"//src/developer/forensics:exceptions_enable_jitd_on_startup",
"//src/developer/forensics:feedback_large_disk_product_config",
"//src/developer/forensics:feedback_remote_device_id_provider",
"//src/developer/forensics:feedback_user_config",
"//src/developer/forensics:feedback_userdebug_config",
"//src/developer/memory/buckets:workstation_config_for_memory_monitor",
"//src/developer/memory/monitor:userdebug_config",
"//src/developer/sshd-host:authorized_ssh_keys_config_data",
"//src/developer/sshd-host:config",
"//src/diagnostics/config/persistence:persistence",
"//src/diagnostics/config/pipelines/all:all_selectors",
"//src/diagnostics/config/triage:amlogic-display-detect",
"//src/diagnostics/config/triage:brcmfmac-detect",
"//src/diagnostics/config/triage:mali-detect",
"//src/diagnostics/config/triage:omaha-client-detect",
"//src/diagnostics/detect:enable-report-filing",
"//src/experiences/session_shells/ermine/login:default_config",
"//src/experiences/session_shells/ermine/login:images",
"//src/experiences/session_shells/ermine/shell:images",
"//src/factory/factory_store_providers/config/qemu:alpha",
"//src/factory/factory_store_providers/config/qemu:cast",
"//src/factory/factory_store_providers/config/qemu:misc",
"//src/factory/factory_store_providers/config/qemu:playready",
"//src/factory/factory_store_providers/config/qemu:widevine",
"//src/firmware/fastboot-tcp:fastboot_tcp_mdns_config",
"//src/flutter:runner_config_for_flutter_aot",
"//src/flutter:runner_config_for_flutter_aot_product",
"//src/flutter:runner_config_for_flutter_jit",
"//src/flutter:runner_config_for_flutter_jit_product",
"//src/fonts/*",
"//src/graphics/lib/goldfish-vulkan/gnbuild:goldfish-config",
"//src/hwinfo:default_board_config",
"//src/hwinfo:default_product_config",
"//src/lib/icu/tzdata:*",
"//src/media/audio/config:chromebook-config",
"//src/modular/build:allow_persistent_config_override",
"//src/security/lib/scrutiny/tests/*",
"//src/security/policy:appmgr_account_manager_allowlist_eng",
"//src/security/policy:appmgr_build_info_allowlist_eng",
"//src/security/policy:appmgr_component_event_provider_allowlist_eng",
"//src/security/policy:appmgr_cr50_allowlist_eng",
"//src/security/policy:appmgr_debug_resource_allowlist_eng",
"//src/security/policy:appmgr_deprecated_ambient_replace_as_executable_allowlist_eng",
"//src/security/policy:appmgr_deprecated_global_dev_allowlist_eng",
"//src/security/policy:appmgr_deprecated_misc_storage_allowlist_eng",
"//src/security/policy:appmgr_hub_allowlist_eng",
"//src/security/policy:appmgr_hypervisor_resource_allowlist_eng",
"//src/security/policy:appmgr_info_resource_allowlist_eng",
"//src/security/policy:appmgr_ioport_resource_allowlist_eng",
"//src/security/policy:appmgr_irq_resource_allowlist_eng",
"//src/security/policy:appmgr_mmio_resource_allowlist_eng",
"//src/security/policy:appmgr_nn_model_executor_allowlist_eng",
"//src/security/policy:appmgr_openthread_allowlist_eng",
"//src/security/policy:appmgr_package_cache_allowlist_eng",
"//src/security/policy:appmgr_package_resolver_allowlist_eng",
"//src/security/policy:appmgr_pkgfs_versions_allowlist_eng",
"//src/security/policy:appmgr_power_resource_allowlist_eng",
"//src/security/policy:appmgr_root_job_allowlist_eng",
"//src/security/policy:appmgr_root_resource_allowlist_eng",
"//src/security/policy:appmgr_smc_resource_allowlist_eng",
"//src/security/policy:appmgr_system_updater_allowlist_eng",
"//src/security/policy:appmgr_vmex_resource_allowlist_eng",
"//src/security/policy:appmgr_weave_signer_allowlist_eng",
"//src/security/tests/pkg_test/config:pkg_resolver_repository_config",
"//src/security/tests/scrutiny_ffx_integration:empty_config",
"//src/settings/config:workstation_eng_agent_config",
"//src/settings/config:workstation_eng_interface_config",
"//src/sys/appmgr:appmgr_scheme_config",
"//src/sys/appmgr/config/gwp_asan:default",
"//src/sys/appmgr/config/gwp_asan:no_sample",
"//src/sys/component_manager:component_id_index_for_debug_config-config-data",
"//src/sys/component_manager/tests/fuchsia_boot_resolver:empty_config",
"//src/sys/pkg/bin/omaha-client:*",
"//src/sys/pkg/bin/omaha-client:omaha-client-config",
"//src/sys/pkg/bin/pkg-resolver:*",
"//src/sys/pkg/bin/system-update-checker:*",
"//src/sys/pkg/bin/system-update-committer:*",
"//src/sys/pkg/tests/system-update-checker:*",
"//src/testing/metrics-logger:*",
"//src/tests/intl/tzdata:*",
"//src/ui/a11y/lib/semantics/tests:__single-font-collection_local_font_bundle_config_data",
"//src/ui/a11y/lib/semantics/tests:single-font-collection_font_manifest_config_data",
"//src/ui/scenic:frame_scheduler_min_predicted_frame_duration_in_us__15000",
"//src/ui/scenic/config:chromebook",
"//third_party/network-conformance/*",
"//vendor/google/*",
"//vendor/third_party/cobalt_registry:cobalt_registry",
"//zircon/kernel/lib/userabi/userboot/tests:*",
]
}