Build script for the expat XML parser (#526)

See https://github.com/flutter/flutter/issues/91384
diff --git a/build/secondary/third_party/expat/BUILD.gn b/build/secondary/third_party/expat/BUILD.gn
new file mode 100644
index 0000000..b07539b
--- /dev/null
+++ b/build/secondary/third_party/expat/BUILD.gn
@@ -0,0 +1,26 @@
+# Copyright 2013 The Flutter Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+config("expat_config") {
+  include_dirs = [
+    "expat/lib",
+    "//build/secondary/third_party/expat/expat_config",
+  ]
+
+  defines = [
+    "XML_STATIC",
+    "XML_DEV_URANDOM",
+  ]
+}
+
+static_library("expat") {
+  sources = [
+    "expat/lib/expat.h",
+    "expat/lib/xmlparse.c",
+    "expat/lib/xmlrole.c",
+    "expat/lib/xmltok.c",
+  ]
+
+  public_configs = [ ":expat_config" ]
+}
diff --git a/build/secondary/third_party/expat/expat_config/expat_config.h b/build/secondary/third_party/expat/expat_config/expat_config.h
new file mode 100644
index 0000000..d02d0f6
--- /dev/null
+++ b/build/secondary/third_party/expat/expat_config/expat_config.h
@@ -0,0 +1,14 @@
+// Copyright 2013 The Flutter Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#define BYTEORDER 1234
+#define HAVE_INTTYPES_H 1
+#define HAVE_MEMORY_H 1
+#define HAVE_STDINT_H 1
+#define HAVE_STDLIB_H 1
+#define HAVE_STRING_H 1
+#define STDC_HEADERS 1
+#define XML_CONTEXT_BYTES 1024
+#define XML_DTD 1
+#define XML_NS 1