diff --git a/Android.bp b/Android.bp
index 9650218..73487c9 100644
--- a/Android.bp
+++ b/Android.bp
@@ -2323,10 +2323,10 @@
         ":perfetto_src_shared_lib_test_utils",
         ":perfetto_src_trace_processor_containers_containers",
         ":perfetto_src_trace_processor_db_column_column",
-        ":perfetto_src_trace_processor_db_column_minimal",
+        ":perfetto_src_trace_processor_db_column_make_chain",
         ":perfetto_src_trace_processor_db_db",
         ":perfetto_src_trace_processor_db_minimal",
-        ":perfetto_src_trace_processor_export_json",
+        ":perfetto_src_trace_processor_export_json_sources",
         ":perfetto_src_trace_processor_importers_android_bugreport_android_bugreport",
         ":perfetto_src_trace_processor_importers_common_common",
         ":perfetto_src_trace_processor_importers_common_parser_types",
@@ -10933,10 +10933,15 @@
 filegroup {
     name: "perfetto_src_trace_processor_db_column_column",
     srcs: [
+        "src/trace_processor/db/column/arrangement_overlay.cc",
+        "src/trace_processor/db/column/data_layer.cc",
         "src/trace_processor/db/column/dense_null_overlay.cc",
+        "src/trace_processor/db/column/dummy_storage.cc",
         "src/trace_processor/db/column/id_storage.cc",
         "src/trace_processor/db/column/null_overlay.cc",
         "src/trace_processor/db/column/numeric_storage.cc",
+        "src/trace_processor/db/column/range_overlay.cc",
+        "src/trace_processor/db/column/selector_overlay.cc",
         "src/trace_processor/db/column/set_id_storage.cc",
         "src/trace_processor/db/column/string_storage.cc",
         "src/trace_processor/db/column/utils.cc",
@@ -10951,15 +10956,11 @@
     ],
 }
 
-// GN: //src/trace_processor/db/column:minimal
+// GN: //src/trace_processor/db/column:make_chain
 filegroup {
-    name: "perfetto_src_trace_processor_db_column_minimal",
+    name: "perfetto_src_trace_processor_db_column_make_chain",
     srcs: [
-        "src/trace_processor/db/column/arrangement_overlay.cc",
-        "src/trace_processor/db/column/data_layer.cc",
-        "src/trace_processor/db/column/dummy_storage.cc",
-        "src/trace_processor/db/column/range_overlay.cc",
-        "src/trace_processor/db/column/selector_overlay.cc",
+        "src/trace_processor/db/column/make_chain.cc",
     ],
 }
 
@@ -11031,9 +11032,9 @@
     ],
 }
 
