xref: /aosp_15_r20/external/executorch/backends/apple/mps/TARGETS (revision 523fa7a60841cd1ecfb9cc4201f1ca8b03ed023a)
1*523fa7a6SAndroid Build Coastguard Worker#
2*523fa7a6SAndroid Build Coastguard Worker#  Copyright (c) 2023 Apple Inc. All rights reserved.
3*523fa7a6SAndroid Build Coastguard Worker#  Provided subject to the LICENSE file in the top level directory.
4*523fa7a6SAndroid Build Coastguard Worker#
5*523fa7a6SAndroid Build Coastguard Worker
6*523fa7a6SAndroid Build Coastguard Worker# Any targets that should be shared between fbcode and xplat must be defined in
7*523fa7a6SAndroid Build Coastguard Worker# targets.bzl. This file can contain fbcode-only targets.
8*523fa7a6SAndroid Build Coastguard Worker
9*523fa7a6SAndroid Build Coastguard Workerload("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime")
10*523fa7a6SAndroid Build Coastguard Workerload(":targets.bzl", "define_common_targets")
11*523fa7a6SAndroid Build Coastguard Worker
12*523fa7a6SAndroid Build Coastguard Workeroncall("executorch")
13*523fa7a6SAndroid Build Coastguard Worker
14*523fa7a6SAndroid Build Coastguard Workerdefine_common_targets()
15*523fa7a6SAndroid Build Coastguard Worker
16*523fa7a6SAndroid Build Coastguard Workerruntime.python_library(
17*523fa7a6SAndroid Build Coastguard Worker    name = "backend",
18*523fa7a6SAndroid Build Coastguard Worker    srcs = [
19*523fa7a6SAndroid Build Coastguard Worker        "__init__.py",
20*523fa7a6SAndroid Build Coastguard Worker        "mps_preprocess.py",
21*523fa7a6SAndroid Build Coastguard Worker    ],
22*523fa7a6SAndroid Build Coastguard Worker    visibility = [
23*523fa7a6SAndroid Build Coastguard Worker        "@EXECUTORCH_CLIENTS",
24*523fa7a6SAndroid Build Coastguard Worker    ],
25*523fa7a6SAndroid Build Coastguard Worker    deps = [
26*523fa7a6SAndroid Build Coastguard Worker        ":operators",
27*523fa7a6SAndroid Build Coastguard Worker        ":serialization",
28*523fa7a6SAndroid Build Coastguard Worker        ":utils",
29*523fa7a6SAndroid Build Coastguard Worker        "//caffe2:torch",
30*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir/backend:backend_details",
31*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir/backend:compile_spec_schema",
32*523fa7a6SAndroid Build Coastguard Worker    ],
33*523fa7a6SAndroid Build Coastguard Worker)
34*523fa7a6SAndroid Build Coastguard Worker
35*523fa7a6SAndroid Build Coastguard Workerruntime.python_library(
36*523fa7a6SAndroid Build Coastguard Worker    name = "operators",
37*523fa7a6SAndroid Build Coastguard Worker    srcs = glob([
38*523fa7a6SAndroid Build Coastguard Worker        "operators/*.py",
39*523fa7a6SAndroid Build Coastguard Worker    ]),
40*523fa7a6SAndroid Build Coastguard Worker    deps = [
41*523fa7a6SAndroid Build Coastguard Worker        ":serialization",
42*523fa7a6SAndroid Build Coastguard Worker        ":utils",
43*523fa7a6SAndroid Build Coastguard Worker        "//executorch/backends/transforms:lib",
44*523fa7a6SAndroid Build Coastguard Worker    ],
45*523fa7a6SAndroid Build Coastguard Worker)
46*523fa7a6SAndroid Build Coastguard Worker
47*523fa7a6SAndroid Build Coastguard Workerruntime.python_library(
48*523fa7a6SAndroid Build Coastguard Worker    name = "partitioner",
49*523fa7a6SAndroid Build Coastguard Worker    srcs = glob([
50*523fa7a6SAndroid Build Coastguard Worker        "partition/*.py",
51*523fa7a6SAndroid Build Coastguard Worker    ]),
52*523fa7a6SAndroid Build Coastguard Worker    visibility = [
53*523fa7a6SAndroid Build Coastguard Worker        "@EXECUTORCH_CLIENTS",
54*523fa7a6SAndroid Build Coastguard Worker    ],
55*523fa7a6SAndroid Build Coastguard Worker    deps = [
56*523fa7a6SAndroid Build Coastguard Worker        ":backend",
57*523fa7a6SAndroid Build Coastguard Worker        "//caffe2:torch",
58*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir/backend:compile_spec_schema",
59*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir/backend:partitioner",
60*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir/backend/canonical_partitioners:canonical_partitioner_lib",
61*523fa7a6SAndroid Build Coastguard Worker    ],
62*523fa7a6SAndroid Build Coastguard Worker)
63*523fa7a6SAndroid Build Coastguard Worker
64*523fa7a6SAndroid Build Coastguard Workerruntime.python_library(
65*523fa7a6SAndroid Build Coastguard Worker    name = "serialization",
66*523fa7a6SAndroid Build Coastguard Worker    srcs = glob([
67*523fa7a6SAndroid Build Coastguard Worker        "serialization/*.py",
68*523fa7a6SAndroid Build Coastguard Worker    ]),
69*523fa7a6SAndroid Build Coastguard Worker    resources = [
70*523fa7a6SAndroid Build Coastguard Worker        "serialization/schema.fbs",
71*523fa7a6SAndroid Build Coastguard Worker    ],
72*523fa7a6SAndroid Build Coastguard Worker)
73*523fa7a6SAndroid Build Coastguard Worker
74*523fa7a6SAndroid Build Coastguard Workerruntime.python_library(
75*523fa7a6SAndroid Build Coastguard Worker    name = "utils",
76*523fa7a6SAndroid Build Coastguard Worker    srcs = glob([
77*523fa7a6SAndroid Build Coastguard Worker        "utils/*.py",
78*523fa7a6SAndroid Build Coastguard Worker    ]),
79*523fa7a6SAndroid Build Coastguard Worker    deps = [
80*523fa7a6SAndroid Build Coastguard Worker        ":serialization",
81*523fa7a6SAndroid Build Coastguard Worker        "//caffe2:torch",
82*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir:lib",
83*523fa7a6SAndroid Build Coastguard Worker    ],
84*523fa7a6SAndroid Build Coastguard Worker)
85*523fa7a6SAndroid Build Coastguard Worker
86*523fa7a6SAndroid Build Coastguard Workerruntime.python_test(
87*523fa7a6SAndroid Build Coastguard Worker    name = "test",
88*523fa7a6SAndroid Build Coastguard Worker    srcs = glob([
89*523fa7a6SAndroid Build Coastguard Worker        "test/*.py",
90*523fa7a6SAndroid Build Coastguard Worker    ]),
91*523fa7a6SAndroid Build Coastguard Worker    deps = [
92*523fa7a6SAndroid Build Coastguard Worker        ":backend",
93*523fa7a6SAndroid Build Coastguard Worker        ":partitioner",
94*523fa7a6SAndroid Build Coastguard Worker        "//caffe2:torch",
95*523fa7a6SAndroid Build Coastguard Worker        "//executorch/examples/models:models",
96*523fa7a6SAndroid Build Coastguard Worker        "//executorch/exir/tests:models",
97*523fa7a6SAndroid Build Coastguard Worker        "//executorch/extension/export_util:export_util",
98*523fa7a6SAndroid Build Coastguard Worker        "//executorch/devtools:lib",
99*523fa7a6SAndroid Build Coastguard Worker        "//executorch/devtools/bundled_program/serialize:lib",
100*523fa7a6SAndroid Build Coastguard Worker        "fbsource//third-party/pypi/pytest:pytest",
101*523fa7a6SAndroid Build Coastguard Worker    ],
102*523fa7a6SAndroid Build Coastguard Worker)
103