Finish auto-converting most of the gyp files.

I've also started writing down which ones need manual work.

Change-Id: I442782e1e3352e0de32b612f1bd2c167f231495a
diff --git a/aos/common/BUILD b/aos/common/BUILD
index 32b0f3b..55f1a03 100644
--- a/aos/common/BUILD
+++ b/aos/common/BUILD
@@ -1,36 +1,41 @@
-"""
-aos_queue(
+package(default_visibility = ['//visibility:public'])
+
+load('/aos/build/queues', 'queue_library')
+
+queue_library(
   name = 'test_queue',
   srcs = [
     'test_queue.q',
   ],
 )
-"""
 
 cc_library(
   name = 'queue_testutils',
   srcs = [
     'queue_testutils.cc',
   ],
+  hdrs = [
+    'queue_testutils.h',
+  ],
   deps = [
+    '//aos/common/logging',
     ':once',
-    ':mutex',
-    '//aos/build:logging',
     '//aos/linux_code/ipc_lib:shared_mem',
+    ':mutex',
   ],
 )
 
 cc_library(
   name = 'time',
-  hdrs = [
-    'time.h',
-  ],
   srcs = [
     'time.cc',
   ],
+  hdrs = [
+    'time.h',
+  ],
   deps = [
+    '//aos/common/logging:logging_interface',
     ':mutex',
-    '//aos/build:logging_interface',
   ],
 )
 
@@ -39,4 +44,219 @@
   srcs = [
     'queue_types.cc',
   ],
+  hdrs = [
+    'queue_types.h',
+  ],
+  deps = [
+    '//aos/common/logging:logging_interface',
+    '//aos/linux_code/ipc_lib:shared_mem',
+    '//aos/linux_code/ipc_lib:core_lib',
+    ':mutex',
+    ':time',
+  ],
+)
+
+cc_test(
+  name = 'queue_types_test',
+  srcs = [
+    'queue_types_test.cc',
+  ],
+  deps = [
+    ':queue_types',
+    '//third_party/gtest',
+    ':test_queue',
+    '//aos/common/logging',
+    ':queue_testutils',
+  ],
+)
+
+cc_library(
+  name = 'queues',
+  srcs = [
+    'queue.cc',
+  ],
+  hdrs = [
+    'queue.h',
+  ],
+  deps = [
+    '//aos/linux_code/ipc_lib:queue',
+    ':time',
+  ],
+)
+
+cc_library(
+  name = 'scoped_fd',
+  deps = [
+    '//aos/common/logging',
+  ],
+)
+
+cc_test(
+  name = 'queue_test',
+  srcs = [
+    'queue_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':queue_testutils',
+    ':test_queue',
+    '//aos/common/util:thread',
+    ':die',
+  ],
+)
+
+cc_test(
+  name = 'type_traits_test',
+  srcs = [
+    'type_traits_test.cpp',
+  ],
+  deps = [
+    '//third_party/gtest',
+  ],
+)
+
+cc_library(
+  name = 'gtest_prod',
+  deps = [
+    '//third_party/gtest_prod',
+  ],
+)
+
+cc_library(
+  name = 'once',
+  deps = [
+    '//third_party/gtest_prod',
+  ],
+)
+
+cc_test(
+  name = 'once_test',
+  srcs = [
+    'once_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':once',
+  ],
+)
+
+cc_test(
+  name = 'time_test',
+  srcs = [
+    'time_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':time',
+    '//aos/common/logging',
+    '//aos/common/util:death_test_log_implementation',
+  ],
+)
+
+cc_library(
+  name = 'die',
+  srcs = [
+    'die.cc',
+  ],
+  hdrs = [
+    'die.h',
+  ],
+  deps = [
+    '//aos/common/libc:aos_strerror',
+  ],
+)
+
+cc_test(
+  name = 'queue_testutils_test',
+  srcs = [
+    'queue_testutils_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':queue_testutils',
+    '//aos/common/logging',
+  ],
+)
+
+cc_test(
+  name = 'mutex_test',
+  srcs = [
+    'mutex_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':mutex',
+    ':die',
+    '//aos/common/logging',
+    '//aos/common/util:death_test_log_implementation',
+    '//aos/common/util:thread',
+    '//aos/common:time',
+    ':queue_testutils',
+  ],
+)
+
+cc_test(
+  name = 'event_test',
+  srcs = [
+    'event_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':event',
+    ':queue_testutils',
+    ':time',
+  ],
+)
+
+cc_test(
+  name = 'condition_test',
+  srcs = [
+    'condition_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':condition',
+    '//aos/common/util:thread',
+    ':time',
+    ':mutex',
+    '//aos/common/logging',
+    ':queue_testutils',
+    '//aos/linux_code/ipc_lib:core_lib',
+    '//aos/linux_code/ipc_lib:aos_sync',
+    ':die',
+    '//aos/common/util:thread',
+  ],
+)
+
+cc_test(
+  name = 'die_test',
+  srcs = [
+    'die_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':die',
+  ],
+)
+
+cc_library(
+  name = 'stl_mutex',
+  deps = [
+    '//aos/linux_code/ipc_lib:aos_sync',
+    '//aos/common/logging',
+  ],
+)
+
+cc_test(
+  name = 'stl_mutex_test',
+  srcs = [
+    'stl_mutex_test.cc',
+  ],
+  deps = [
+    ':stl_mutex',
+    '//third_party/gtest',
+    ':queue_testutils',
+    '//aos/common/util:thread',
+    ':die',
+  ],
 )
