# Copyright (c) Meta Platforms, Inc. and affiliates. # All rights reserved. # # Copyright 2024 Arm Limited and/or its affiliates. # # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. # Inherited by all other targets. When a key already exists, the elements of the # target's value are appended to lists here. [target_base] excludes = [ "^third-party", ] # ---------------------------------- core start ---------------------------------- [targets.executorch] buck_targets = [ "//runtime/executor:program", ] deps = [ "executorch_core", ] filters = [ ".cpp$", ] [targets.executorch_core] buck_targets = [ "//runtime/executor:program_no_prim_ops", ] deps = [ "program_schema", ] filters = [ ".cpp$", ] [targets.portable_kernels] buck_targets = [ # //kernels/portable:operators would be more appropriate, but buck2 doesn't # think it has any "inputs" since its srcs list is empty. "//kernels/portable:generated_lib", ] filters = [ ".cpp$", ] excludes = [ # Exclude the codegen templates, which are picked up because the buck target # is the generated_lib and not the unwrapped set of kernels. "^codegen/templates", ] deps = [ "executorch", "executorch_core", ] [targets.optimized_kernels] buck_targets = [ "//kernels/optimized:generated_lib", ] filters = [ ".cpp$", ] excludes = [ # Exclude the codegen templates, which are picked up because the buck target # is the generated_lib and not the unwrapped set of kernels. "^codegen/templates", ] deps = [ "executorch", "executorch_core", "extension_threadpool", "portable_kernels", ] [targets.quantized_kernels] buck_targets = [ "//kernels/quantized:generated_lib", ] filters = [ ".cpp$", ] excludes = [ # Exclude the codegen templates, which are picked up because the buck target # is the generated_lib and not the unwrapped set of kernels. "^codegen/templates", ] deps = [ "executorch", "executorch_core", "portable_kernels", ] [targets.program_schema] buck_targets = [ "//schema:program", ] filters = [ ".fbs$", ] [targets.optimized_cpublas] buck_targets = [ "//kernels/optimized:libblas", ] filters = [ ".cpp$", ] excludes = [ ] deps = [ "executorch_core", "executorch", ] [targets.optimized_native_cpu_ops_oss] buck_targets = [ "//configurations:optimized_native_cpu_ops_oss", ] filters = [ ".cpp$", ] excludes = [ ] deps = [ "executorch_core", "executorch", "portable_kernels", ] # ---------------------------------- core end ---------------------------------- # ---------------------------------- extension start ---------------------------------- [targets.extension_data_loader] buck_targets = [ "//extension/data_loader:buffer_data_loader", "//extension/data_loader:file_data_loader", "//extension/data_loader:mmap_data_loader", "//extension/data_loader:shared_ptr_data_loader", ] filters = [ ".cpp$", ] deps = [ "executorch_core", "executorch", ] [targets.extension_module] buck_targets = [ "//extension/module:module", ] filters = [ ".cpp$", ] deps = [ "executorch", "executorch_core", "extension_data_loader", ] [targets.extension_runner_util] buck_targets = [ "//extension/runner_util:inputs", ] filters = [ ".cpp$", ] deps = [ "executorch", "executorch_core", ] [targets.extension_llm_runner] buck_targets = [ "//extension/llm/runner:runner_lib", ] filters = [ ".cpp$", ] deps = [ "executorch", "executorch_core", "extension_module", "extension_runner_util", ] [targets.extension_tensor] buck_targets = [ "//extension/tensor:tensor", ] filters = [ ".cpp$", ] deps = [ "executorch", "executorch_core", ] [targets.extension_threadpool] buck_targets = [ "//extension/threadpool:threadpool", ] filters = [ ".cpp$", ] deps = [ "executorch", "executorch_core", ] [targets.extension_training] buck_targets = [ "//extension/training/module:training_module", "//extension/training/optimizer:sgd", ] filters = [ ".cpp$", ] deps = [ "executorch_core", ] [targets.train_xor] buck_targets = [ "//extension/training/examples/XOR:train_xor", ] filters = [ ".cpp$", ] excludes = [ "^codegen", ] deps = [ "executorch", "executorch_core", "portable_kernels", ] # ---------------------------------- extension end ---------------------------------- # ---------------------------------- binary start ---------------------------------- [targets.executor_runner] buck_targets = [ "//examples/portable/executor_runner:executor_runner", ] filters = [ ".cpp$", ] excludes = [ "^codegen", ] deps = [ "executorch", "executorch_core", "portable_kernels", "quantized_kernels", ] [targets.size_test] buck_targets = [ "//test:size_test", ] filters = [ ".cpp$", ] excludes = [ "^codegen", ] deps = [ "executorch_core", "executorch", ] # ---------------------------------- binary end ---------------------------------- # ---------------------------------- MPS start ---------------------------------- [targets.mps_executor_runner] buck_targets = [ "//examples/apple/mps/executor_runner:mps_executor_runner", ] filters = [ "(.mm|.cpp)$", ] excludes = [ "^codegen", ] deps = [ "executorch", "executorch_core", "portable_kernels", ] [targets.mps_backend] buck_targets = [ "//backends/apple/mps:mps", ] filters = [ "(.mm|.cpp)$", ] deps = [ "executorch", "executorch_core", ] [targets.mps_schema] buck_targets = [ "//backends/apple/mps:mps_schema", ] filters = [ ".fbs$", ] # ---------------------------------- MPS end ---------------------------------- # ---------------------------------- XNNPACK start ---------------------------------- [targets.xnn_executor_runner] buck_targets = [ "//examples/xnnpack:xnn_executor_runner", ] filters = [ ".cpp$", ] excludes = [ "^codegen", ] deps = [ "executorch", "executorch_core", "xnnpack_backend", "portable_kernels", ] [targets.xnnpack_backend] buck_targets = [ "//backends/xnnpack:xnnpack_backend", ] filters = [ ".cpp$", ] deps = [ "executorch", "executorch_core", ] [targets.xnnpack_schema] buck_targets = [ "//backends/xnnpack/serialization:xnnpack_flatbuffer_header", ] filters = [ ".fbs$", ] # ---------------------------------- XNNPACK end ---------------------------------- # ---------------------------------- Vulkan start --------------------------------- [targets.vulkan_schema] buck_targets = [ "//backends/vulkan/serialization:vk_delegate_schema", ] filters = [ ".fbs$", ] # ---------------------------------- Vulkan end ----------------------------------- # ---------------------------------- LLama start ---------------------------------- [targets.custom_ops] buck_targets = [ "//extension/llm/custom_ops:custom_ops", ] filters = [ # Second clause is to pick up fht_neon.c/fht_avx.c from FFHT. TODO: # remove filters and patch extract_sources.py's Buck query to fetch # srcs; presumably filters is here to remove .h files. "(.cpp$)|(fht.*\\.c$)", ] excludes = [ "^codegen", ] deps = [ "executorch", "executorch_core", "optimized_kernels", "extension_threadpool", "xnnpack_backend", ] [targets.llama_runner] buck_targets = [ "//examples/models/llama/runner:runner", ] filters = [ ".cpp$", ] excludes = [ "^codegen", ] deps = [ "custom_ops", "executorch", "executorch_core", "extension_data_loader", "extension_module", "portable_kernels", "quantized_kernels", "xnnpack_backend", "optimized_native_cpu_ops_oss", ] # ---------------------------------- LLama end ----------------------------------