Roll centipede/fuzztest.

This is just rolling to the most recent version, a pre-requisite to
absorbing future changes which might broaden centipede platform
coverage.

Cq-Include-Trybots: luci.chromium.try:linux-centipede-asan-rel,win-libfuzzer-asan-rel,linux-libfuzzer-asan-rel
Bug: 358290774, 331123821, 331123820
Change-Id: I1159c428a12e4a39ac76b36e46db213509f6d9b7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5771423
Reviewed-by: Titouan Rigoudy <titouan@chromium.org>
Reviewed-by: Paul Semel <paulsemel@chromium.org>
Commit-Queue: Adrian Taylor <adetaylor@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1350168}
NOKEYCHECK=True
GitOrigin-RevId: 266890fe6c7a38b5a37f8fc8c99742507c61631d
diff --git a/BUILD.gn b/BUILD.gn
index 4c5dee5..50a58fc 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -33,6 +33,8 @@
     "-Wno-unused-function",
     "-Wno-inconsistent-missing-override",
     "-Wno-unused-lambda-capture",
+    "-Wno-c++98-compat-extra-semi",
+    "-Wno-deprecated-declarations",
   ]
 
   # int_utils.h depends on an SSE 4.2 intrinsic.
@@ -62,21 +64,16 @@
       "src/centipede/byte_array_mutator.h",
       "src/centipede/command.cc",
       "src/centipede/control_flow.cc",
-      "src/centipede/defs.h",
       "src/centipede/early_exit.cc",
       "src/centipede/early_exit.h",
       "src/centipede/execution_metadata.cc",
       "src/centipede/execution_metadata.h",
       "src/centipede/feature.cc",
       "src/centipede/feature.h",
-      "src/centipede/hash.cc",
       "src/centipede/knobs.cc",
       "src/centipede/knobs.h",
-      "src/centipede/logging.h",
       "src/centipede/pc_info.cc",
       "src/centipede/pc_info.h",
-      "src/centipede/remote_file.cc",
-      "src/centipede/remote_file.h",
       "src/centipede/reverse_pc_table.h",
       "src/centipede/runner_cmp_trace.h",
       "src/centipede/runner_request.cc",
@@ -89,6 +86,7 @@
       "src/centipede/util.cc",
     ]
     deps = [ "//third_party/abseil-cpp:absl_full" ]
+    public_deps = [ ":common" ]
     configs += [ ":fuzztest_internal_config" ]
     configs -= fuzztest_remove_configs
     configs += fuzztest_add_configs
@@ -157,7 +155,6 @@
     ]
     sources = [
       "src/centipede/analyze_corpora.cc",
-      "src/centipede/blob_file.cc",
       "src/centipede/call_graph.cc",
       "src/centipede/centipede.cc",
       "src/centipede/centipede_callbacks.cc",
@@ -182,6 +179,8 @@
       "src/centipede/resource_pool.cc",
       "src/centipede/rusage_profiler.cc",
       "src/centipede/rusage_stats.cc",
+      "src/centipede/seed_corpus_maker_lib.cc",
+      "src/centipede/seed_corpus_maker_lib.h",
       "src/centipede/stats.cc",
       "src/centipede/workdir.cc",
       "src/centipede/workdir.h",
@@ -303,6 +302,7 @@
   }
 
   public_deps = [
+    ":common",
     "//third_party/abseil-cpp:absl",
 
     # For RE2 mutators. It's questionable whether we want to pull this library
@@ -319,6 +319,28 @@
   configs += fuzztest_add_configs
 }
 
+source_set("common") {
+  sources = [
+    "src/common/blob_file.cc",
+    "src/common/blob_file.h",
+    "src/common/defs.h",
+    "src/common/hash.cc",
+    "src/common/hash.h",
+    "src/common/logging.h",
+    "src/common/remote_file.cc",
+    "src/common/remote_file.h",
+    "src/common/remote_file_oss.cc",
+  ]
+
+  deps = [
+    "//third_party/abseil-cpp:absl_full",
+    "//third_party/boringssl",
+  ]
+  public_configs = [ ":fuzztest_internal_config" ]
+  configs -= fuzztest_remove_configs
+  configs += fuzztest_add_configs
+}
+
 # Fuzztest support. This allows regular test executables to contain
 # a FUZZ_TEST. Such tests/executables should depend directly on this target;
 # at this time there's no need to use a special gn template for fuzz tests.