protovm: fix chromium build (#4777)

diff --git a/BUILD b/BUILD
index 7cf73e6..5ba79e0 100644
--- a/BUILD
+++ b/BUILD
@@ -1116,6 +1116,8 @@
         "include/perfetto/ext/base/getopt.h",
         "include/perfetto/ext/base/getopt_compat.h",
         "include/perfetto/ext/base/hash.h",
+        "include/perfetto/ext/base/intrusive_list.h",
+        "include/perfetto/ext/base/intrusive_tree.h",
         "include/perfetto/ext/base/lock_free_task_runner.h",
         "include/perfetto/ext/base/metatrace.h",
         "include/perfetto/ext/base/metatrace_events.h",
@@ -1597,9 +1599,7 @@
         "src/base/file_utils.cc",
         "src/base/getopt_compat.cc",
         "src/base/intrusive_list.cc",
-        "src/base/intrusive_list.h",
         "src/base/intrusive_tree.cc",
-        "src/base/intrusive_tree.h",
         "src/base/lock_free_task_runner.cc",
         "src/base/log_ring_buffer.h",
         "src/base/logging.cc",
diff --git a/include/perfetto/ext/base/BUILD.gn b/include/perfetto/ext/base/BUILD.gn
index df9d2a5..c9c49aa 100644
--- a/include/perfetto/ext/base/BUILD.gn
+++ b/include/perfetto/ext/base/BUILD.gn
@@ -36,6 +36,8 @@
     "getopt.h",
     "getopt_compat.h",
     "hash.h",
+    "intrusive_list.h",
+    "intrusive_tree.h",
     "lock_free_task_runner.h",
     "metatrace.h",
     "metatrace_events.h",
diff --git a/src/base/intrusive_list.h b/include/perfetto/ext/base/intrusive_list.h
similarity index 95%
rename from src/base/intrusive_list.h
rename to include/perfetto/ext/base/intrusive_list.h
index 2942160..7a8859c 100644
--- a/src/base/intrusive_list.h
+++ b/include/perfetto/ext/base/intrusive_list.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef SRC_BASE_INTRUSIVE_LIST_H_
-#define SRC_BASE_INTRUSIVE_LIST_H_
+#ifndef INCLUDE_PERFETTO_EXT_BASE_INTRUSIVE_LIST_H_
+#define INCLUDE_PERFETTO_EXT_BASE_INTRUSIVE_LIST_H_
 
 #include <cstddef>
 #include <cstdint>
@@ -145,4 +145,4 @@
 
 }  // namespace perfetto::base
 
-#endif  // SRC_BASE_INTRUSIVE_LIST_H_
+#endif  // INCLUDE_PERFETTO_EXT_BASE_INTRUSIVE_LIST_H_
diff --git a/src/base/intrusive_tree.h b/include/perfetto/ext/base/intrusive_tree.h
similarity index 97%
rename from src/base/intrusive_tree.h
rename to include/perfetto/ext/base/intrusive_tree.h
index d5d353a..f315f5e 100644
--- a/src/base/intrusive_tree.h
+++ b/include/perfetto/ext/base/intrusive_tree.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef SRC_BASE_INTRUSIVE_TREE_H_
-#define SRC_BASE_INTRUSIVE_TREE_H_
+#ifndef INCLUDE_PERFETTO_EXT_BASE_INTRUSIVE_TREE_H_
+#define INCLUDE_PERFETTO_EXT_BASE_INTRUSIVE_TREE_H_
 
 #include <cstddef>
 #include <cstdint>
@@ -246,4 +246,4 @@
 
 }  // namespace perfetto::base
 
-#endif  // SRC_BASE_INTRUSIVE_TREE_H_
+#endif  // INCLUDE_PERFETTO_EXT_BASE_INTRUSIVE_TREE_H_
diff --git a/src/base/BUILD.gn b/src/base/BUILD.gn
index 3c6672b..437fa13 100644
--- a/src/base/BUILD.gn
+++ b/src/base/BUILD.gn
@@ -41,9 +41,7 @@
     "file_utils.cc",
     "getopt_compat.cc",
     "intrusive_list.cc",
-    "intrusive_list.h",
     "intrusive_tree.cc",
-    "intrusive_tree.h",
     "log_ring_buffer.h",
     "logging.cc",
     "metatrace.cc",
diff --git a/src/base/intrusive_list.cc b/src/base/intrusive_list.cc
index 012e4b9..91a7a76 100644
--- a/src/base/intrusive_list.cc
+++ b/src/base/intrusive_list.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "src/base/intrusive_list.h"
+#include "perfetto/ext/base/intrusive_list.h"
 
 #include "perfetto/base/logging.h"
 
diff --git a/src/base/intrusive_list_unittest.cc b/src/base/intrusive_list_unittest.cc
index e74c08d..59e3b49 100644
--- a/src/base/intrusive_list_unittest.cc
+++ b/src/base/intrusive_list_unittest.cc
@@ -14,8 +14,7 @@
  * limitations under the License.
  */
 
-#include "src/base/intrusive_list.h"
-
+#include "perfetto/ext/base/intrusive_list.h"
 #include "test/gtest_and_gmock.h"
 
 namespace perfetto {
diff --git a/src/base/intrusive_tree.cc b/src/base/intrusive_tree.cc
index dfca3ee..228ed46 100644
--- a/src/base/intrusive_tree.cc
+++ b/src/base/intrusive_tree.cc
@@ -40,7 +40,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include "src/base/intrusive_tree.h"
+#include "perfetto/ext/base/intrusive_tree.h"
 
 namespace perfetto::base::internal {
 
diff --git a/src/base/intrusive_tree_unittest.cc b/src/base/intrusive_tree_unittest.cc
index 163b224..d55e0ef 100644
--- a/src/base/intrusive_tree_unittest.cc
+++ b/src/base/intrusive_tree_unittest.cc
@@ -14,12 +14,11 @@
  * limitations under the License.
  */
 
-#include "src/base/intrusive_tree.h"
-
 #include <random>
 #include <set>
 
 #include "perfetto/ext/base/fnv_hash.h"
+#include "perfetto/ext/base/intrusive_tree.h"
 #include "test/gtest_and_gmock.h"
 
 namespace perfetto {
diff --git a/src/protovm/node.h b/src/protovm/node.h
index 94abce2..5dc78a6 100644
--- a/src/protovm/node.h
+++ b/src/protovm/node.h
@@ -20,8 +20,7 @@
 #include <type_traits>
 #include <variant>
 
-#include "src/base/intrusive_tree.h"
-
+#include "perfetto/ext/base/intrusive_tree.h"
 #include "src/protovm/owned_ptr.h"
 #include "src/protovm/scalar.h"
 
diff --git a/src/protovm/slab_allocator.h b/src/protovm/slab_allocator.h
index 0310963..98532d9 100644
--- a/src/protovm/slab_allocator.h
+++ b/src/protovm/slab_allocator.h
@@ -22,8 +22,8 @@
 
 #include "perfetto/base/logging.h"
 #include "perfetto/ext/base/flat_hash_map.h"
+#include "perfetto/ext/base/intrusive_list.h"
 #include "perfetto/ext/base/paged_memory.h"
-#include "src/base/intrusive_list.h"
 
 // An efficient allocator for elements with fixed size and alignment
 // requirements.