fuzz: Add fuzzing for core and i2c

Add fuzzing infrastructure and a fuzz target handling mctp-i2c packets.
After running for a few days with honggfuzz this achieves close to
complete line coverage of core.c

Change-Id: I6cd7361e6f600831a319f06fb7c7c0d2186fd7de
Signed-off-by: Matt Johnston <matt@codeconstruct.com.au>
diff --git a/tests/fuzz/meson.build b/tests/fuzz/meson.build
new file mode 100644
index 0000000..b4a51c6
--- /dev/null
+++ b/tests/fuzz/meson.build
@@ -0,0 +1,10 @@
+if get_option('bindings').contains('i2c')
+    executable(
+        'i2c-fuzz',
+        'i2c-fuzz.c',
+        # for __AFL_LOOP
+        cpp_args: ['-Wno-gnu-statement-expression-from-macro-expansion'],
+        include_directories: test_include_dirs,
+        dependencies: [libmctp_dep],
+        )
+endif