# Copyright 2022 The Pigweed Authors
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License. You may obtain a copy of
# the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.

# Build args and lists for all modules in Pigweed.
#
# DO NOT EDIT! Generated by pw_build/generate_modules_lists.py.
#
# To add modules here, list them in PIGWEED_MODULES and build the
# update_modules target and commit the updated version of this file:
#
#   ninja -C out update_modules
#
# DO NOT IMPORT THIS FILE DIRECTLY!
#
# Import it through //build_overrides/pigweed.gni instead.

# Declare a build arg for each module.
declare_args() {
  dir_docker = get_path_info("../docker", "abspath")
  dir_pw_allocator = get_path_info("../pw_allocator", "abspath")
  dir_pw_analog = get_path_info("../pw_analog", "abspath")
  dir_pw_android_toolchain = get_path_info("../pw_android_toolchain", "abspath")
  dir_pw_arduino_build = get_path_info("../pw_arduino_build", "abspath")
  dir_pw_assert = get_path_info("../pw_assert", "abspath")
  dir_pw_assert_basic = get_path_info("../pw_assert_basic", "abspath")
  dir_pw_assert_log = get_path_info("../pw_assert_log", "abspath")
  dir_pw_assert_tokenized = get_path_info("../pw_assert_tokenized", "abspath")
  dir_pw_assert_zephyr = get_path_info("../pw_assert_zephyr", "abspath")
  dir_pw_base64 = get_path_info("../pw_base64", "abspath")
  dir_pw_bloat = get_path_info("../pw_bloat", "abspath")
  dir_pw_blob_store = get_path_info("../pw_blob_store", "abspath")
  dir_pw_bluetooth = get_path_info("../pw_bluetooth", "abspath")
  dir_pw_bluetooth_hci = get_path_info("../pw_bluetooth_hci", "abspath")
  dir_pw_boot = get_path_info("../pw_boot", "abspath")
  dir_pw_boot_cortex_m = get_path_info("../pw_boot_cortex_m", "abspath")
  dir_pw_build = get_path_info("../pw_build", "abspath")
  dir_pw_build_info = get_path_info("../pw_build_info", "abspath")
  dir_pw_build_mcuxpresso = get_path_info("../pw_build_mcuxpresso", "abspath")
  dir_pw_bytes = get_path_info("../pw_bytes", "abspath")
  dir_pw_checksum = get_path_info("../pw_checksum", "abspath")
  dir_pw_chrono = get_path_info("../pw_chrono", "abspath")
  dir_pw_chrono_embos = get_path_info("../pw_chrono_embos", "abspath")
  dir_pw_chrono_freertos = get_path_info("../pw_chrono_freertos", "abspath")
  dir_pw_chrono_stl = get_path_info("../pw_chrono_stl", "abspath")
  dir_pw_chrono_threadx = get_path_info("../pw_chrono_threadx", "abspath")
  dir_pw_chrono_zephyr = get_path_info("../pw_chrono_zephyr", "abspath")
  dir_pw_cli = get_path_info("../pw_cli", "abspath")
  dir_pw_compilation_testing =
      get_path_info("../pw_compilation_testing", "abspath")
  dir_pw_console = get_path_info("../pw_console", "abspath")
  dir_pw_containers = get_path_info("../pw_containers", "abspath")
  dir_pw_cpu_exception = get_path_info("../pw_cpu_exception", "abspath")
  dir_pw_cpu_exception_cortex_m =
      get_path_info("../pw_cpu_exception_cortex_m", "abspath")
  dir_pw_crypto = get_path_info("../pw_crypto", "abspath")
  dir_pw_digital_io = get_path_info("../pw_digital_io", "abspath")
  dir_pw_docgen = get_path_info("../pw_docgen", "abspath")
  dir_pw_doctor = get_path_info("../pw_doctor", "abspath")
  dir_pw_env_setup = get_path_info("../pw_env_setup", "abspath")
  dir_pw_file = get_path_info("../pw_file", "abspath")
  dir_pw_function = get_path_info("../pw_function", "abspath")
  dir_pw_fuzzer = get_path_info("../pw_fuzzer", "abspath")
  dir_pw_hdlc = get_path_info("../pw_hdlc", "abspath")
  dir_pw_hex_dump = get_path_info("../pw_hex_dump", "abspath")
  dir_pw_i2c = get_path_info("../pw_i2c", "abspath")
  dir_pw_i2c_mcuxpresso = get_path_info("../pw_i2c_mcuxpresso", "abspath")
  dir_pw_ide = get_path_info("../pw_ide", "abspath")
  dir_pw_interrupt = get_path_info("../pw_interrupt", "abspath")
  dir_pw_interrupt_cortex_m =
      get_path_info("../pw_interrupt_cortex_m", "abspath")
  dir_pw_interrupt_zephyr = get_path_info("../pw_interrupt_zephyr", "abspath")
  dir_pw_kvs = get_path_info("../pw_kvs", "abspath")
  dir_pw_libc = get_path_info("../pw_libc", "abspath")
  dir_pw_log = get_path_info("../pw_log", "abspath")
  dir_pw_log_android = get_path_info("../pw_log_android", "abspath")
  dir_pw_log_basic = get_path_info("../pw_log_basic", "abspath")
  dir_pw_log_null = get_path_info("../pw_log_null", "abspath")
  dir_pw_log_rpc = get_path_info("../pw_log_rpc", "abspath")
  dir_pw_log_string = get_path_info("../pw_log_string", "abspath")
  dir_pw_log_tokenized = get_path_info("../pw_log_tokenized", "abspath")
  dir_pw_log_zephyr = get_path_info("../pw_log_zephyr", "abspath")
  dir_pw_malloc = get_path_info("../pw_malloc", "abspath")
  dir_pw_malloc_freelist = get_path_info("../pw_malloc_freelist", "abspath")
  dir_pw_metric = get_path_info("../pw_metric", "abspath")
  dir_pw_minimal_cpp_stdlib =
      get_path_info("../pw_minimal_cpp_stdlib", "abspath")
  dir_pw_module = get_path_info("../pw_module", "abspath")
  dir_pw_multisink = get_path_info("../pw_multisink", "abspath")
  dir_pw_package = get_path_info("../pw_package", "abspath")
  dir_pw_persistent_ram = get_path_info("../pw_persistent_ram", "abspath")
  dir_pw_polyfill = get_path_info("../pw_polyfill", "abspath")
  dir_pw_preprocessor = get_path_info("../pw_preprocessor", "abspath")
  dir_pw_presubmit = get_path_info("../pw_presubmit", "abspath")
  dir_pw_protobuf = get_path_info("../pw_protobuf", "abspath")
  dir_pw_protobuf_compiler = get_path_info("../pw_protobuf_compiler", "abspath")
  dir_pw_random = get_path_info("../pw_random", "abspath")
  dir_pw_result = get_path_info("../pw_result", "abspath")
  dir_pw_ring_buffer = get_path_info("../pw_ring_buffer", "abspath")
  dir_pw_router = get_path_info("../pw_router", "abspath")
  dir_pw_rpc = get_path_info("../pw_rpc", "abspath")
  dir_pw_rust = get_path_info("../pw_rust", "abspath")
  dir_pw_snapshot = get_path_info("../pw_snapshot", "abspath")
  dir_pw_software_update = get_path_info("../pw_software_update", "abspath")
  dir_pw_span = get_path_info("../pw_span", "abspath")
  dir_pw_spi = get_path_info("../pw_spi", "abspath")
  dir_pw_status = get_path_info("../pw_status", "abspath")
  dir_pw_stm32cube_build = get_path_info("../pw_stm32cube_build", "abspath")
  dir_pw_stream = get_path_info("../pw_stream", "abspath")
  dir_pw_string = get_path_info("../pw_string", "abspath")
  dir_pw_symbolizer = get_path_info("../pw_symbolizer", "abspath")
  dir_pw_sync = get_path_info("../pw_sync", "abspath")
  dir_pw_sync_baremetal = get_path_info("../pw_sync_baremetal", "abspath")
  dir_pw_sync_embos = get_path_info("../pw_sync_embos", "abspath")
  dir_pw_sync_freertos = get_path_info("../pw_sync_freertos", "abspath")
  dir_pw_sync_stl = get_path_info("../pw_sync_stl", "abspath")
  dir_pw_sync_threadx = get_path_info("../pw_sync_threadx", "abspath")
  dir_pw_sync_zephyr = get_path_info("../pw_sync_zephyr", "abspath")
  dir_pw_sys_io = get_path_info("../pw_sys_io", "abspath")
  dir_pw_sys_io_arduino = get_path_info("../pw_sys_io_arduino", "abspath")
  dir_pw_sys_io_baremetal_lm3s6965evb =
      get_path_info("../pw_sys_io_baremetal_lm3s6965evb", "abspath")
  dir_pw_sys_io_baremetal_stm32f429 =
      get_path_info("../pw_sys_io_baremetal_stm32f429", "abspath")
  dir_pw_sys_io_emcraft_sf2 =
      get_path_info("../pw_sys_io_emcraft_sf2", "abspath")
  dir_pw_sys_io_mcuxpresso = get_path_info("../pw_sys_io_mcuxpresso", "abspath")
  dir_pw_sys_io_stdio = get_path_info("../pw_sys_io_stdio", "abspath")
  dir_pw_sys_io_stm32cube = get_path_info("../pw_sys_io_stm32cube", "abspath")
  dir_pw_sys_io_zephyr = get_path_info("../pw_sys_io_zephyr", "abspath")
  dir_pw_system = get_path_info("../pw_system", "abspath")
  dir_pw_target_runner = get_path_info("../pw_target_runner", "abspath")
  dir_pw_thread = get_path_info("../pw_thread", "abspath")
  dir_pw_thread_embos = get_path_info("../pw_thread_embos", "abspath")
  dir_pw_thread_freertos = get_path_info("../pw_thread_freertos", "abspath")
  dir_pw_thread_stl = get_path_info("../pw_thread_stl", "abspath")
  dir_pw_thread_threadx = get_path_info("../pw_thread_threadx", "abspath")
  dir_pw_tls_client = get_path_info("../pw_tls_client", "abspath")
  dir_pw_tls_client_boringssl =
      get_path_info("../pw_tls_client_boringssl", "abspath")
  dir_pw_tls_client_mbedtls =
      get_path_info("../pw_tls_client_mbedtls", "abspath")
  dir_pw_tokenizer = get_path_info("../pw_tokenizer", "abspath")
  dir_pw_tool = get_path_info("../pw_tool", "abspath")
  dir_pw_toolchain = get_path_info("../pw_toolchain", "abspath")
  dir_pw_trace = get_path_info("../pw_trace", "abspath")
  dir_pw_trace_tokenized = get_path_info("../pw_trace_tokenized", "abspath")
  dir_pw_transfer = get_path_info("../pw_transfer", "abspath")
  dir_pw_unit_test = get_path_info("../pw_unit_test", "abspath")
  dir_pw_varint = get_path_info("../pw_varint", "abspath")
  dir_pw_watch = get_path_info("../pw_watch", "abspath")
  dir_pw_web = get_path_info("../pw_web", "abspath")
  dir_pw_work_queue = get_path_info("../pw_work_queue", "abspath")
}

