xref: /aosp_15_r20/external/executorch/kernels/aten/targets.bzl (revision 523fa7a60841cd1ecfb9cc4201f1ca8b03ed023a)
1*523fa7a6SAndroid Build Coastguard Workerload("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime")
2*523fa7a6SAndroid Build Coastguard Workerload("@fbsource//xplat/executorch/codegen:codegen.bzl", "et_operator_library", "executorch_generated_lib")
3*523fa7a6SAndroid Build Coastguard Worker
4*523fa7a6SAndroid Build Coastguard Workerdef define_common_targets():
5*523fa7a6SAndroid Build Coastguard Worker    """Defines targets that should be shared between fbcode and xplat.
6*523fa7a6SAndroid Build Coastguard Worker
7*523fa7a6SAndroid Build Coastguard Worker    The directory containing this targets.bzl file should also contain both
8*523fa7a6SAndroid Build Coastguard Worker    TARGETS and BUCK files that call this function.
9*523fa7a6SAndroid Build Coastguard Worker    """
10*523fa7a6SAndroid Build Coastguard Worker
11*523fa7a6SAndroid Build Coastguard Worker    runtime.export_file(
12*523fa7a6SAndroid Build Coastguard Worker        name = "functions.yaml",
13*523fa7a6SAndroid Build Coastguard Worker        visibility = [
14*523fa7a6SAndroid Build Coastguard Worker            "//executorch/...",
15*523fa7a6SAndroid Build Coastguard Worker            "@EXECUTORCH_CLIENTS",
16*523fa7a6SAndroid Build Coastguard Worker        ],
17*523fa7a6SAndroid Build Coastguard Worker    )
18*523fa7a6SAndroid Build Coastguard Worker
19*523fa7a6SAndroid Build Coastguard Worker    runtime.export_file(
20*523fa7a6SAndroid Build Coastguard Worker        name = "edge_dialect_aten_op.yaml",
21*523fa7a6SAndroid Build Coastguard Worker        visibility = [
22*523fa7a6SAndroid Build Coastguard Worker            "//executorch/...",
23*523fa7a6SAndroid Build Coastguard Worker            "@EXECUTORCH_CLIENTS",
24*523fa7a6SAndroid Build Coastguard Worker        ],
25*523fa7a6SAndroid Build Coastguard Worker    )
26*523fa7a6SAndroid Build Coastguard Worker
27*523fa7a6SAndroid Build Coastguard Worker    et_operator_library(
28*523fa7a6SAndroid Build Coastguard Worker        name = "executorch_aten_ops",
29*523fa7a6SAndroid Build Coastguard Worker        ops_schema_yaml_target = ":functions.yaml",
30*523fa7a6SAndroid Build Coastguard Worker        define_static_targets = True,
31*523fa7a6SAndroid Build Coastguard Worker    )
32*523fa7a6SAndroid Build Coastguard Worker
33*523fa7a6SAndroid Build Coastguard Worker    runtime.cxx_library(
34*523fa7a6SAndroid Build Coastguard Worker        name = "operators_edge_dialect_aten",
35*523fa7a6SAndroid Build Coastguard Worker        srcs = [],
36*523fa7a6SAndroid Build Coastguard Worker        visibility = [
37*523fa7a6SAndroid Build Coastguard Worker            "//executorch/...",
38*523fa7a6SAndroid Build Coastguard Worker            "@EXECUTORCH_CLIENTS",
39*523fa7a6SAndroid Build Coastguard Worker        ],
40*523fa7a6SAndroid Build Coastguard Worker        exported_deps = [
41*523fa7a6SAndroid Build Coastguard Worker            "//executorch/kernels/aten/cpu:cpu",
42*523fa7a6SAndroid Build Coastguard Worker        ],
43*523fa7a6SAndroid Build Coastguard Worker    )
44*523fa7a6SAndroid Build Coastguard Worker
45*523fa7a6SAndroid Build Coastguard Worker    et_operator_library(
46*523fa7a6SAndroid Build Coastguard Worker        name = "edge_dialect_aten_ops",
47*523fa7a6SAndroid Build Coastguard Worker        ops_schema_yaml_target = ":edge_dialect_aten_op.yaml",
48*523fa7a6SAndroid Build Coastguard Worker        define_static_targets = True,
49*523fa7a6SAndroid Build Coastguard Worker    )
50*523fa7a6SAndroid Build Coastguard Worker
51*523fa7a6SAndroid Build Coastguard Worker    executorch_generated_lib(
52*523fa7a6SAndroid Build Coastguard Worker        name = "generated_lib",
53*523fa7a6SAndroid Build Coastguard Worker        aten_mode = True,
54*523fa7a6SAndroid Build Coastguard Worker        deps = [
55*523fa7a6SAndroid Build Coastguard Worker            ":executorch_aten_ops",
56*523fa7a6SAndroid Build Coastguard Worker            ":edge_dialect_aten_ops",
57*523fa7a6SAndroid Build Coastguard Worker        ],
58*523fa7a6SAndroid Build Coastguard Worker        kernel_deps = [
59*523fa7a6SAndroid Build Coastguard Worker            ":operators_edge_dialect_aten",
60*523fa7a6SAndroid Build Coastguard Worker        ],
61*523fa7a6SAndroid Build Coastguard Worker        custom_ops_yaml_target = "//executorch/kernels/aten:edge_dialect_aten_op.yaml",
62*523fa7a6SAndroid Build Coastguard Worker        define_static_targets = True,
63*523fa7a6SAndroid Build Coastguard Worker        custom_ops_requires_aot_registration = False,
64*523fa7a6SAndroid Build Coastguard Worker        visibility = [
65*523fa7a6SAndroid Build Coastguard Worker            "//executorch/...",
66*523fa7a6SAndroid Build Coastguard Worker            "@EXECUTORCH_CLIENTS",
67*523fa7a6SAndroid Build Coastguard Worker        ],
68*523fa7a6SAndroid Build Coastguard Worker    )
69