-
Notifications
You must be signed in to change notification settings - Fork 278
/
Copy pathBUILD
167 lines (158 loc) · 5.13 KB
/
BUILD
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
load("//bazel_utils/python:defs.bzl", "requirement")
load("//bazel_utils:python.bzl", "py_exe", "pytest_test")
load("//src/starkware/cairo:vars.bzl", "CAIRO_LANG_VENV_ADDITIONAL_LIBS", "CAIRO_VM_CRYPTO_ADDITIONAL_LIBS")
package(default_visibility = ["//visibility:public"])
py_library(
name = "cairo_relocatable_lib",
srcs = [
"relocatable.py",
"relocatable_fields.py",
],
visibility = ["//visibility:public"],
deps = [
"//src/starkware/python:starkware_python_utils_lib",
requirement("marshmallow"),
],
)
py_library(
name = "cairo_vm_crypto_lib",
srcs = [
"crypto.py",
],
visibility = ["//visibility:public"],
deps = [
"//src/starkware/cairo/common:poseidon_utils_lib",
"//src/starkware/crypto:starkware_crypto_lib",
] + CAIRO_VM_CRYPTO_ADDITIONAL_LIBS,
)
py_library(
name = "cairo_vm_lib",
srcs = [
"air_public_input.py",
"builtin_runner.py",
"cairo_pie.py",
"memory_dict.py",
"memory_dict_backend.py",
"memory_segments.py",
"output_builtin_runner.py",
"trace_entry.py",
"utils.py",
"validated_memory_dict.py",
"virtual_machine_base.py",
"vm.py",
"vm_consts.py",
"vm_core.py",
"vm_exceptions.py",
],
visibility = ["//visibility:public"],
deps = [
":cairo_relocatable_lib",
"//src/starkware/cairo/lang:cairo_constants_lib",
"//src/starkware/cairo/lang/builtins:cairo_all_builtins_lib",
"//src/starkware/cairo/lang/builtins:instance_def_lib",
"//src/starkware/cairo/lang/compiler:cairo_compile_lib",
"//src/starkware/python:starkware_python_utils_lib",
"//src/starkware/starknet/security:starknet_security_lib",
"//src/starkware/starkware_utils:starkware_dataclasses_utils_lib",
requirement("marshmallow"),
requirement("marshmallow_dataclass"),
requirement("typing_extensions"),
],
)
py_library(
name = "cairo_run_lib",
srcs = [
"cairo_run.py",
"cairo_runner.py",
"security.py",
],
visibility = ["//visibility:public"],
deps = [
":cairo_relocatable_lib",
":cairo_vm_crypto_lib",
":cairo_vm_lib",
"//src/starkware/cairo/lang:cairo_instances_lib",
"//src/starkware/cairo/lang:cairo_version_lib",
"//src/starkware/cairo/lang:dynamic_layout_params_lib",
"//src/starkware/cairo/lang/builtins:cairo_run_builtins_lib",
"//src/starkware/cairo/lang/compiler:cairo_compile_lib",
# A tracer module is loaded dynamically in runtime and available with the following
# target.
"//src/starkware/cairo/lang/tracer:cairo_tracer_lib",
"//src/starkware/crypto:starkware_crypto_lib",
"//src/starkware/python:starkware_python_utils_lib",
"//src/starkware/starkware_utils:starkware_utils_lib",
],
)
py_library(
name = "cairo_vm_utils_lib",
srcs = [
"reconstruct_traceback.py",
],
visibility = ["//visibility:public"],
deps = [
"//src/starkware/cairo/lang:cairo_version_lib",
"//src/starkware/cairo/lang/compiler:cairo_compile_lib",
],
)
py_exe(
name = "cairo_run_exe",
module = "starkware.cairo.lang.vm.cairo_run",
deps = [
"cairo_run_lib",
"//src/starkware/cairo/bootloaders:cairo_bootloader_generate_fact_lib",
"//src/starkware/cairo/bootloaders:cairo_hash_program_lib",
"//src/starkware/cairo/common:cairo_common_lib",
"//src/starkware/cairo/lang/compiler:cairo_compile_lib",
"//src/starkware/cairo/lang/scripts:cairo_script_lib",
] + CAIRO_LANG_VENV_ADDITIONAL_LIBS,
)
py_library(
name = "cairo_vm_test_utils_lib",
srcs = [
"test_utils.py",
],
visibility = ["//visibility:public"],
deps = [
"cairo_run_lib",
"cairo_vm_lib",
"//src/starkware/cairo/lang/compiler:cairo_compile_lib",
],
)
pytest_test(
name = "cairo_vm_test",
srcs = [
"cairo_pie_test.py",
"cairo_runner_test.py",
"memory_dict_test.py",
"memory_segments_test.py",
"output_builtin_runner_test.py",
"reconstruct_traceback_test.py",
"relocatable_fields_test.py",
"relocatable_test.py",
"security_test.py",
"trace_entry_test.py",
"validated_memory_dict_test.py",
"vm_consts_test.py",
"vm_test.py",
],
data = [
"test.cairo",
],
visibility = ["//visibility:public"],
deps = [
":cairo_relocatable_lib",
":cairo_run_lib",
":cairo_vm_crypto_lib",
":cairo_vm_lib",
":cairo_vm_test_utils_lib",
":cairo_vm_utils_lib",
"//src/starkware/cairo/common:cairo_common_lib",
"//src/starkware/cairo/lang:cairo_constants_lib",
"//src/starkware/cairo/lang/compiler:cairo_compile_lib",
"//src/starkware/python:starkware_python_test_utils_lib",
"//src/starkware/python:starkware_python_utils_lib",
"//src/starkware/starkware_utils:starkware_dataclasses_utils_lib",
requirement("marshmallow_dataclass"),
],
)