From f440b971dbb72901398c38c28141cfcf36c6475f Mon Sep 17 00:00:00 2001 From: Scott Wolchok Date: Fri, 12 Sep 2025 10:37:31 -0700 Subject: [PATCH 1/4] Update [ghstack-poisoned] --- backends/cadence/aot/TARGETS | 1 - exir/_serialize/TARGETS | 3 +-- exir/verification/TARGETS | 3 +-- extension/pytree/TARGETS | 5 ++--- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/backends/cadence/aot/TARGETS b/backends/cadence/aot/TARGETS index 0c39fd3d38e..27f9c00f4ac 100644 --- a/backends/cadence/aot/TARGETS +++ b/backends/cadence/aot/TARGETS @@ -12,7 +12,6 @@ load( "CXX", ) load("@fbsource//xplat/executorch/codegen:codegen.bzl", "executorch_generated_lib") -load("@fbcode_macros//build_defs:cpp_python_extension.bzl", "cpp_python_extension") oncall("odai_jarvis") diff --git a/exir/_serialize/TARGETS b/exir/_serialize/TARGETS index 6671bf00334..83a2d4957ce 100644 --- a/exir/_serialize/TARGETS +++ b/exir/_serialize/TARGETS @@ -1,11 +1,10 @@ -load("@fbcode_macros//build_defs:cpp_python_extension.bzl", "cpp_python_extension") load("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime") oncall("executorch") # TODO(T157145817): Update other flatbuffer serializers to use flatc like # _flatbuffer.py does, and remove this. -cpp_python_extension( +runtime.cxx_python_extension( name = "_bindings", srcs = [ "bindings.cpp", diff --git a/exir/verification/TARGETS b/exir/verification/TARGETS index 8362d87a238..85251677b55 100644 --- a/exir/verification/TARGETS +++ b/exir/verification/TARGETS @@ -1,10 +1,9 @@ -load("@fbcode_macros//build_defs:cpp_python_extension.bzl", "cpp_python_extension") load("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime") load("@fbcode_macros//build_defs:python_unittest.bzl", "python_unittest") oncall("executorch") -cpp_python_extension( +runtime.cxx_python_extension( name = "bindings", srcs = [ "bindings.cpp", diff --git a/extension/pytree/TARGETS b/extension/pytree/TARGETS index 32eea9b3bdb..5f09772ee38 100644 --- a/extension/pytree/TARGETS +++ b/extension/pytree/TARGETS @@ -1,7 +1,6 @@ # Any targets that should be shared between fbcode and xplat must be defined in # targets.bzl. This file can contain fbcode-only targets. -load("@fbcode_macros//build_defs:cpp_python_extension.bzl", "cpp_python_extension") load("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime") load(":targets.bzl", "define_common_targets") @@ -9,7 +8,7 @@ oncall("executorch") define_common_targets() -cpp_python_extension( +runtime.cxx_python_extension( name = "pybindings", srcs = [ "pybindings.cpp", @@ -21,7 +20,7 @@ cpp_python_extension( ], ) -cpp_python_extension( +runtime.cxx_python_extension( name = "pybindings_debug", srcs = [ "pybindings.cpp", From 95d50ce7be4e9c621e80ee43ee14a22fc95421d4 Mon Sep 17 00:00:00 2001 From: Scott Wolchok Date: Fri, 12 Sep 2025 10:37:36 -0700 Subject: [PATCH 2/4] Update [ghstack-poisoned] --- codegen/tools/targets.bzl | 6 +++--- shim_et/xplat/executorch/build/runtime_wrapper.bzl | 12 ++++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/codegen/tools/targets.bzl b/codegen/tools/targets.bzl index 39de8fcb482..acea3370e7d 100644 --- a/codegen/tools/targets.bzl +++ b/codegen/tools/targets.bzl @@ -17,10 +17,10 @@ def define_common_targets(is_fbcode = False): ], deps = [ "//executorch/codegen:gen_lib", - ] + select({ + ] + ([] if runtime.is_oss else select({ "DEFAULT": [], - "ovr_config//os:linux": [] if runtime.is_oss else ["//executorch/codegen/tools:selective_build"], # TODO(larryliu0820) :selective_build doesn't build in OSS yet - }), + "ovr_config//os:linux": ["//executorch/codegen/tools:selective_build"], # TODO(larryliu0820) :selective_build doesn't build in OSS yet + })), ) runtime.python_binary( diff --git a/shim_et/xplat/executorch/build/runtime_wrapper.bzl b/shim_et/xplat/executorch/build/runtime_wrapper.bzl index bbf4a0fe789..46101ab36db 100644 --- a/shim_et/xplat/executorch/build/runtime_wrapper.bzl +++ b/shim_et/xplat/executorch/build/runtime_wrapper.bzl @@ -290,6 +290,7 @@ def _cxx_test(*args, **kwargs): def _cxx_python_extension(*args, **kwargs): _patch_kwargs_common(kwargs) + _remove_caffe2_deps(kwargs) kwargs["srcs"] = _patch_executorch_references(kwargs["srcs"]) if "types" in kwargs: kwargs["types"] = _patch_executorch_references(kwargs["types"]) @@ -324,8 +325,19 @@ def _genrule(*args, **kwargs): kwargs["name"] += "_static" env.genrule(*args, **kwargs) +def _remove_caffe2_deps(kwargs): + if not env.is_oss: + return + # We don't have Buckified PyTorch in OSS. At least let buck query work. + MISSING_BUCK_DIRS = ("//caffe2", "//pytorch", "fbsource//third-party") + for dep_type in ('deps', 'exported_deps'): + if dep_type not in kwargs: + continue + kwargs[dep_type] = [x for x in kwargs[dep_type] if not any([x.startswith(y) for y in MISSING_BUCK_DIRS])] + def _python_library(*args, **kwargs): _patch_kwargs_common(kwargs) + _remove_caffe2_deps(kwargs) env.python_library(*args, **kwargs) def _python_binary(*args, **kwargs): From 04b22bb342851d3dd7f8fbc11117b266155e0978 Mon Sep 17 00:00:00 2001 From: Scott Wolchok Date: Fri, 12 Sep 2025 10:37:40 -0700 Subject: [PATCH 3/4] Update [ghstack-poisoned] --- backends/arm/TARGETS | 21 +++------------------ backends/arm/tosa/TARGETS | 17 +++++++++++++++++ 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/backends/arm/TARGETS b/backends/arm/TARGETS index 35b16f819e5..0d947d63903 100644 --- a/backends/arm/TARGETS +++ b/backends/arm/TARGETS @@ -14,7 +14,8 @@ runtime.python_library( "ethosu/partitioner.py" ], deps = [ - ":arm_partitioner", + ":arm_vela", + "//executorch/backends/arm/tosa:arm_partitioner", ] ) runtime.python_library( @@ -25,7 +26,7 @@ runtime.python_library( "vgf/partitioner.py" ], deps = [ - ":arm_partitioner", + "//executorch/backends/arm/tosa:arm_partitioner", ] ) runtime.python_library( @@ -50,21 +51,6 @@ runtime.python_library( "//executorch/exir:lib", ], ) -runtime.python_library( - name = "arm_partitioner", - srcs = [ - "tosa/backend.py", - "tosa/partitioner.py", - ], - deps = [ - ":arm_backend", - ":constants", - "//executorch/backends/arm/debug:schema", - "//executorch/backends/arm/operator_support:operator_support", - "//executorch/backends/arm/_passes:passes", - "//executorch/exir:lib", - ], -) runtime.python_library( name = "arm_backend", srcs = [ @@ -77,7 +63,6 @@ runtime.python_library( "fbsource//third-party/tosa_tools/v1.00/serialization_lib/python/serializer:serializer", "fbsource//third-party/tosa_tools/v0.80/serialization_lib/python/tosa:tosa", "fbsource//third-party/tosa_tools/v1.00/serialization_lib/python/tosa:tosa", - ":arm_vela", ":process_node", "//executorch/backends/arm/operators:lib", "//executorch/backends/arm/operators:node_visitor", diff --git a/backends/arm/tosa/TARGETS b/backends/arm/tosa/TARGETS index b1df4f37c53..18868054259 100644 --- a/backends/arm/tosa/TARGETS +++ b/backends/arm/tosa/TARGETS @@ -59,3 +59,20 @@ runtime.python_library( ":specification", ], ) + +runtime.python_library( + name = "arm_partitioner", + srcs = [ + "backend.py", + "partitioner.py", + ], + deps = [ + "//executorch/backends/arm:arm_backend", + "//executorch/backends/arm:constants", + "//executorch/backends/arm:process_node", + "//executorch/backends/arm/debug:schema", + "//executorch/backends/arm/operator_support:operator_support", + "//executorch/backends/arm/_passes:passes", + "//executorch/exir:lib", + ], +) From a92ae384fb4f11af05837a5ae187374c7fc5297e Mon Sep 17 00:00:00 2001 From: Scott Wolchok Date: Fri, 12 Sep 2025 10:37:45 -0700 Subject: [PATCH 4/4] Update [ghstack-poisoned] --- .ci/scripts/unittest-buck2.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.ci/scripts/unittest-buck2.sh b/.ci/scripts/unittest-buck2.sh index f748be62ac1..340f7438f02 100755 --- a/.ci/scripts/unittest-buck2.sh +++ b/.ci/scripts/unittest-buck2.sh @@ -9,7 +9,11 @@ set -eux # TODO: expand this to //... # TODO: can't query cadence & vulkan backends # TODO: can't query //kernels/prim_ops because of non-buckified stuff in OSS. -buck2 query "//backends/apple/... + //backends/example/... + \ +# TODO: Make //backends/arm tests use runtime wrapper so we can just query //backends/arm/... +buck2 query "//backends/apple/... + //backends/arm: + //backends/arm/debug/... + \ +//backends/arm/operator_support/... + //backends/arm/operators/... + \ +//backends/arm/_passes/... + //backends/arm/runtime/... + //backends/arm/tosa/... \ ++ //backends/example/... + \ //backends/mediatek/... + //backends/transforms/... + \ //backends/xnnpack/... + //configurations/... + //extension/flat_tensor: + \ //extension/llm/runner: + //kernels/aten/... + //kernels/optimized/... + \