dmm/bm52x: unbreak build when serial comm is not available
authorGerhard Sittig <gerhard.sittig@gmx.net>
Tue, 29 Dec 2020 17:31:38 +0000 (18:31 +0100)
committerGerhard Sittig <gerhard.sittig@gmx.net>
Tue, 29 Dec 2020 17:31:38 +0000 (18:31 +0100)
Make another code path in the Brymen BM52x packet parser optional which
snuck in earlier and broke compilation when serial_comm dependencies are
not met.

Ideally the src/dmm/ parser code would not get built at all in that
case, but building a parser with reduced functionality and not using it
later because its callers are conditional is as good, and is what other
DMM packet parsers did in the past.

How to reproduce:

  $ configure --without-libserialport --without-libhidapi --without-libbluez
  $ make

src/dmm/bm52x.c

index 69c017194aa0ebc31983bb9f3d29092f1b663039..b91cb4e4d5a52e7fa523361398a8d7de50330235 100644 (file)
@@ -649,6 +649,7 @@ static uint16_t bm52x_rec_checksum(const uint8_t *b, size_t l)
  * Retrieve the first/next chunk of recording information.
  * Support for live readings is theoretical, and unused/untested.
  */
+#ifdef HAVE_SERIAL_COMM
 static int bm52x_rec_next_rsp(struct sr_serial_dev_inst *serial,
        enum bm52x_reqtype req, struct brymen_bm52x_state *state)
 {
@@ -726,6 +727,17 @@ static int bm52x_rec_next_rsp(struct sr_serial_dev_inst *serial,
 
        return SR_OK;
 }
+#else /* have serial comm */
+static int bm52x_rec_next_rsp(struct sr_serial_dev_inst *serial,
+       enum bm52x_reqtype req, struct brymen_bm52x_state *state)
+{
+       (void)serial;
+       (void)req;
+       (void)state;
+       (void)bm52x_rec_checksum;
+       return SR_ERR_NA;
+}
+#endif /* have serial comm */
 
 /** Make sure a minimum amount of response data is available. */
 static const uint8_t *bm52x_rec_ensure(struct sr_serial_dev_inst *serial,