Skip to content

Commit 9f3ba94

Browse files
larryliu0820facebook-github-bot
authored andcommitted
Migrate gen_oplist.py to use executorch/codegen instead of pytorch torchgen (#11104)
Summary: As titled, after #10939 we are able to use `executorch.codegen` APIs instead of `torchgen.executorch` APIs. This PR moves `gen_oplist.py` to use the new `executorch.codgen` API. Differential Revision: D75307480 Pulled By: larryliu0820
1 parent 49805bd commit 9f3ba94

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

codegen/parse.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,12 @@
44
from typing import Any
55

66
import yaml
7-
8-
from executorch.codegen.model import ETKernelIndex, ETKernelKey
7+
try:
8+
from executorch.codegen.model import ETKernelIndex, ETKernelKey
9+
except ImportError:
10+
# If we build from source, executorch.codegen is not available.
11+
# We can use relative import instead.
12+
from .model import ETKernelIndex, ETKernelKey
913
from torchgen.gen import LineLoader, parse_native_yaml
1014
from torchgen.model import (
1115
BackendMetadata,

codegen/tools/gen_oplist.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,12 @@
1212
from typing import Any, Dict, List, Optional, Set
1313

1414
import yaml
15-
from torchgen.executorch.parse import strip_et_fields
15+
try:
16+
from executorch.codegen.parse import strip_et_fields
17+
except ImportError:
18+
# If we build from source, executorch.codegen is not available.
19+
# We can use relative import instead.
20+
from ..parse import strip_et_fields
1621

1722
from torchgen.gen import LineLoader, parse_native_yaml_struct
1823
from torchgen.selective_build.operator import SelectiveBuildOperator

codegen/tools/targets.bzl

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ def define_common_targets(is_fbcode = False):
1515
visibility = [
1616
"//executorch/...",
1717
],
18-
external_deps = ["torchgen"],
19-
deps = select({
18+
deps = [
19+
"//executorch/codegen:gen_lib",
20+
] + select({
2021
"DEFAULT": [],
2122
"ovr_config//os:linux": [] if runtime.is_oss else ["//executorch/codegen/tools/fb:selective_build"], # TODO(larryliu0820) :selective_build doesn't build in OSS yet
2223
}),

0 commit comments

Comments
 (0)