build: Minor cleanups

 - Touches up the proto dependency hierarchy to properly specify
   generated headers
 - Build the IPMI module as a shared_module to guarantee it is never
   static
 - Build the common library as possibly shared for dedepulication
   between the IPMI module and blobtool

Change-Id: Idbc72b8e124e744a7ccfd58c482813df645d41a1
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/proto/meson.build b/proto/meson.build
index 02d46d9..5c2ec4a 100644
--- a/proto/meson.build
+++ b/proto/meson.build
@@ -7,24 +7,22 @@
     '@INPUT@'
   ],
   output: [
-    'binaryblob.pb.cc',
     'binaryblob.pb.h',
+    'binaryblob.pb.cc',
   ],
   input: 'binaryblob.proto')
 
 binaryblobproto_pre = declare_dependency(
   include_directories: include_directories('.'),
-  dependencies: dependency('protobuf')
-)
+  dependencies: dependency('protobuf'))
 
 binaryblobproto_lib = static_library(
   'binaryblob_proto',
-  src_pb,
+  src_pb[1],
   implicit_include_directories: false,
-  dependencies: binaryblobproto_pre
-)
+  dependencies: binaryblobproto_pre)
 
 binaryblobproto_dep = declare_dependency(
   dependencies: binaryblobproto_pre,
-  link_with: binaryblobproto_lib
-)
+  link_with: binaryblobproto_lib,
+  sources: src_pb[0])