# Declare these as GN args in case this is imported in args.gni.
# Use a separate block so variables in the prior block can be used.
declare_args() {
  # A list with paths to all Pigweed module. DO NOT SET THIS BUILD ARGUMENT!
  pw_modules = [
    dir_docker,
    dir_pw_allocator,
    dir_pw_analog,
    dir_pw_android_toolchain,
    dir_pw_arduino_build,
    dir_pw_assert,
    dir_pw_assert_basic,
    dir_pw_assert_log,
    dir_pw_assert_tokenized,
    dir_pw_assert_zephyr,
    dir_pw_base64,
    dir_pw_bloat,
    dir_pw_blob_store,
    dir_pw_bluetooth,
    dir_pw_bluetooth_hci,
    dir_pw_boot,
    dir_pw_boot_cortex_m,
    dir_pw_build,
    dir_pw_build_info,
    dir_pw_build_mcuxpresso,
    dir_pw_bytes,
    dir_pw_checksum,
    dir_pw_chrono,
    dir_pw_chrono_embos,
    dir_pw_chrono_freertos,
    dir_pw_chrono_stl,
    dir_pw_chrono_threadx,
    dir_pw_chrono_zephyr,
    dir_pw_cli,
    dir_pw_compilation_testing,
    dir_pw_console,
    dir_pw_containers,
    dir_pw_cpu_exception,
    dir_pw_cpu_exception_cortex_m,
    dir_pw_crypto,
    dir_pw_digital_io,
    dir_pw_docgen,
    dir_pw_doctor,
    dir_pw_env_setup,
    dir_pw_file,
    dir_pw_function,
    dir_pw_fuzzer,
    dir_pw_hdlc,
    dir_pw_hex_dump,
    dir_pw_i2c,
    dir_pw_i2c_mcuxpresso,
    dir_pw_ide,
    dir_pw_interrupt,
    dir_pw_interrupt_cortex_m,
    dir_pw_interrupt_zephyr,
    dir_pw_kvs,
    dir_pw_libc,
    dir_pw_log,
    dir_pw_log_android,
    dir_pw_log_basic,
    dir_pw_log_null,
    dir_pw_log_rpc,
    dir_pw_log_string,
    dir_pw_log_tokenized,
    dir_pw_log_zephyr,
    dir_pw_malloc,
    dir_pw_malloc_freelist,
    dir_pw_metric,
    dir_pw_minimal_cpp_stdlib,
    dir_pw_module,
    dir_pw_multisink,
    dir_pw_package,
    dir_pw_persistent_ram,
    dir_pw_polyfill,
    dir_pw_preprocessor,
    dir_pw_presubmit,
    dir_pw_protobuf,
    dir_pw_protobuf_compiler,
    dir_pw_random,
    dir_pw_result,
    dir_pw_ring_buffer,
    dir_pw_router,
    dir_pw_rpc,
    dir_pw_rust,
    dir_pw_snapshot,
    dir_pw_software_update,
    dir_pw_span,
    dir_pw_spi,
    dir_pw_status,
    dir_pw_stm32cube_build,
    dir_pw_stream,
    dir_pw_string,
    dir_pw_symbolizer,
    dir_pw_sync,
    dir_pw_sync_baremetal,
    dir_pw_sync_embos,
    dir_pw_sync_freertos,
    dir_pw_sync_stl,
    dir_pw_sync_threadx,
    dir_pw_sync_zephyr,
    dir_pw_sys_io,
    dir_pw_sys_io_arduino,
    dir_pw_sys_io_baremetal_lm3s6965evb,
    dir_pw_sys_io_baremetal_stm32f429,
    dir_pw_sys_io_emcraft_sf2,
    dir_pw_sys_io_mcuxpresso,
    dir_pw_sys_io_stdio,
    dir_pw_sys_io_stm32cube,
    dir_pw_sys_io_zephyr,
    dir_pw_system,
    dir_pw_target_runner,
    dir_pw_thread,
    dir_pw_thread_embos,
    dir_pw_thread_freertos,
    dir_pw_thread_stl,
    dir_pw_thread_threadx,
    dir_pw_tls_client,
    dir_pw_tls_client_boringssl,
    dir_pw_tls_client_mbedtls,
    dir_pw_tokenizer,
    dir_pw_tool,
    dir_pw_toolchain,
    dir_pw_trace,
    dir_pw_trace_tokenized,
    dir_pw_transfer,
    dir_pw_unit_test,
    dir_pw_varint,
    dir_pw_watch,
    dir_pw_web,
    dir_pw_work_queue,
  ]

  # A list with all Pigweed module test groups. DO NOT SET THIS BUILD ARGUMENT!
  pw_module_tests = [
    "$dir_docker:tests",
    "$dir_pw_allocator:tests",
    "$dir_pw_analog:tests",
    "$dir_pw_android_toolchain:tests",
    "$dir_pw_arduino_build:tests",
    "$dir_pw_assert:tests",
    "$dir_pw_assert_basic:tests",
    "$dir_pw_assert_log:tests",
    "$dir_pw_assert_tokenized:tests",
    "$dir_pw_assert_zephyr:tests",
    "$dir_pw_base64:tests",
    "$dir_pw_bloat:tests",
    "$dir_pw_blob_store:tests",
    "$dir_pw_bluetooth:tests",
    "$dir_pw_bluetooth_hci:tests",
    "$dir_pw_boot:tests",
    "$dir_pw_boot_cortex_m:tests",
    "$dir_pw_build:tests",
    "$dir_pw_build_info:tests",
    "$dir_pw_build_mcuxpresso:tests",
    "$dir_pw_bytes:tests",
    "$dir_pw_checksum:tests",
    "$dir_pw_chrono:tests",
    "$dir_pw_chrono_embos:tests",
    "$dir_pw_chrono_freertos:tests",
    "$dir_pw_chrono_stl:tests",
    "$dir_pw_chrono_threadx:tests",
    "$dir_pw_chrono_zephyr:tests",
    "$dir_pw_cli:tests",
    "$dir_pw_compilation_testing:tests",
    "$dir_pw_console:tests",
    "$dir_pw_containers:tests",
    "$dir_pw_cpu_exception:tests",
    "$dir_pw_cpu_exception_cortex_m:tests",
    "$dir_pw_crypto:tests",
    "$dir_pw_digital_io:tests",
    "$dir_pw_docgen:tests",
    "$dir_pw_doctor:tests",
    "$dir_pw_env_setup:tests",
    "$dir_pw_file:tests",
    "$dir_pw_function:tests",
    "$dir_pw_fuzzer:tests",
    "$dir_pw_hdlc:tests",
    "$dir_pw_hex_dump:tests",
    "$dir_pw_i2c:tests",
    "$dir_pw_i2c_mcuxpresso:tests",
    "$dir_pw_ide:tests",
    "$dir_pw_interrupt:tests",
    "$dir_pw_interrupt_cortex_m:tests",
    "$dir_pw_interrupt_zephyr:tests",
    "$dir_pw_kvs:tests",
    "$dir_pw_libc:tests",
    "$dir_pw_log:tests",
    "$dir_pw_log_android:tests",
    "$dir_pw_log_basic:tests",
    "$dir_pw_log_null:tests",
    "$dir_pw_log_rpc:tests",
    "$dir_pw_log_string:tests",
    "$dir_pw_log_tokenized:tests",
    "$dir_pw_log_zephyr:tests",
    "$dir_pw_malloc:tests",
    "$dir_pw_malloc_freelist:tests",
    "$dir_pw_metric:tests",
    "$dir_pw_minimal_cpp_stdlib:tests",
    "$dir_pw_module:tests",
    "$dir_pw_multisink:tests",
    "$dir_pw_package:tests",
    "$dir_pw_persistent_ram:tests",
    "$dir_pw_polyfill:tests",
    "$dir_pw_preprocessor:tests",
    "$dir_pw_presubmit:tests",
    "$dir_pw_protobuf:tests",
    "$dir_pw_protobuf_compiler:tests",
    "$dir_pw_random:tests",
    "$dir_pw_result:tests",
    "$dir_pw_ring_buffer:tests",
    "$dir_pw_router:tests",
    "$dir_pw_rpc:tests",
    "$dir_pw_rust:tests",
    "$dir_pw_snapshot:tests",
    "$dir_pw_software_update:tests",
    "$dir_pw_span:tests",
    "$dir_pw_spi:tests",
    "$dir_pw_status:tests",
    "$dir_pw_stm32cube_build:tests",
    "$dir_pw_stream:tests",
    "$dir_pw_string:tests",
    "$dir_pw_symbolizer:tests",
    "$dir_pw_sync:tests",
    "$dir_pw_sync_baremetal:tests",
    "$dir_pw_sync_embos:tests",
    "$dir_pw_sync_freertos:tests",
    "$dir_pw_sync_stl:tests",
    "$dir_pw_sync_threadx:tests",
    "$dir_pw_sync_zephyr:tests",
    "$dir_pw_sys_io:tests",
    "$dir_pw_sys_io_arduino:tests",
    "$dir_pw_sys_io_baremetal_lm3s6965evb:tests",
    "$dir_pw_sys_io_baremetal_stm32f429:tests",
    "$dir_pw_sys_io_emcraft_sf2:tests",
    "$dir_pw_sys_io_mcuxpresso:tests",
    "$dir_pw_sys_io_stdio:tests",
    "$dir_pw_sys_io_stm32cube:tests",
    "$dir_pw_sys_io_zephyr:tests",
    "$dir_pw_system:tests",
    "$dir_pw_target_runner:tests",
    "$dir_pw_thread:tests",
    "$dir_pw_thread_embos:tests",
    "$dir_pw_thread_freertos:tests",
    "$dir_pw_thread_stl:tests",
    "$dir_pw_thread_threadx:tests",
    "$dir_pw_tls_client:tests",
    "$dir_pw_tls_client_boringssl:tests",
    "$dir_pw_tls_client_mbedtls:tests",
    "$dir_pw_tokenizer:tests",
    "$dir_pw_tool:tests",
    "$dir_pw_toolchain:tests",
    "$dir_pw_trace:tests",
    "$dir_pw_trace_tokenized:tests",
    "$dir_pw_transfer:tests",
    "$dir_pw_unit_test:tests",
    "$dir_pw_varint:tests",
    "$dir_pw_watch:tests",
    "$dir_pw_web:tests",
    "$dir_pw_work_queue:tests",
  ]

  # A list with all Pigweed modules docs groups. DO NOT SET THIS BUILD ARGUMENT!
  pw_module_docs = [
    "$dir_docker:docs",
    "$dir_pw_allocator:docs",
    "$dir_pw_analog:docs",
    "$dir_pw_android_toolchain:docs",
    "$dir_pw_arduino_build:docs",
    "$dir_pw_assert:docs",
    "$dir_pw_assert_basic:docs",
    "$dir_pw_assert_log:docs",
    "$dir_pw_assert_tokenized:docs",
    "$dir_pw_assert_zephyr:docs",
    "$dir_pw_base64:docs",
    "$dir_pw_bloat:docs",
    "$dir_pw_blob_store:docs",
    "$dir_pw_bluetooth:docs",
    "$dir_pw_bluetooth_hci:docs",
    "$dir_pw_boot:docs",
    "$dir_pw_boot_cortex_m:docs",
    "$dir_pw_build:docs",
    "$dir_pw_build_info:docs",
    "$dir_pw_build_mcuxpresso:docs",
    "$dir_pw_bytes:docs",
    "$dir_pw_checksum:docs",
    "$dir_pw_chrono:docs",
    "$dir_pw_chrono_embos:docs",
    "$dir_pw_chrono_freertos:docs",
    "$dir_pw_chrono_stl:docs",
    "$dir_pw_chrono_threadx:docs",
    "$dir_pw_chrono_zephyr:docs",
    "$dir_pw_cli:docs",
    "$dir_pw_compilation_testing:docs",
    "$dir_pw_console:docs",
    "$dir_pw_containers:docs",
    "$dir_pw_cpu_exception:docs",
    "$dir_pw_cpu_exception_cortex_m:docs",
    "$dir_pw_crypto:docs",
    "$dir_pw_digital_io:docs",
    "$dir_pw_docgen:docs",
    "$dir_pw_doctor:docs",
    "$dir_pw_env_setup:docs",
    "$dir_pw_file:docs",
    "$dir_pw_function:docs",
    "$dir_pw_fuzzer:docs",
    "$dir_pw_hdlc:docs",
    "$dir_pw_hex_dump:docs",
    "$dir_pw_i2c:docs",
    "$dir_pw_i2c_mcuxpresso:docs",
    "$dir_pw_ide:docs",
    "$dir_pw_interrupt:docs",
    "$dir_pw_interrupt_cortex_m:docs",
    "$dir_pw_interrupt_zephyr:docs",
    "$dir_pw_kvs:docs",
    "$dir_pw_libc:docs",
    "$dir_pw_log:docs",
    "$dir_pw_log_android:docs",
    "$dir_pw_log_basic:docs",
    "$dir_pw_log_null:docs",
    "$dir_pw_log_rpc:docs",
    "$dir_pw_log_string:docs",
    "$dir_pw_log_tokenized:docs",
    "$dir_pw_log_zephyr:docs",
    "$dir_pw_malloc:docs",
    "$dir_pw_malloc_freelist:docs",
    "$dir_pw_metric:docs",
    "$dir_pw_minimal_cpp_stdlib:docs",
    "$dir_pw_module:docs",
    "$dir_pw_multisink:docs",
    "$dir_pw_package:docs",
    "$dir_pw_persistent_ram:docs",
    "$dir_pw_polyfill:docs",
    "$dir_pw_preprocessor:docs",
    "$dir_pw_presubmit:docs",
    "$dir_pw_protobuf:docs",
    "$dir_pw_protobuf_compiler:docs",
    "$dir_pw_random:docs",
    "$dir_pw_result:docs",
    "$dir_pw_ring_buffer:docs",
    "$dir_pw_router:docs",
    "$dir_pw_rpc:docs",
    "$dir_pw_rust:docs",
    "$dir_pw_snapshot:docs",
    "$dir_pw_software_update:docs",
    "$dir_pw_span:docs",
    "$dir_pw_spi:docs",
    "$dir_pw_status:docs",
    "$dir_pw_stm32cube_build:docs",
    "$dir_pw_stream:docs",
    "$dir_pw_string:docs",
    "$dir_pw_symbolizer:docs",
    "$dir_pw_sync:docs",
    "$dir_pw_sync_baremetal:docs",
    "$dir_pw_sync_embos:docs",
    "$dir_pw_sync_freertos:docs",
    "$dir_pw_sync_stl:docs",
    "$dir_pw_sync_threadx:docs",
    "$dir_pw_sync_zephyr:docs",
    "$dir_pw_sys_io:docs",
    "$dir_pw_sys_io_arduino:docs",
    "$dir_pw_sys_io_baremetal_lm3s6965evb:docs",
    "$dir_pw_sys_io_baremetal_stm32f429:docs",
    "$dir_pw_sys_io_emcraft_sf2:docs",
    "$dir_pw_sys_io_mcuxpresso:docs",
    "$dir_pw_sys_io_stdio:docs",
    "$dir_pw_sys_io_stm32cube:docs",
    "$dir_pw_sys_io_zephyr:docs",
    "$dir_pw_system:docs",
    "$dir_pw_target_runner:docs",
    "$dir_pw_thread:docs",
    "$dir_pw_thread_embos:docs",
    "$dir_pw_thread_freertos:docs",
    "$dir_pw_thread_stl:docs",
    "$dir_pw_thread_threadx:docs",
    "$dir_pw_tls_client:docs",
    "$dir_pw_tls_client_boringssl:docs",
    "$dir_pw_tls_client_mbedtls:docs",
    "$dir_pw_tokenizer:docs",
    "$dir_pw_tool:docs",
    "$dir_pw_toolchain:docs",
    "$dir_pw_trace:docs",
    "$dir_pw_trace_tokenized:docs",
    "$dir_pw_transfer:docs",
    "$dir_pw_unit_test:docs",
    "$dir_pw_varint:docs",
    "$dir_pw_watch:docs",
    "$dir_pw_web:docs",
    "$dir_pw_work_queue:docs",
  ]
}
