blob: 0f57f0508ed7e0d661c94c1f94e85803b9b8f71e [file] [log] [blame]
James Kuszmauld67f6d22023-02-05 17:37:25 -08001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
2load("//tools/build_rules:template.bzl", "jinja2_template")
3
4cc_library(
5 name = "simulated_constants_sender",
James Kuszmaul04a343c2023-02-20 16:38:22 -08006 srcs = ["simulated_constants_sender.cc"],
7 hdrs = ["simulated_constants_sender.h"],
8 data = [":test_constants.json"],
9 visibility = ["//y2023:__subpackages__"],
James Kuszmauld67f6d22023-02-05 17:37:25 -080010 deps = [
11 ":constants_fbs",
12 ":constants_list_fbs",
13 "//aos/events:simulated_event_loop",
14 "//aos/testing:path",
15 "//frc971/constants:constants_sender_lib",
16 ],
17)
18
19jinja2_template(
James Kuszmaul04a343c2023-02-20 16:38:22 -080020 name = "test_constants.json",
James Kuszmaul04a343c2023-02-20 16:38:22 -080021 src = "test_constants.jinja2.json",
22 includes = glob(["test_data/*.json"]),
23 parameters = {},
24 visibility = ["//visibility:public"],
25)
26
27jinja2_template(
James Kuszmauld67f6d22023-02-05 17:37:25 -080028 name = "constants.json",
29 src = "constants.jinja2.json",
Yash Chainani2ac8cb62023-01-14 16:36:36 -080030 includes = [
31 "7971.json",
Jim Ostrowskiab5ba522023-02-12 17:34:28 -080032 "971.json",
James Kuszmaul01232ed2023-02-22 17:08:23 -080033 "9971.json",
Yash Chainani2ac8cb62023-01-14 16:36:36 -080034 "//y2023/vision/calib_files",
35 "//y2023/vision/maps",
36 ],
James Kuszmauld67f6d22023-02-05 17:37:25 -080037 parameters = {},
38 visibility = ["//visibility:public"],
39)
40
41flatbuffer_cc_library(
42 name = "constants_fbs",
43 srcs = ["constants.fbs"],
44 gen_reflections = True,
45 visibility = ["//visibility:public"],
Yash Chainani2ac8cb62023-01-14 16:36:36 -080046 deps = [
47 "//frc971/vision:calibration_fbs",
48 "//frc971/vision:target_map_fbs",
49 ],
James Kuszmauld67f6d22023-02-05 17:37:25 -080050)
51
52flatbuffer_cc_library(
53 name = "constants_list_fbs",
54 srcs = ["constants_list.fbs"],
55 gen_reflections = True,
56 visibility = ["//visibility:public"],
57 deps = [":constants_fbs"],
58)
59
60cc_binary(
61 name = "constants_sender",
62 srcs = ["constants_sender.cc"],
63 visibility = ["//visibility:public"],
64 deps = [
65 ":constants_fbs",
66 ":constants_list_fbs",
67 "//aos:init",
68 "//aos/events:shm_event_loop",
69 "//aos/testing:path",
70 "//frc971/constants:constants_sender_lib",
71 ],
72)