diff --git a/aos/common/actions/BUILD b/aos/common/actions/BUILD
new file mode 100644
index 0000000..22db816
--- /dev/null
+++ b/aos/common/actions/BUILD
@@ -0,0 +1,59 @@
+package(default_visibility = ['//visibility:public'])
+
+load('/aos/build/queues', 'queue_library')
+
+cc_library(
+  name = 'action_lib',
+  srcs = [
+    'actions.cc',
+    'actor.cc',
+  ],
+  hdrs = [
+    'actions.h',
+    'actor.h',
+  ],
+  deps = [
+    '//aos/common/logging',
+    '//aos/common:queues',
+    '//aos/common/logging:queue_logging',
+    '//aos/common:time',
+    '//aos/common/controls:control_loop',
+    '//aos/common/util:phased_loop',
+  ],
+)
+
+queue_library(
+  name = 'action_queue',
+  srcs = [
+    'actions.q',
+  ],
+)
+
+queue_library(
+  name = 'test_action_queue',
+  srcs = [
+    'test_action.q',
+  ],
+  deps = [
+    ':action_queue',
+  ],
+)
+
+cc_test(
+  name = 'action_test',
+  srcs = [
+    'action_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+    ':action_lib',
+    ':test_action_queue',
+    '//aos/common:queue_testutils',
+    '//aos/common/logging',
+    '//aos/common/logging:queue_logging',
+    '//aos/common:queues',
+    '//aos/common:time',
+    ':action_queue',
+    '//aos/linux_code/ipc_lib:event',
+  ],
+)
diff --git a/aos/common/common.gyp b/aos/common/common.gyp
index 461200e..17df955 100644
--- a/aos/common/common.gyp
+++ b/aos/common/common.gyp
@@ -4,7 +4,7 @@
       'target_name': 'test_queue',
       'type': 'static_library',
       'sources': [
-        '<(AOS)/common/test_queue.q',
+        'test_queue.q',
       ],
       'variables': {
         'header_path': 'aos/common',
diff --git a/aos/common/controls/BUILD b/aos/common/controls/BUILD
new file mode 100644
index 0000000..c021714
--- /dev/null
+++ b/aos/common/controls/BUILD
@@ -0,0 +1,65 @@
+package(default_visibility = ['//visibility:public'])
+
+load('/aos/build/queues', 'queue_library')
+
+cc_library(
+  name = 'replay_control_loop',
+  deps = [
+    '//aos/common:queues',
+    ':control_loop',
+    '//aos/linux_code/logging:log_replay',
+    '//aos/common/logging:queue_logging',
+    '//aos/common:time',
+  ],
+)
+
+cc_library(
+  name = 'control_loop_test',
+  srcs = [
+    'control_loop_test.cc',
+  ],
+  hdrs = [
+    'control_loop_test.h',
+  ],
+  deps = [
+    '//aos/common:time',
+    '//aos/common/messages:robot_state',
+    '//third_party/gtest',
+    '//aos/common:queue_testutils',
+  ],
+)
+
+cc_library(
+  name = 'polytope',
+  deps = [
+    '//third_party/eigen',
+    '//third_party/libcdd',
+  ],
+)
+
+queue_library(
+  name = 'control_loop_queues',
+  srcs = [
+    'control_loops.q',
+  ],
+)
+
+cc_library(
+  name = 'control_loop',
+  srcs = [
+    'control_loop.cc',
+  ],
+  hdrs = [
+    'control_loop.h',
+  ],
+  deps = [
+    '//aos/common/messages:robot_state',
+    '//aos/common/logging',
+    '//aos/common/util:phased_loop',
+    '//aos/common:time',
+    ':control_loop_queues',
+    '//aos/common/logging:queue_logging',
+    '//aos/common/util:log_interval',
+    '//aos/common:queues',
+  ],
+)
diff --git a/aos/common/controls/controls.gyp b/aos/common/controls/controls.gyp
index 4e0bc79..8af66be 100644
--- a/aos/common/controls/controls.gyp
+++ b/aos/common/controls/controls.gyp
@@ -57,7 +57,7 @@
     {
       'target_name': 'control_loop_queues',
       'type': 'static_library',
-      'sources': [ '<(AOS)/common/controls/control_loops.q' ],
+      'sources': [ 'control_loops.q' ],
       'variables': {
         'header_path': 'aos/common/controls',
       },
diff --git a/aos/common/input/BUILD b/aos/common/input/BUILD
new file mode 100644
index 0000000..2539f55
--- /dev/null
+++ b/aos/common/input/BUILD
@@ -0,0 +1,14 @@
+package(default_visibility = ['//visibility:public'])
+
+cc_library(
+  name = 'driver_station_data',
+  srcs = [
+    'driver_station_data.cc',
+  ],
+  hdrs = [
+    'driver_station_data.h',
+  ],
+  deps = [
+    '//aos/common/messages:robot_state',
+  ],
+)
diff --git a/aos/common/libc/BUILD b/aos/common/libc/BUILD
index fb27f3a..ad88f9d 100644
--- a/aos/common/libc/BUILD
+++ b/aos/common/libc/BUILD
@@ -5,6 +5,9 @@
   srcs = [
     'aos_strsignal.cc',
   ],
+  hdrs = [
+    'aos_strsignal.h',
+  ],
   deps = [
     '//aos/common/logging:logging_interface',
   ],
@@ -18,7 +21,7 @@
   deps = [
     ':aos_strsignal',
     '//third_party/gtest',
-    '//aos/common/logging:logging',
+    '//aos/common/logging',
   ],
 )
 
@@ -27,6 +30,9 @@
   srcs = [
     'dirname.cc',
   ],
+  hdrs = [
+    'dirname.h',
+  ],
 )
 
 cc_test(
@@ -35,6 +41,7 @@
     'dirname_test.cc',
   ],
   deps = [
+    ':dirname',
     '//third_party/gtest',
   ],
 )
