blob: 186850c0dadba249b1dfae64b9b9564139436ee3 [file] [log] [blame]
Parker Schuh2a1447c2019-02-17 00:25:29 -08001load("//aos/build:queues.bzl", "queue_library")
2load("//tools/build_rules:gtk_dependent.bzl", "gtk_dependent_cc_binary", "gtk_dependent_cc_library")
3load("@com_google_protobuf//:protobuf.bzl", "cc_proto_library")
Brian Silvermana498bbb2019-03-03 17:18:04 -08004load("//tools:environments.bzl", "mcu_cpus")
Parker Schuh2a1447c2019-02-17 00:25:29 -08005
6package(default_visibility = ["//visibility:public"])
7
Brian Silvermance4825f2019-02-17 18:28:39 -08008VISION_TARGETS = [
9 "//tools:k8",
10 "//tools:armhf-debian",
11]
Parker Schuh2a1447c2019-02-17 00:25:29 -080012
13cc_library(
Parker Schuhe9a549a2019-02-24 16:29:22 -080014 name = "constants",
James Kuszmaule2c71ea2019-03-04 08:14:21 -080015 srcs = [
16 "constants.cc",
17 "constants_formatting.cc",
18 ],
Austin Schuh29b6be02019-03-02 22:12:58 -080019 hdrs = ["constants.h"],
Brian Silvermana498bbb2019-03-03 17:18:04 -080020 compatible_with = mcu_cpus,
21 visibility = ["//visibility:public"],
Parker Schuhe9a549a2019-02-24 16:29:22 -080022)
23
James Kuszmaule2c71ea2019-03-04 08:14:21 -080024cc_binary(
25 name = "constants_formatting",
26 srcs = ["constants_formatting_main.cc"],
27 deps = [":constants"],
28)
29
30genrule(
31 name = "generate_constants",
32 outs = ["validate_constants.cc"],
33 cmd = "$(location :constants_formatting) $(OUTS)",
34 tools = [":constants_formatting"],
35)
36
Alex Perrye9775c32019-03-09 10:48:57 -080037cc_library(
38 name = "image_writer",
39 srcs = ["image_writer.cc"],
40 hdrs = ["image_writer.h"],
41 deps = ["//aos/vision/image:image_types"],
42)
43
James Kuszmaule2c71ea2019-03-04 08:14:21 -080044sh_test(
45 name = "constants_formatting_test",
46 srcs = ["constants_formatting_test.sh"],
47 args = [
48 "$(location :constants.cc)",
49 "$(location :validate_constants.cc)",
50 ],
51 data = [
52 ":constants.cc",
53 ":validate_constants.cc",
54 ],
55)
56
Parker Schuhe9a549a2019-02-24 16:29:22 -080057cc_library(
Parker Schuh2a1447c2019-02-17 00:25:29 -080058 name = "target_finder",
Brian Silvermance4825f2019-02-17 18:28:39 -080059 srcs = [
60 "target_finder.cc",
61 "target_geometry.cc",
62 ],
63 hdrs = [
64 "target_finder.h",
65 "target_types.h",
66 ],
67 restricted_to = VISION_TARGETS,
Parker Schuh2a1447c2019-02-17 00:25:29 -080068 deps = [
Parker Schuhe9a549a2019-02-24 16:29:22 -080069 ":constants",
Alex Perryb6f334d2019-03-23 13:10:45 -070070 "//aos/util:math",
Brian Silvermance4825f2019-02-17 18:28:39 -080071 "//aos/vision/blob:contour",
Parker Schuh2a1447c2019-02-17 00:25:29 -080072 "//aos/vision/blob:hierarchical_contour_merge",
73 "//aos/vision/blob:region_alloc",
Parker Schuh2a1447c2019-02-17 00:25:29 -080074 "//aos/vision/blob:threshold",
75 "//aos/vision/blob:transpose",
76 "//aos/vision/debug:overlay",
77 "//aos/vision/math:vector",
Brian Silvermance4825f2019-02-17 18:28:39 -080078 "@com_google_ceres_solver//:ceres",
Parker Schuh2a1447c2019-02-17 00:25:29 -080079 ],
Parker Schuh2a1447c2019-02-17 00:25:29 -080080)
81
82gtk_dependent_cc_binary(
83 name = "debug_viewer",
84 srcs = ["debug_viewer.cc"],
Brian Silvermance4825f2019-02-17 18:28:39 -080085 restricted_to = VISION_TARGETS,
Parker Schuh2a1447c2019-02-17 00:25:29 -080086 deps = [
87 ":target_finder",
88 "//aos/vision/blob:move_scale",
89 "//aos/vision/blob:threshold",
90 "//aos/vision/blob:transpose",
91 "//aos/vision/debug:debug_framework",
92 "//aos/vision/math:vector",
Austin Schuh75921532019-03-09 18:46:34 -080093 "@com_github_gflags_gflags//:gflags",
Parker Schuh2a1447c2019-02-17 00:25:29 -080094 ],
Parker Schuh2a1447c2019-02-17 00:25:29 -080095)
96
97cc_binary(
98 name = "target_sender",
99 srcs = ["target_sender.cc"],
Parker Schuh2a1447c2019-02-17 00:25:29 -0800100 restricted_to = VISION_TARGETS,
Brian Silvermance4825f2019-02-17 18:28:39 -0800101 deps = [
Alex Perrye9775c32019-03-09 10:48:57 -0800102 ":image_writer",
Brian Silvermance4825f2019-02-17 18:28:39 -0800103 ":target_finder",
104 "//aos/logging",
105 "//aos/logging:implementations",
106 "//aos/vision/blob:codec",
107 "//aos/vision/blob:find_blob",
108 "//aos/vision/events:epoll_events",
109 "//aos/vision/events:socket_types",
110 "//aos/vision/events:udp",
Brian Silvermance4825f2019-02-17 18:28:39 -0800111 "//y2019/jevois:serial",
112 "//y2019/jevois:structures",
113 "//y2019/jevois:uart",
Parker Schuh5e8e3a52019-02-24 13:36:19 -0800114 "//y2019/jevois/camera:image_stream",
Austin Schuh29b6be02019-03-02 22:12:58 -0800115 "//y2019/jevois/camera:reader",
Brian Silvermance4825f2019-02-17 18:28:39 -0800116 "@com_google_ceres_solver//:ceres",
117 ],
Parker Schuh2a1447c2019-02-17 00:25:29 -0800118)
119
Parker Schuh41d72732019-02-22 22:28:04 -0800120cc_binary(
Austin Schuh29b6be02019-03-02 22:12:58 -0800121 name = "serial_waiter",
122 srcs = ["serial_waiter.cc"],
123 restricted_to = VISION_TARGETS,
124 deps = [
125 "//aos/time",
126 "//y2019/jevois:serial",
127 ],
128)
129
130cc_binary(
Parker Schuh41d72732019-02-22 22:28:04 -0800131 name = "debug_serial",
132 srcs = ["debug_serial.cc"],
133 deps = [
Austin Schuh29b6be02019-03-02 22:12:58 -0800134 "//aos/logging",
135 "//aos/logging:implementations",
Parker Schuh41d72732019-02-22 22:28:04 -0800136 "//y2019/jevois:serial",
137 "//y2019/jevois:structures",
138 "//y2019/jevois:uart",
Parker Schuh41d72732019-02-22 22:28:04 -0800139 ],
140)
141
Parker Schuh2a1447c2019-02-17 00:25:29 -0800142cc_binary(
Parker Schuh9e1d1692019-02-24 14:34:04 -0800143 name = "global_calibration",
Austin Schuh29b6be02019-03-02 22:12:58 -0800144 srcs = [
Austin Schuh29b6be02019-03-02 22:12:58 -0800145 "global_calibration.cc",
Parker Schuh2a1447c2019-02-17 00:25:29 -0800146 ],
147 restricted_to = VISION_TARGETS,
Austin Schuh29b6be02019-03-02 22:12:58 -0800148 deps = [
149 ":target_finder",
150 "//aos/logging",
151 "//aos/logging:implementations",
152 "//aos/vision/blob:codec",
153 "//aos/vision/blob:find_blob",
154 "//aos/vision/events:epoll_events",
155 "//aos/vision/events:socket_types",
156 "//aos/vision/events:udp",
157 "//aos/vision/image:image_dataset",
158 "//aos/vision/image:image_stream",
159 "//aos/vision/image:reader",
160 "@com_google_ceres_solver//:ceres",
161 ],
Parker Schuh2a1447c2019-02-17 00:25:29 -0800162)