load("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime")
load(":targets.bzl", "define_common_targets")

oncall("executorch")

define_common_targets()

runtime.python_library(
    name = "xnnpack_preprocess",
    srcs = [
        "xnnpack_preprocess.py",
    ],
    visibility = [
        "//executorch/...",
        "@EXECUTORCH_CLIENTS",
    ],
    deps = [
        "//executorch/backends/transforms:lib",
        "//executorch/backends/transforms:remove_getitem_op",
        "//executorch/backends/xnnpack/_passes:xnnpack_passes",
        "//executorch/backends/xnnpack/operators:operators",
        "//executorch/backends/xnnpack/serialization:xnnpack_serializer",
        "//executorch/exir:graph_module",
        "//executorch/exir/backend:backend_details",
    ],
)

runtime.python_library(
    name = "xnnpack_delegate",
    srcs = [
        "__init__.py",
    ],
    visibility = [
        "//executorch/...",
        "@EXECUTORCH_CLIENTS",
    ],
    deps = [
        ":xnnpack_preprocess",
        "//executorch/backends/xnnpack/partition:xnnpack_partitioner",
        "//executorch/backends/xnnpack/utils:xnnpack_utils",
    ],
)