-// GN: //src/trace_processor:export_json
+// GN: //src/trace_processor:export_json_sources
 filegroup {
-    name: "perfetto_src_trace_processor_export_json",
+    name: "perfetto_src_trace_processor_export_json_sources",
     srcs: [
         "src/trace_processor/export_json.cc",
     ],
@@ -13810,13 +13811,13 @@
         ":perfetto_src_trace_processor_containers_unittests",
         ":perfetto_src_trace_processor_db_column_column",
         ":perfetto_src_trace_processor_db_column_fake_storage",
-        ":perfetto_src_trace_processor_db_column_minimal",
+        ":perfetto_src_trace_processor_db_column_make_chain",
         ":perfetto_src_trace_processor_db_column_unittests",
         ":perfetto_src_trace_processor_db_compare",
         ":perfetto_src_trace_processor_db_db",
         ":perfetto_src_trace_processor_db_minimal",
         ":perfetto_src_trace_processor_db_unittests",
-        ":perfetto_src_trace_processor_export_json",
+        ":perfetto_src_trace_processor_export_json_sources",
         ":perfetto_src_trace_processor_importers_android_bugreport_android_bugreport",
         ":perfetto_src_trace_processor_importers_android_bugreport_unittests",
         ":perfetto_src_trace_processor_importers_common_common",
@@ -14531,10 +14532,10 @@
         ":perfetto_src_protozero_protozero",
         ":perfetto_src_trace_processor_containers_containers",
         ":perfetto_src_trace_processor_db_column_column",
-        ":perfetto_src_trace_processor_db_column_minimal",
+        ":perfetto_src_trace_processor_db_column_make_chain",
         ":perfetto_src_trace_processor_db_db",
         ":perfetto_src_trace_processor_db_minimal",
-        ":perfetto_src_trace_processor_export_json",
+        ":perfetto_src_trace_processor_export_json_sources",
         ":perfetto_src_trace_processor_importers_android_bugreport_android_bugreport",
         ":perfetto_src_trace_processor_importers_common_common",
         ":perfetto_src_trace_processor_importers_common_parser_types",
@@ -14768,10 +14769,10 @@
         ":perfetto_src_protozero_protozero",
         ":perfetto_src_trace_processor_containers_containers",
         ":perfetto_src_trace_processor_db_column_column",
-        ":perfetto_src_trace_processor_db_column_minimal",
+        ":perfetto_src_trace_processor_db_column_make_chain",
         ":perfetto_src_trace_processor_db_db",
         ":perfetto_src_trace_processor_db_minimal",
-        ":perfetto_src_trace_processor_export_json",
+        ":perfetto_src_trace_processor_export_json_sources",
         ":perfetto_src_trace_processor_importers_android_bugreport_android_bugreport",
         ":perfetto_src_trace_processor_importers_common_common",
         ":perfetto_src_trace_processor_importers_common_parser_types",
diff --git a/BUILD b/BUILD
index c3bddeb..a60811a 100644
--- a/BUILD
+++ b/BUILD
@@ -217,10 +217,10 @@
         ":src_kernel_utils_syscall_table",
         ":src_protozero_proto_ring_buffer",
         ":src_trace_processor_db_column_column",
-        ":src_trace_processor_db_column_minimal",
+        ":src_trace_processor_db_column_make_chain",
         ":src_trace_processor_db_db",
         ":src_trace_processor_db_minimal",
-        ":src_trace_processor_export_json",
+        ":src_trace_processor_export_json_sources",
         ":src_trace_processor_importers_android_bugreport_android_bugreport",
         ":src_trace_processor_importers_common_common",
         ":src_trace_processor_importers_common_parser_types",
@@ -1375,38 +1375,39 @@
 perfetto_filegroup(
     name = "src_trace_processor_db_column_column",
     srcs = [
+        "src/trace_processor/db/column/arrangement_overlay.cc",
+        "src/trace_processor/db/column/arrangement_overlay.h",
+        "src/trace_processor/db/column/data_layer.cc",
+        "src/trace_processor/db/column/data_layer.h",
         "src/trace_processor/db/column/dense_null_overlay.cc",
         "src/trace_processor/db/column/dense_null_overlay.h",
+        "src/trace_processor/db/column/dummy_storage.cc",
+        "src/trace_processor/db/column/dummy_storage.h",
         "src/trace_processor/db/column/id_storage.cc",
         "src/trace_processor/db/column/id_storage.h",
         "src/trace_processor/db/column/null_overlay.cc",
         "src/trace_processor/db/column/null_overlay.h",
         "src/trace_processor/db/column/numeric_storage.cc",
         "src/trace_processor/db/column/numeric_storage.h",
+        "src/trace_processor/db/column/range_overlay.cc",
+        "src/trace_processor/db/column/range_overlay.h",
+        "src/trace_processor/db/column/selector_overlay.cc",
+        "src/trace_processor/db/column/selector_overlay.h",
         "src/trace_processor/db/column/set_id_storage.cc",
         "src/trace_processor/db/column/set_id_storage.h",
         "src/trace_processor/db/column/string_storage.cc",
         "src/trace_processor/db/column/string_storage.h",
+        "src/trace_processor/db/column/types.h",
         "src/trace_processor/db/column/utils.cc",
         "src/trace_processor/db/column/utils.h",
     ],
 )
 
-# GN target: //src/trace_processor/db/column:minimal
+# GN target: //src/trace_processor/db/column:make_chain
 perfetto_filegroup(
-    name = "src_trace_processor_db_column_minimal",
+    name = "src_trace_processor_db_column_make_chain",
     srcs = [
-        "src/trace_processor/db/column/arrangement_overlay.cc",
-        "src/trace_processor/db/column/arrangement_overlay.h",
-        "src/trace_processor/db/column/data_layer.cc",
-        "src/trace_processor/db/column/data_layer.h",
-        "src/trace_processor/db/column/dummy_storage.cc",
-        "src/trace_processor/db/column/dummy_storage.h",
-        "src/trace_processor/db/column/range_overlay.cc",
-        "src/trace_processor/db/column/range_overlay.h",
-        "src/trace_processor/db/column/selector_overlay.cc",
-        "src/trace_processor/db/column/selector_overlay.h",
-        "src/trace_processor/db/column/types.h",
+        "src/trace_processor/db/column/make_chain.cc",
     ],
 )
 
@@ -2838,9 +2839,9 @@
     linkstatic = True,
 )
 
