Skip to content

Commit 1a10074

Browse files
[Executorch][Export][5/N] Remove portable lib dependency in et/export
Pull Request resolved: #16130 Runtime import is forcing export to use portable lib, this diff decouples it and let's the user link the library directly with aten or portable lib ghstack-source-id: 328250928 @exported-using-ghexport Differential Revision: [D88571674](https://our.internmc.facebook.com/intern/diff/D88571674/)
1 parent 97ee063 commit 1a10074

File tree

7 files changed

+14
-3
lines changed

7 files changed

+14
-3
lines changed

backends/apple/coreml/TARGETS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ runtime.python_library(
8282
"//executorch/exir/backend:partitioner",
8383
"//executorch/exir/backend:utils",
8484
"//executorch/export:lib",
85+
"//executorch/runtime:runtime", # @manual
8586
],
8687
)
8788

backends/qualcomm/recipes/TARGETS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ runtime.python_library(
3030
deps = [
3131
"//caffe2:torch",
3232
"//executorch/export:lib",
33+
"//executorch/runtime:runtime", # @manual
3334
"//executorch/backends/qualcomm/partition:partition",
3435
"//executorch/backends/qualcomm/serialization:serialization",
3536
"//executorch/backends/qualcomm/utils:utils",

backends/xnnpack/recipes/TARGETS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ runtime.python_library(
3030
deps = [
3131
"//caffe2:torch",
3232
"//executorch/export:lib",
33+
"//executorch/runtime:runtime", # @manual
3334
"//executorch/backends/xnnpack/quantizer:xnnpack_quantizer",
3435
"//executorch/backends/xnnpack/partition:xnnpack_partitioner",
3536
":xnnpack_recipe_types",

backends/xnnpack/test/TARGETS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ runtime.python_test(
107107
deps = [
108108
"//executorch/backends/xnnpack/recipes:xnnpack_recipes",
109109
"//executorch/export:lib",
110+
"//executorch/runtime:runtime", # @manual
110111
"//pytorch/vision:torchvision", # @manual
111112
"//executorch/backends/xnnpack/test/tester:tester",
112113
"//executorch/examples/models:models", # @manual

devtools/etrecord/tests/TARGETS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,6 @@ runtime.python_library(
2323
"//executorch/exir/tests:models",
2424
"//executorch/backends/xnnpack/partition:xnnpack_partitioner",
2525
"//executorch/export:lib",
26+
"//executorch/runtime:runtime", # @manual
2627
],
2728
)

export/TARGETS

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ runtime.python_library(
3232
":recipe",
3333
":stages",
3434
":types",
35-
"//executorch/runtime:runtime",
3635
":recipe_registry"
3736
]
3837
)

export/export.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -631,8 +631,15 @@ def run_method(
631631
Raises:
632632
RuntimeError: If the method cannot be loaded
633633
"""
634-
# Lazy import to avoid forcing portable_lib dependency at module load time
635-
from executorch.runtime import Runtime, Verification
634+
# Lazy import to avoid forcing portable_lib dependency at module load time.
635+
try:
636+
from executorch.runtime import Runtime, Verification
637+
except ModuleNotFoundError as e:
638+
raise ModuleNotFoundError(
639+
"executorch.runtime is not available. "
640+
"In OSS: Please ensure executorch is properly installed via pip. "
641+
"In fbcode: Please add //executorch/runtime:runtime to your dependencies."
642+
) from e
636643

637644
et_runtime = Runtime.get()
638645
program = et_runtime.load_program(

0 commit comments

Comments
 (0)