@@ -44,6 +51,9 @@
   srcs = [
     'aos_strerror.cc',
   ],
+  hdrs = [
+    'aos_strerror.h',
+  ],
 )
 
 cc_test(
diff --git a/aos/common/logging/BUILD b/aos/common/logging/BUILD
index 181bcd5..db7f365 100644
--- a/aos/common/logging/BUILD
+++ b/aos/common/logging/BUILD
@@ -1,27 +1,43 @@
 package(default_visibility = ['//visibility:public'])
 
-cc_library(
-  name = 'logging_interface',
+cc_test(
+  name = 'logging_impl_test',
   srcs = [
-    'logging_interface.cc',
+    'logging_impl_test.cc',
   ],
   deps = [
-    '//aos/linux_code/logging:linux_interface',
-    '//aos/common:die',
-    '//aos/common/libc:aos_strerror',
+    '//third_party/gtest',
+    '//aos/common/logging',
   ],
 )
 
 cc_library(
-  name = 'logging',
+  name = 'queue_logging',
   srcs = [
-    'logging_impl.cc',
+    'queue_logging.cc',
+  ],
+  hdrs = [
+    'queue_logging.h',
   ],
   deps = [
-    '//aos/linux_code/logging:linux_logging',
-    '//aos/common:time',
-    '//aos/common:once',
-    ':logging_interface',
+    '//aos/common/logging',
+    '//aos/common:die',
     '//aos/common:queue_types',
   ],
 )
+
+cc_library(
+  name = 'matrix_logging',
+  srcs = [
+    'matrix_logging.cc',
+  ],
+  hdrs = [
+    'matrix_logging.h',
+  ],
+  deps = [
+    '//aos/common/logging',
+    '//aos/common:die',
+    '//aos/common:queue_types',
+    '//third_party/eigen',
+  ],
+)
diff --git a/aos/common/messages/BUILD b/aos/common/messages/BUILD
new file mode 100644
index 0000000..dc125dd
--- /dev/null
+++ b/aos/common/messages/BUILD
@@ -0,0 +1,10 @@
+package(default_visibility = ['//visibility:public'])
+
+load('/aos/build/queues', 'queue_library')
+
+queue_library(
+  name = 'robot_state',
+  srcs = [
+    'robot_state.q',
+  ],
+)
diff --git a/aos/common/network/BUILD b/aos/common/network/BUILD
new file mode 100644
index 0000000..a452e8f
--- /dev/null
+++ b/aos/common/network/BUILD
@@ -0,0 +1,37 @@
+package(default_visibility = ['//visibility:public'])
+
+cc_library(
+  name = 'team_number',
+  srcs = [
+    'team_number.cc',
+  ],
+  hdrs = [
+    'team_number.h',
+  ],
+  deps = [
+    '//aos/linux_code:configuration',
+    '//aos/common:once',
+    '//aos/common/logging',
+    '//aos/common/util:string_to_num',
+  ],
+)
+
+cc_library(
+  name = 'socket',
+  srcs = [
+    'receive_socket.cc',
+    'send_socket.cc',
+    'socket.cc',
+  ],
+  hdrs = [
+    'receive_socket.h',
+    'send_socket.h',
+    'socket.h',
+  ],
+  deps = [
+    '//aos/common/logging',
+    '//aos/common:time',
+    '//aos/common/util:inet_addr',
+    '//aos/linux_code:configuration',
+  ],
+)
diff --git a/aos/common/util/BUILD b/aos/common/util/BUILD
new file mode 100644
index 0000000..2409e00
--- /dev/null
+++ b/aos/common/util/BUILD
@@ -0,0 +1,148 @@
+package(default_visibility = ['//visibility:public'])
+
+cc_library(
+  name = 'run_command',
+  srcs = [
+    'run_command.cc',
+  ],
+  hdrs = [
+    'run_command.h',
+  ],
+  deps = [
+    '//aos/common/logging:logging_interface',
+  ],
+)
+
+cc_test(
+  name = 'run_command_test',
+  srcs = [
+    'run_command_test.cc',
+  ],
+  deps = [
+    ':run_command',
+    '//third_party/gtest',
+    '//aos/common/logging',
+    ':thread',
+  ],
+)
+
+cc_library(
+  name = 'death_test_log_implementation',
+  deps = [
+    '//aos/common/logging',
+  ],
+)
+
+cc_library(
+  name = 'inet_addr',
+  srcs = [
+    'inet_addr.cc',
+  ],
+  hdrs = [
+    'inet_addr.h',
+  ],
+)
+
+cc_library(
+  name = 'phased_loop',
+  srcs = [
+    'phased_loop.cc',
+  ],
+  hdrs = [
+    'phased_loop.h',
+  ],
+  deps = [
+    '//aos/common/logging',
+    '//aos/common:time',
+  ],
+)
+
+cc_library(
+  name = 'log_interval',
+  deps = [
+    '//aos/common:time',
+    '//aos/common/logging',
+  ],
+)
+
+cc_library(
+  name = 'string_to_num',
+)
+
+cc_test(
+  name = 'string_to_num_test',
+  srcs = [
+    'string_to_num_test.cc',
+  ],
+  deps = [
+    ':string_to_num',
+    '//third_party/gtest',
+  ],
+)
+
+cc_library(
+  name = 'thread',
+  srcs = [
+    'thread.cc',
+  ],
+  hdrs = [
+    'thread.h',
+  ],
+)
+
+cc_library(
+  name = 'trapezoid_profile',
+  srcs = [
+    'trapezoid_profile.cc',
+  ],
+  hdrs = [
+    'trapezoid_profile.h',
+  ],
+  deps = [
+    '//third_party/eigen',
+    '//aos/common:time',
+    '//aos/common/logging',
+  ],
+)
+
+cc_test(
+  name = 'trapezoid_profile_test',
+  srcs = [
+    'trapezoid_profile_test.cc',
+  ],
+  deps = [
+    ':trapezoid_profile',
+    '//third_party/gtest',
+  ],
+)
+
+cc_library(
+  name = 'wrapping_counter',
+  srcs = [
+    'wrapping_counter.cc',
+  ],
+  hdrs = [
+    'wrapping_counter.h',
+  ],
+)
+
+cc_test(
+  name = 'wrapping_counter_test',
+  srcs = [
+    'wrapping_counter_test.cc',
+  ],
+  deps = [
+    ':wrapping_counter',
+    '//third_party/gtest',
+  ],
+)
+
+cc_test(
+  name = 'options_test',
+  srcs = [
+    'options_test.cc',
+  ],
+  deps = [
+    '//third_party/gtest',
+  ],
+)