-# GN target: //src/trace_processor:export_json
+# GN target: //src/trace_processor:export_json_sources
 perfetto_filegroup(
-    name = "src_trace_processor_export_json",
+    name = "src_trace_processor_export_json_sources",
     srcs = [
         "src/trace_processor/export_json.cc",
         "src/trace_processor/export_json.h",
@@ -5552,10 +5553,10 @@
     srcs = [
         ":src_kernel_utils_syscall_table",
         ":src_trace_processor_db_column_column",
-        ":src_trace_processor_db_column_minimal",
+        ":src_trace_processor_db_column_make_chain",
         ":src_trace_processor_db_db",
         ":src_trace_processor_db_minimal",
-        ":src_trace_processor_export_json",
+        ":src_trace_processor_export_json_sources",
         ":src_trace_processor_importers_android_bugreport_android_bugreport",
         ":src_trace_processor_importers_common_common",
         ":src_trace_processor_importers_common_parser_types",
@@ -5720,10 +5721,10 @@
         ":src_profiling_symbolizer_symbolizer",
         ":src_protozero_proto_ring_buffer",
         ":src_trace_processor_db_column_column",
-        ":src_trace_processor_db_column_minimal",
+        ":src_trace_processor_db_column_make_chain",
         ":src_trace_processor_db_db",
         ":src_trace_processor_db_minimal",
-        ":src_trace_processor_export_json",
+        ":src_trace_processor_export_json_sources",
         ":src_trace_processor_importers_android_bugreport_android_bugreport",
         ":src_trace_processor_importers_common_common",
         ":src_trace_processor_importers_common_parser_types",
@@ -5946,10 +5947,10 @@
         ":src_profiling_symbolizer_symbolizer",
         ":src_protozero_proto_ring_buffer",
         ":src_trace_processor_db_column_column",
-        ":src_trace_processor_db_column_minimal",
+        ":src_trace_processor_db_column_make_chain",
         ":src_trace_processor_db_db",
         ":src_trace_processor_db_minimal",
-        ":src_trace_processor_export_json",
+        ":src_trace_processor_export_json_sources",
         ":src_trace_processor_importers_android_bugreport_android_bugreport",
         ":src_trace_processor_importers_common_common",
         ":src_trace_processor_importers_common_parser_types",
diff --git a/gn/standalone/BUILD.gn b/gn/standalone/BUILD.gn
index 1fb8196..c397d5c 100644
--- a/gn/standalone/BUILD.gn
+++ b/gn/standalone/BUILD.gn
@@ -65,7 +65,10 @@
   # Disable variadic macro warning as we make extensive use of them in trace
   # processor and client API.
   if (is_clang) {
-    if (!is_fuzzer) {
+    # Only enable -Weverything on hermetic clang as system clang might be quite
+    # out of date.
+    if (is_hermetic_clang && current_toolchain == host_toolchain &&
+        !is_fuzzer) {
       # Disable Weverything on fuzzers to avoid breakages when new versions of
       # clang are rolled into OSS-fuzz.
       cflags += [ "-Weverything" ]
diff --git a/src/trace_processor/BUILD.gn b/src/trace_processor/BUILD.gn
index c20ba5e..dab8c3f 100644
--- a/src/trace_processor/BUILD.gn
+++ b/src/trace_processor/BUILD.gn
@@ -43,6 +43,18 @@
   }
 }
 
+# Depended upon by Chrome to do proto -> JSON conversion of traces.
+# Must be small binary size as all code here needs to be shipped in
+# Chrome.
+static_library("export_json") {
+  deps = [
+    ":export_json_sources",
+    "../../gn:default_deps",
+    "db/column:make_chain_minimal",
+  ]
+  public_deps = [ "../../include/perfetto/ext/trace_processor:export_json" ]
+}
+
 source_set("metatrace") {
   sources = [
     "tp_metatrace.cc",
@@ -117,7 +129,7 @@
   public_deps = [ "../../include/perfetto/trace_processor:storage" ]
 }
 
-source_set("export_json") {
+source_set("export_json_sources") {
   sources = [
     "export_json.cc",
     "export_json.h",
@@ -125,12 +137,12 @@
   deps = [
     ":storage_minimal",
     "../../gn:default_deps",
+    "../../include/perfetto/ext/trace_processor:export_json",
     "../base",
     "importers/json:minimal",
     "storage",
     "types",
   ]
-  public_deps = [ "../../include/perfetto/ext/trace_processor:export_json" ]
 }
 
 if (enable_perfetto_trace_processor_sqlite) {
@@ -156,6 +168,7 @@
       "../base",
       "../protozero",
       "db",
+      "db/column:make_chain",
       "importers/android_bugreport",
       "importers/common",
       "importers/etw:full",
@@ -249,8 +262,9 @@
     # windows.
     sources += [ "export_json_unittest.cc" ]
     deps += [
-      ":export_json",
+      ":export_json_sources",
       "../../gn:jsoncpp",
+      "../../include/perfetto/ext/trace_processor:export_json",
       "containers",
       "importers/common",
       "importers/proto:minimal",
@@ -350,5 +364,6 @@
     ":storage_minimal",
     "../../gn:default_deps",
     "../base",
+    "db/column:make_chain_minimal",
   ]
 }
diff --git a/src/trace_processor/db/BUILD.gn b/src/trace_processor/db/BUILD.gn
index 38664b3..cbd4304 100644
--- a/src/trace_processor/db/BUILD.gn
+++ b/src/trace_processor/db/BUILD.gn
@@ -39,7 +39,7 @@
     "../util:glob",
     "../util:regex",
     "../util:util",
-    "column:minimal",
+    "column",
   ]
 }
 
diff --git a/src/trace_processor/db/column/BUILD.gn b/src/trace_processor/db/column/BUILD.gn
index bdca5e9..786fb91 100644
--- a/src/trace_processor/db/column/BUILD.gn
+++ b/src/trace_processor/db/column/BUILD.gn
@@ -14,44 +14,31 @@
 
 import("../../../../gn/test.gni")
 
-source_set("minimal") {
+source_set("column") {
   sources = [
     "arrangement_overlay.cc",
     "arrangement_overlay.h",
     "data_layer.cc",
     "data_layer.h",
-    "dummy_storage.cc",
-    "dummy_storage.h",
-    "range_overlay.cc",
-    "range_overlay.h",
-    "selector_overlay.cc",
-    "selector_overlay.h",
-    "types.h",
-  ]
-  deps = [
-    "../..:metatrace",
-    "../../../../gn:default_deps",
-    "../../../../include/perfetto/trace_processor",
-    "../../../../include/perfetto/trace_processor:basic_types",
-    "../../../../protos/perfetto/trace_processor:zero",
-    "../../containers",
-  ]
-}
-
-source_set("column") {
-  sources = [
     "dense_null_overlay.cc",
     "dense_null_overlay.h",
+    "dummy_storage.cc",
+    "dummy_storage.h",
     "id_storage.cc",
     "id_storage.h",
     "null_overlay.cc",
     "null_overlay.h",
     "numeric_storage.cc",
     "numeric_storage.h",
+    "range_overlay.cc",
+    "range_overlay.h",
+    "selector_overlay.cc",
+    "selector_overlay.h",
     "set_id_storage.cc",
     "set_id_storage.h",
     "string_storage.cc",
     "string_storage.h",
+    "types.h",
     "utils.cc",
     "utils.h",
   ]
@@ -66,7 +53,22 @@
     "../../util:glob",
     "../../util:regex",
   ]
-  public_deps = [ ":minimal" ]
+}
+
+source_set("make_chain_minimal") {
+  sources = [ "make_chain_minimal.cc" ]
+  deps = [
+    ":column",
+    "../../../../gn:default_deps",
+  ]
+}
+
+source_set("make_chain") {
+  sources = [ "make_chain.cc" ]
+  deps = [
+    ":column",
+    "../../../../gn:default_deps",
+  ]
 }
 
 perfetto_unittest_source_set("fake_storage") {
diff --git a/src/trace_processor/db/column/arrangement_overlay.cc b/src/trace_processor/db/column/arrangement_overlay.cc
index 4ad4184..7325689 100644
--- a/src/trace_processor/db/column/arrangement_overlay.cc
+++ b/src/trace_processor/db/column/arrangement_overlay.cc
@@ -38,14 +38,6 @@
                                        Indices::State arrangement_state)
     : arrangement_(arrangement), arrangement_state_(arrangement_state) {}
 
-std::unique_ptr<DataLayerChain> ArrangementOverlay::MakeChain(
-    std::unique_ptr<DataLayerChain> inner,
-    ChainCreationArgs args) {
-  return std::make_unique<ChainImpl>(std::move(inner), arrangement_,
-                                     arrangement_state_,
-                                     args.does_layer_order_chain_contents);
-}
-
 ArrangementOverlay::ChainImpl::ChainImpl(
     std::unique_ptr<DataLayerChain> inner,
     const std::vector<uint32_t>* arrangement,
diff --git a/src/trace_processor/db/column/dense_null_overlay.cc b/src/trace_processor/db/column/dense_null_overlay.cc
index fb51bb5..fcd22bb 100644
--- a/src/trace_processor/db/column/dense_null_overlay.cc
+++ b/src/trace_processor/db/column/dense_null_overlay.cc
@@ -37,12 +37,6 @@
 DenseNullOverlay::DenseNullOverlay(const BitVector* non_null)
     : non_null_(non_null) {}
 
-std::unique_ptr<DataLayerChain> DenseNullOverlay::MakeChain(
-    std::unique_ptr<DataLayerChain> inner,
-    ChainCreationArgs) {
-  return std::make_unique<ChainImpl>(std::move(inner), non_null_);
-}
-
 DenseNullOverlay::ChainImpl::ChainImpl(std::unique_ptr<DataLayerChain> inner,
                                        const BitVector* non_null)
     : inner_(std::move(inner)), non_null_(non_null) {}
diff --git a/src/trace_processor/db/column/dummy_storage.cc b/src/trace_processor/db/column/dummy_storage.cc
index 519aa61..71a3a5c 100644
--- a/src/trace_processor/db/column/dummy_storage.cc
+++ b/src/trace_processor/db/column/dummy_storage.cc
@@ -26,10 +26,6 @@
 
 namespace perfetto::trace_processor::column {
 
-std::unique_ptr<DataLayerChain> DummyStorage::MakeChain() {
-  return std::make_unique<ChainImpl>();
-}
-
 SingleSearchResult DummyStorage::ChainImpl::SingleSearch(FilterOp,
                                                          SqlValue,
                                                          uint32_t) const {
diff --git a/src/trace_processor/db/column/dummy_storage.h b/src/trace_processor/db/column/dummy_storage.h
index a9bbc5b..b723c2e 100644
--- a/src/trace_processor/db/column/dummy_storage.h
+++ b/src/trace_processor/db/column/dummy_storage.h
@@ -30,9 +30,6 @@
 // on them.
 class DummyStorage final : public DataLayer {
  public:
-  std::unique_ptr<DataLayerChain> MakeChain() override;
-
- private:
   class ChainImpl : public DataLayerChain {
    public:
     ChainImpl() = default;
@@ -64,6 +61,7 @@
 
     std::string DebugString() const override { return "DummyStorage"; }
   };
+  std::unique_ptr<DataLayerChain> MakeChain() override;
 };
 
 }  // namespace perfetto::trace_processor::column
diff --git a/src/trace_processor/db/column/id_storage.cc b/src/trace_processor/db/column/id_storage.cc
index bf8fd41..6fdb800 100644
--- a/src/trace_processor/db/column/id_storage.cc
+++ b/src/trace_processor/db/column/id_storage.cc
@@ -151,10 +151,6 @@
   return SearchValidationResult::kOk;
 }
 
-std::unique_ptr<DataLayerChain> IdStorage::MakeChain() {
-  return std::make_unique<ChainImpl>();
-}
-
 SingleSearchResult IdStorage::ChainImpl::SingleSearch(FilterOp op,
                                                       SqlValue sql_val,
                                                       uint32_t index) const {
diff --git a/src/trace_processor/db/column/make_chain.cc b/src/trace_processor/db/column/make_chain.cc
new file mode 100644
index 0000000..15ee387
--- /dev/null
+++ b/src/trace_processor/db/column/make_chain.cc
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <memory>
+#include <utility>
+
+#include "src/trace_processor/db/column/arrangement_overlay.h"
+#include "src/trace_processor/db/column/data_layer.h"
+#include "src/trace_processor/db/column/dense_null_overlay.h"
+#include "src/trace_processor/db/column/dummy_storage.h"
+#include "src/trace_processor/db/column/id_storage.h"
+#include "src/trace_processor/db/column/null_overlay.h"
+#include "src/trace_processor/db/column/numeric_storage.h"
+#include "src/trace_processor/db/column/range_overlay.h"
+#include "src/trace_processor/db/column/selector_overlay.h"
+#include "src/trace_processor/db/column/set_id_storage.h"
+#include "src/trace_processor/db/column/string_storage.h"
+
+// This file contains the implementation of MakeChain for all the
+// DataLayer implementations. They are all centralised here because
+// there is an alternative set of implementations (see make_chain_minimal.cc)
+// the "minimal" target used by export_json in Chrome.
+
+namespace perfetto::trace_processor::column {
+
+std::unique_ptr<DataLayerChain> ArrangementOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain> inner,
+    ChainCreationArgs args) {
+  return std::make_unique<ChainImpl>(std::move(inner), arrangement_,
+                                     arrangement_state_,
+                                     args.does_layer_order_chain_contents);
+}
+
+std::unique_ptr<DataLayerChain> DenseNullOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain> inner,
+    ChainCreationArgs) {
+  return std::make_unique<ChainImpl>(std::move(inner), non_null_);
+}
+
+std::unique_ptr<DataLayerChain> DummyStorage::MakeChain() {
+  return std::make_unique<ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> IdStorage::MakeChain() {
+  return std::make_unique<ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> NullOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain> inner,
+    ChainCreationArgs) {
+  return std::make_unique<ChainImpl>(std::move(inner), non_null_);
+}
+
+template <typename T>
+std::unique_ptr<DataLayerChain> NumericStorage<T>::MakeChain() {
+  return std::make_unique<ChainImpl>(vector_, storage_type_, is_sorted_);
+}
+template std::unique_ptr<DataLayerChain> NumericStorage<double>::MakeChain();
+template std::unique_ptr<DataLayerChain> NumericStorage<uint32_t>::MakeChain();
+template std::unique_ptr<DataLayerChain> NumericStorage<int32_t>::MakeChain();
+template std::unique_ptr<DataLayerChain> NumericStorage<int64_t>::MakeChain();
+
+std::unique_ptr<DataLayerChain> RangeOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain> inner,
+    ChainCreationArgs) {
+  return std::make_unique<ChainImpl>(std::move(inner), range_);
+}
+
+std::unique_ptr<DataLayerChain> SelectorOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain> inner,
+    ChainCreationArgs) {
+  return std::make_unique<ChainImpl>(std::move(inner), selector_);
+}
+
+std::unique_ptr<DataLayerChain> SetIdStorage::MakeChain() {
+  return std::make_unique<ChainImpl>(values_);
+}
+
+std::unique_ptr<DataLayerChain> StringStorage::MakeChain() {
+  return std::make_unique<ChainImpl>(string_pool_, data_, is_sorted_);
+}
+
+}  // namespace perfetto::trace_processor::column
diff --git a/src/trace_processor/db/column/make_chain_minimal.cc b/src/trace_processor/db/column/make_chain_minimal.cc
new file mode 100644
index 0000000..7a23549
--- /dev/null
+++ b/src/trace_processor/db/column/make_chain_minimal.cc
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2024 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <memory>
+
+#include "src/trace_processor/db/column/arrangement_overlay.h"
+#include "src/trace_processor/db/column/data_layer.h"
+#include "src/trace_processor/db/column/dense_null_overlay.h"
+#include "src/trace_processor/db/column/dummy_storage.h"
+#include "src/trace_processor/db/column/id_storage.h"
+#include "src/trace_processor/db/column/null_overlay.h"
+#include "src/trace_processor/db/column/numeric_storage.h"
+#include "src/trace_processor/db/column/range_overlay.h"
+#include "src/trace_processor/db/column/selector_overlay.h"
+#include "src/trace_processor/db/column/set_id_storage.h"
+#include "src/trace_processor/db/column/string_storage.h"
+
+// This file contains the implementation of MakeChain for all the
+// DataLayer implementations the "minimal" target used by export_json in Chrome.
+// See make_chain.cc for the real implementations for these functions.
+
+namespace perfetto::trace_processor::column {
+
+std::unique_ptr<DataLayerChain> ArrangementOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain>,
+    ChainCreationArgs) {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> DenseNullOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain>,
+    ChainCreationArgs) {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> DummyStorage::MakeChain() {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> IdStorage::MakeChain() {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> NullOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain>,
+    ChainCreationArgs) {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+template <typename T>
+std::unique_ptr<DataLayerChain> NumericStorage<T>::MakeChain() {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+template std::unique_ptr<DataLayerChain> NumericStorage<double>::MakeChain();
+template std::unique_ptr<DataLayerChain> NumericStorage<uint32_t>::MakeChain();
+template std::unique_ptr<DataLayerChain> NumericStorage<int32_t>::MakeChain();
+template std::unique_ptr<DataLayerChain> NumericStorage<int64_t>::MakeChain();
+
+std::unique_ptr<DataLayerChain> RangeOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain>,
+    ChainCreationArgs) {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> SelectorOverlay::MakeChain(
+    std::unique_ptr<DataLayerChain>,
+    ChainCreationArgs) {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> SetIdStorage::MakeChain() {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+std::unique_ptr<DataLayerChain> StringStorage::MakeChain() {
+  return std::make_unique<DummyStorage::ChainImpl>();
+}
+
+}  // namespace perfetto::trace_processor::column
diff --git a/src/trace_processor/db/column/null_overlay.cc b/src/trace_processor/db/column/null_overlay.cc
index 25fddd4..2ddc004 100644
--- a/src/trace_processor/db/column/null_overlay.cc
+++ b/src/trace_processor/db/column/null_overlay.cc
@@ -80,12 +80,6 @@
 
 NullOverlay::NullOverlay(const BitVector* non_null) : non_null_(non_null) {}
 
-std::unique_ptr<DataLayerChain> NullOverlay::MakeChain(
-    std::unique_ptr<DataLayerChain> inner,
-    ChainCreationArgs) {
-  return std::make_unique<ChainImpl>(std::move(inner), non_null_);
-}
-
 SingleSearchResult NullOverlay::ChainImpl::SingleSearch(FilterOp op,
                                                         SqlValue sql_val,
                                                         uint32_t index) const {
diff --git a/src/trace_processor/db/column/numeric_storage.cc b/src/trace_processor/db/column/numeric_storage.cc
index 9c56c85..2c88b38 100644
--- a/src/trace_processor/db/column/numeric_storage.cc
+++ b/src/trace_processor/db/column/numeric_storage.cc
@@ -22,6 +22,7 @@
 #include <cstdint>
 #include <functional>
 #include <limits>
+#include <memory>
 #include <optional>
 #include <string>
 #include <utility>
@@ -700,4 +701,11 @@
   }
 }
 
+// Define explicit instantiation of the necessary templates here to reduce
+// binary size bloat.
+template class NumericStorage<double>;
+template class NumericStorage<uint32_t>;
+template class NumericStorage<int32_t>;
+template class NumericStorage<int64_t>;
+
 }  // namespace perfetto::trace_processor::column
diff --git a/src/trace_processor/db/column/numeric_storage.h b/src/trace_processor/db/column/numeric_storage.h
index e0fa5d1..f6f450a 100644
--- a/src/trace_processor/db/column/numeric_storage.h
+++ b/src/trace_processor/db/column/numeric_storage.h
@@ -93,9 +93,10 @@
                                     bool is_sorted)
       : NumericStorageBase(type, is_sorted), vector_(vec) {}
 
-  std::unique_ptr<DataLayerChain> MakeChain() override {
-    return std::make_unique<ChainImpl>(vector_, storage_type_, is_sorted_);
-  }
+  // The implementation of this function is given by
+  // make_chain.cc/make_chain_minimal.cc depending on whether this is a minimal
+  // or full build of trace processor.
+  std::unique_ptr<DataLayerChain> MakeChain() override;
 
  private:
   class ChainImpl : public NumericStorageBase::ChainImpl {
@@ -155,6 +156,22 @@
   const std::vector<T>* vector_;
 };
 
+// Define external templates to reduce binary size bloat.
+extern template class NumericStorage<double>;
+extern template class NumericStorage<uint32_t>;
+extern template class NumericStorage<int32_t>;
+extern template class NumericStorage<int64_t>;
+
+// Define external templates to allow splitting minimal vs full targets.
+extern template std::unique_ptr<DataLayerChain>
+NumericStorage<double>::MakeChain();
+extern template std::unique_ptr<DataLayerChain>
+NumericStorage<uint32_t>::MakeChain();
+extern template std::unique_ptr<DataLayerChain>
+NumericStorage<int32_t>::MakeChain();
+extern template std::unique_ptr<DataLayerChain>
+NumericStorage<int64_t>::MakeChain();
+
 }  // namespace perfetto::trace_processor::column
 
 #endif  // SRC_TRACE_PROCESSOR_DB_COLUMN_NUMERIC_STORAGE_H_
diff --git a/src/trace_processor/db/column/range_overlay.cc b/src/trace_processor/db/column/range_overlay.cc
index d3f3797..5a92138 100644
--- a/src/trace_processor/db/column/range_overlay.cc
+++ b/src/trace_processor/db/column/range_overlay.cc
@@ -36,12 +36,6 @@
 
 RangeOverlay::RangeOverlay(const Range* range) : range_(range) {}
 
-std::unique_ptr<DataLayerChain> RangeOverlay::MakeChain(
-    std::unique_ptr<DataLayerChain> inner,
-    ChainCreationArgs) {
-  return std::make_unique<ChainImpl>(std::move(inner), range_);
-}
-
 RangeOverlay::ChainImpl::ChainImpl(std::unique_ptr<DataLayerChain> inner,
                                    const Range* range)
     : inner_(std::move(inner)), range_(range) {
diff --git a/src/trace_processor/db/column/selector_overlay.cc b/src/trace_processor/db/column/selector_overlay.cc
index e024d4d..47df692 100644
--- a/src/trace_processor/db/column/selector_overlay.cc
+++ b/src/trace_processor/db/column/selector_overlay.cc
@@ -37,12 +37,6 @@
 SelectorOverlay::SelectorOverlay(const BitVector* selector)
     : selector_(selector) {}
 
-std::unique_ptr<DataLayerChain> SelectorOverlay::MakeChain(
-    std::unique_ptr<DataLayerChain> inner,
-    ChainCreationArgs) {
-  return std::make_unique<ChainImpl>(std::move(inner), selector_);
-}
-
 SelectorOverlay::ChainImpl::ChainImpl(std::unique_ptr<DataLayerChain> inner,
                                       const BitVector* selector)
     : inner_(std::move(inner)), selector_(selector) {}
diff --git a/src/trace_processor/db/column/set_id_storage.cc b/src/trace_processor/db/column/set_id_storage.cc
index 58bbe96..dd22def 100644
--- a/src/trace_processor/db/column/set_id_storage.cc
+++ b/src/trace_processor/db/column/set_id_storage.cc
@@ -69,10 +69,6 @@
 SetIdStorage::SetIdStorage(const std::vector<uint32_t>* values)
     : values_(values) {}
 
-std::unique_ptr<DataLayerChain> SetIdStorage::MakeChain() {
-  return std::make_unique<ChainImpl>(values_);
-}
-
 SetIdStorage::ChainImpl::ChainImpl(const std::vector<uint32_t>* values)
     : values_(values) {}
 
diff --git a/src/trace_processor/db/column/string_storage.cc b/src/trace_processor/db/column/string_storage.cc
index ec004aa..5eaf950 100644
--- a/src/trace_processor/db/column/string_storage.cc
+++ b/src/trace_processor/db/column/string_storage.cc
@@ -202,10 +202,6 @@
                              bool is_sorted)
     : data_(data), string_pool_(string_pool), is_sorted_(is_sorted) {}
 
-std::unique_ptr<DataLayerChain> StringStorage::MakeChain() {
-  return std::make_unique<ChainImpl>(string_pool_, data_, is_sorted_);
-}
-
 StringStorage::ChainImpl::ChainImpl(StringPool* string_pool,
                                     const std::vector<StringPool::Id>* data,
                                     bool is_sorted)
diff --git a/src/trace_processor/perfetto_sql/intrinsics/functions/BUILD.gn b/src/trace_processor/perfetto_sql/intrinsics/functions/BUILD.gn
index e34973c..ea8b3ae 100644
--- a/src/trace_processor/perfetto_sql/intrinsics/functions/BUILD.gn
+++ b/src/trace_processor/perfetto_sql/intrinsics/functions/BUILD.gn
@@ -42,7 +42,7 @@
   ]
   deps = [
     "../../..:demangle",
-    "../../..:export_json",
+    "../../..:export_json_sources",
     "../../..:metatrace",
     "../../../../../gn:default_deps",
     "../../../../../gn:sqlite",
