Skip to content

Commit d85a815

Browse files
committed
Fix the bazel build.
Signed-off-by: fruffy <fruffy@nyu.edu>
1 parent 16f3bd0 commit d85a815

1 file changed

Lines changed: 38 additions & 8 deletions

File tree

BUILD.bazel

Lines changed: 38 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ package(
1010
default_visibility = ["//visibility:public"],
1111
)
1212

13+
config_setting(
14+
name = "p4_14_enabled",
15+
define_values = {"p4_14": "true"},
16+
)
17+
1318
license(
1419
name = "license",
1520
package_name = "com_github_p4lang_p4c",
@@ -167,13 +172,15 @@ cc_binary(
167172
filegroup(
168173
name = "ir_extra_defs",
169174
srcs = [
170-
"frontends/p4-14/ir-v1.def",
171175
"backends/bmv2/bmv2.def",
172176
"backends/dpdk/dpdk.def",
173177
"//backends/p4tools:ir_extension",
174178
# p4c extensions can contribute to this file group using extensions.bzl.
175179
"@p4c_ir_extensions//:ir_extension",
176-
],
180+
] + select({
181+
":p4_14_enabled": ["frontends/p4-14/ir-v1.def"],
182+
"//conditions:default": [],
183+
}),
177184
)
178185

179186
genrule(
@@ -203,21 +210,40 @@ genrule(
203210
# dependencies.
204211
cc_library(
205212
name = "ir_frontend_midend_control_plane",
213+
defines = select({
214+
":p4_14_enabled": ["SUPPORT_P4_14=1"],
215+
"//conditions:default": [],
216+
}),
206217
srcs = glob([
207218
"ir/**/*.cpp",
208219
"frontends/**/*.cpp",
209220
"midend/**/*.cpp",
210221
"control-plane/**/*.cpp",
222+
], exclude = [
223+
"frontends/p4-14/**/*.cpp",
224+
"frontends/parsers/parserDriver_v1.cpp",
225+
"frontends/p4/typeChecking/typeCheckExpr_v1.cpp",
211226
]) + [
212227
"backends/dpdk/dbprint-dpdk.cpp",
213228
"backends/dpdk/printUtils.cpp",
214229
"backends/dpdk/spec.cpp",
215230
"frontends/parsers/p4/p4lexer.cc",
216231
"frontends/parsers/p4/p4parser.cc",
217-
"frontends/parsers/v1/v1lexer.cc",
218-
"frontends/parsers/v1/v1parser.cc",
219232
"ir/ir-generated.cpp",
220-
],
233+
] + select({
234+
":p4_14_enabled": [
235+
"frontends/parsers/v1/v1lexer.cc",
236+
"frontends/parsers/v1/v1parser.cc",
237+
"frontends/parsers/parserDriver_v1.cpp",
238+
"frontends/p4/typeChecking/typeCheckExpr_v1.cpp",
239+
"frontends/p4-14/typecheck.cpp",
240+
"frontends/p4-14/header_type.cpp",
241+
"frontends/p4-14/v1.cpp",
242+
"frontends/p4-14/fromv1.0/converters.cpp",
243+
"frontends/p4-14/fromv1.0/programStructure.cpp",
244+
],
245+
"//conditions:default": [],
246+
}),
221247
textual_hdrs = glob([
222248
"ir/**/*.h",
223249
"frontends/**/*.h",
@@ -227,11 +253,15 @@ cc_library(
227253
"backends/**/*.h",
228254
]) + [
229255
":p4_parser_yacc",
230-
":v1_parser_yacc",
231256
":p4lexer",
232-
":v1lexer",
233257
":ir_generated_files",
234-
],
258+
] + select({
259+
":p4_14_enabled": [
260+
":v1_parser_yacc",
261+
":v1lexer",
262+
],
263+
"//conditions:default": [],
264+
}),
235265
deps = [
236266
":config_h",
237267
":flex_lexer_h",

0 commit comments

Comments
 (0)