Use the downloaded clang when building for armhf-debian
This makes it work on a barebones Stretch installation.
Also add building for this CPU to the CI script so we know it keeps
working, which means marking everything that's supposed to work
appropriately.
Change-Id: Ic050ce20eae45c6b23e0e42dddb24db3ebc70b84
diff --git a/y2016/BUILD b/y2016/BUILD
index e10be44..24f83e1 100644
--- a/y2016/BUILD
+++ b/y2016/BUILD
@@ -8,6 +8,9 @@
hdrs = [
"constants.h",
],
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
visibility = ["//visibility:public"],
deps = [
"//aos:once",
diff --git a/y2016/control_loops/drivetrain/BUILD b/y2016/control_loops/drivetrain/BUILD
index 13c1ba3..f798681 100644
--- a/y2016/control_loops/drivetrain/BUILD
+++ b/y2016/control_loops/drivetrain/BUILD
@@ -1,78 +1,87 @@
-package(default_visibility = ['//visibility:public'])
+package(default_visibility = ["//visibility:public"])
-load('//aos/build:queues.bzl', 'queue_library')
+load("//aos/build:queues.bzl", "queue_library")
genrule(
- name = 'genrule_drivetrain',
- visibility = ['//visibility:private'],
- cmd = '$(location //y2016/control_loops/python:drivetrain) $(OUTS)',
- tools = [
- '//y2016/control_loops/python:drivetrain',
- ],
- outs = [
- 'drivetrain_dog_motor_plant.h',
- 'drivetrain_dog_motor_plant.cc',
- 'kalman_drivetrain_motor_plant.h',
- 'kalman_drivetrain_motor_plant.cc',
- ],
+ name = "genrule_drivetrain",
+ outs = [
+ "drivetrain_dog_motor_plant.h",
+ "drivetrain_dog_motor_plant.cc",
+ "kalman_drivetrain_motor_plant.h",
+ "kalman_drivetrain_motor_plant.cc",
+ ],
+ cmd = "$(location //y2016/control_loops/python:drivetrain) $(OUTS)",
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ tools = [
+ "//y2016/control_loops/python:drivetrain",
+ ],
+ visibility = ["//visibility:private"],
)
genrule(
- name = 'genrule_polydrivetrain',
- visibility = ['//visibility:private'],
- cmd = '$(location //y2016/control_loops/python:polydrivetrain) $(OUTS)',
- tools = [
- '//y2016/control_loops/python:polydrivetrain',
- ],
- outs = [
- 'polydrivetrain_dog_motor_plant.h',
- 'polydrivetrain_dog_motor_plant.cc',
- 'polydrivetrain_cim_plant.h',
- 'polydrivetrain_cim_plant.cc',
- ],
+ name = "genrule_polydrivetrain",
+ outs = [
+ "polydrivetrain_dog_motor_plant.h",
+ "polydrivetrain_dog_motor_plant.cc",
+ "polydrivetrain_cim_plant.h",
+ "polydrivetrain_cim_plant.cc",
+ ],
+ cmd = "$(location //y2016/control_loops/python:polydrivetrain) $(OUTS)",
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ tools = [
+ "//y2016/control_loops/python:polydrivetrain",
+ ],
+ visibility = ["//visibility:private"],
)
cc_library(
- name = 'polydrivetrain_plants',
- srcs = [
- 'polydrivetrain_dog_motor_plant.cc',
- 'drivetrain_dog_motor_plant.cc',
- 'kalman_drivetrain_motor_plant.cc',
- ],
- hdrs = [
- 'polydrivetrain_dog_motor_plant.h',
- 'drivetrain_dog_motor_plant.h',
- 'kalman_drivetrain_motor_plant.h',
- ],
- deps = [
- '//frc971/control_loops:state_feedback_loop',
- ],
+ name = "polydrivetrain_plants",
+ srcs = [
+ "drivetrain_dog_motor_plant.cc",
+ "kalman_drivetrain_motor_plant.cc",
+ "polydrivetrain_dog_motor_plant.cc",
+ ],
+ hdrs = [
+ "drivetrain_dog_motor_plant.h",
+ "kalman_drivetrain_motor_plant.h",
+ "polydrivetrain_dog_motor_plant.h",
+ ],
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ deps = [
+ "//frc971/control_loops:state_feedback_loop",
+ ],
)
cc_library(
- name = 'drivetrain_base',
- srcs = [
- 'drivetrain_base.cc',
- ],
- hdrs = [
- 'drivetrain_base.h',
- ],
- deps = [
- ':polydrivetrain_plants',
- '//frc971/control_loops/drivetrain:drivetrain_config',
- '//frc971:shifter_hall_effect',
- '//y2016:constants',
- ],
+ name = "drivetrain_base",
+ srcs = [
+ "drivetrain_base.cc",
+ ],
+ hdrs = [
+ "drivetrain_base.h",
+ ],
+ deps = [
+ ":polydrivetrain_plants",
+ "//frc971:shifter_hall_effect",
+ "//frc971/control_loops/drivetrain:drivetrain_config",
+ "//y2016:constants",
+ ],
)
cc_binary(
- name = 'drivetrain',
- srcs = [
- 'drivetrain_main.cc',
- ],
- deps = [
- ':drivetrain_base',
- '//aos/linux_code:init',
- '//frc971/control_loops/drivetrain:drivetrain_lib',
- ],
+ name = "drivetrain",
+ srcs = [
+ "drivetrain_main.cc",
+ ],
+ deps = [
+ ":drivetrain_base",
+ "//aos/linux_code:init",
+ "//frc971/control_loops/drivetrain:drivetrain_lib",
+ ],
)
diff --git a/y2016/vision/BUILD b/y2016/vision/BUILD
index 3ba7786..1220946 100644
--- a/y2016/vision/BUILD
+++ b/y2016/vision/BUILD
@@ -1,26 +1,35 @@
-load('//tools/build_rules:protobuf.bzl', 'proto_cc_library')
-load('//aos/build:queues.bzl', 'queue_library')
-load('//tools/build_rules:gtk_dependent.bzl', 'gtk_dependent_cc_binary', 'gtk_dependent_cc_library')
+load("//tools/build_rules:protobuf.bzl", "proto_cc_library")
+load("//aos/build:queues.bzl", "queue_library")
+load("//tools/build_rules:gtk_dependent.bzl", "gtk_dependent_cc_binary", "gtk_dependent_cc_library")
queue_library(
- name = 'vision_queue',
- visibility = ['//visibility:public'],
- srcs = [
- 'vision.q',
- ],
+ name = "vision_queue",
+ srcs = [
+ "vision.q",
+ ],
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ visibility = ["//visibility:public"],
)
proto_cc_library(
- name = 'vision_data',
- src = 'vision_data.proto',
+ name = "vision_data",
+ src = "vision_data.proto",
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
)
proto_cc_library(
- name = 'calibration',
- src = 'calibration.proto',
+ name = "calibration",
+ src = "calibration.proto",
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
)
-_calibration_values_embedded_before = '''
+_calibration_values_embedded_before = """
#include "y2016/vision/stereo_geometry.h"
#include <string>
@@ -31,9 +40,9 @@
namespace vision {
namespace {
-const ::std::string kEmbeddedContents ='''
+const ::std::string kEmbeddedContents ="""
-_calibration_values_embedded_after = ''';
+_calibration_values_embedded_after = """;
} // namespace
@@ -44,116 +53,134 @@
}
} // namespace vision
-} // namespace y2016'''
+} // namespace y2016"""
genrule(
- name = 'embed_calibration_pb',
- srcs = [
- 'calibration.pb',
- ],
- outs = [
- 'stereo_geometry_embedded.cc',
- ],
- cmd = '\n'.join([
- 'echo \'%s\' > $@' % _calibration_values_embedded_before,
- 'cat $(location :calibration.pb) | sed \'s/"/\\\\"/g ; s/^/"/g ; s/$$/\\\\n"/g\' >> $@',
- 'echo \'%s\' >> $@' % _calibration_values_embedded_after,
- ]),
+ name = "embed_calibration_pb",
+ srcs = [
+ "calibration.pb",
+ ],
+ outs = [
+ "stereo_geometry_embedded.cc",
+ ],
+ cmd = "\n".join([
+ "echo '%s' > $@" % _calibration_values_embedded_before,
+ "cat $(location :calibration.pb) | sed 's/\"/\\\\\"/g ; s/^/\"/g ; s/$$/\\\\n\"/g' >> $@",
+ "echo '%s' >> $@" % _calibration_values_embedded_after,
+ ]),
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
)
cc_library(
- name = 'stereo_geometry',
- hdrs = [
- 'stereo_geometry.h',
- ],
- srcs = [
- 'stereo_geometry.cc',
- 'stereo_geometry_embedded.cc',
- ],
- deps = [
- ':calibration',
- '//aos/common/logging',
- '//aos/vision/math:vector',
- ],
+ name = "stereo_geometry",
+ srcs = [
+ "stereo_geometry.cc",
+ "stereo_geometry_embedded.cc",
+ ],
+ hdrs = [
+ "stereo_geometry.h",
+ ],
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ deps = [
+ ":calibration",
+ "//aos/common/logging",
+ "//aos/vision/math:vector",
+ ],
)
cc_binary(
- name = 'target_sender',
- srcs = ['target_sender.cc'],
- deps = [
- '//aos/common:time',
- '//aos/common/logging:logging',
- '//aos/common/logging:implementations',
- '//aos/vision/image:reader',
- '//aos/vision/image:jpeg_routines',
- '//aos/vision/image:image_stream',
- '//y2016/vision:blob_filters',
- '//aos/vision/events:udp',
- '//aos/vision/events:epoll_events',
- '//aos/vision/events:socket_types',
- ':stereo_geometry',
- ':vision_data',
- ':calibration',
- ],
- restricted_to = ['//tools:k8', '//tools:armhf-debian'],
+ name = "target_sender",
+ srcs = ["target_sender.cc"],
+ restricted_to = [
+ "//tools:k8",
+ "//tools:armhf-debian",
+ ],
+ deps = [
+ ":calibration",
+ ":stereo_geometry",
+ ":vision_data",
+ "//aos/common:time",
+ "//aos/common/logging",
+ "//aos/common/logging:implementations",
+ "//aos/vision/events:epoll_events",
+ "//aos/vision/events:socket_types",
+ "//aos/vision/events:udp",
+ "//aos/vision/image:image_stream",
+ "//aos/vision/image:jpeg_routines",
+ "//aos/vision/image:reader",
+ "//y2016/vision:blob_filters",
+ ],
)
cc_library(
- name = "blob_filters",
- srcs = ["blob_filters.cc"],
- hdrs = ["blob_filters.h"],
- deps = [
- "//aos/vision/math:vector",
- "//aos/vision/math:segment",
- "//aos/vision/blob:range_image",
- "//aos/vision/blob:threshold",
- "//aos/vision/blob:find_blob",
- "//aos/vision/blob:hierarchical_contour_merge",
- "//aos/vision/blob:codec",
- ],
- visibility = ['//visibility:public'],
- restricted_to = ['//tools:k8', '//tools:armhf-debian'],
+ name = "blob_filters",
+ srcs = ["blob_filters.cc"],
+ hdrs = ["blob_filters.h"],
+ restricted_to = [
+ "//tools:k8",
+ "//tools:armhf-debian",
+ ],
+ visibility = ["//visibility:public"],
+ deps = [
+ "//aos/vision/blob:codec",
+ "//aos/vision/blob:find_blob",
+ "//aos/vision/blob:hierarchical_contour_merge",
+ "//aos/vision/blob:range_image",
+ "//aos/vision/blob:threshold",
+ "//aos/vision/math:segment",
+ "//aos/vision/math:vector",
+ ],
)
cc_binary(
- name = 'target_receiver',
- srcs = [
- 'target_receiver.cc',
- ],
- visibility = ['//visibility:public'],
- deps = [
- '//aos/common/logging',
- '//aos/common/logging:queue_logging',
- '//aos/linux_code:init',
- '//aos/common:time',
- '//aos/vision/events:udp',
- ':vision_queue',
- ':vision_data',
- ':stereo_geometry',
- '//y2016:constants',
- '//frc971/control_loops/drivetrain:drivetrain_queue',
- '//aos/common:mutex',
- ],
+ name = "target_receiver",
+ srcs = [
+ "target_receiver.cc",
+ ],
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ visibility = ["//visibility:public"],
+ deps = [
+ ":stereo_geometry",
+ ":vision_data",
+ ":vision_queue",
+ "//aos/common:mutex",
+ "//aos/common:time",
+ "//aos/common/logging",
+ "//aos/common/logging:queue_logging",
+ "//aos/linux_code:init",
+ "//aos/vision/events:udp",
+ "//frc971/control_loops/drivetrain:drivetrain_queue",
+ "//y2016:constants",
+ ],
)
gtk_dependent_cc_binary(
- name = "debug_receiver",
- srcs = ["debug_receiver.cc"],
- visibility = ['//visibility:public'],
- deps = [
- "//aos/vision/image:image_types",
- "//aos/vision/image:jpeg_routines",
- "//aos/vision/events:socket_types",
- "//aos/vision/events:tcp_client",
- "//aos/vision/events:epoll_events",
- "//aos/vision/events:gtk_event",
- "//aos/vision/debug:debug_window",
- "//aos/vision/blob:range_image",
- "//aos/vision/blob:codec",
- "//aos/vision/blob:stream_view",
- ":stereo_geometry",
- ":blob_filters",
- ":vision_data",
- ":calibration",
- ],
+ name = "debug_receiver",
+ srcs = ["debug_receiver.cc"],
+ compatible_with = [
+ "//tools:armhf-debian",
+ ],
+ visibility = ["//visibility:public"],
+ deps = [
+ ":blob_filters",
+ ":calibration",
+ ":stereo_geometry",
+ ":vision_data",
+ "//aos/vision/blob:codec",
+ "//aos/vision/blob:range_image",
+ "//aos/vision/blob:stream_view",
+ "//aos/vision/debug:debug_window",
+ "//aos/vision/events:epoll_events",
+ "//aos/vision/events:gtk_event",
+ "//aos/vision/events:socket_types",
+ "//aos/vision/events:tcp_client",
+ "//aos/vision/image:image_types",
+ "//aos/vision/image:jpeg_routines",
+ ],
)