Convert external/libxml2 to Android.bp

See build/soong/README.md for more information.

Test: m -j checkbuild
Change-Id: If670a1e3c2e9f8315df53a655364d06821d700f5
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..d3f313b
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,98 @@
+//
+// Copyright (C) 2014 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.
+//
+
+//
+// To update:
+//
+
+//  git merge aosp/upstream-master
+//  mma -j
+//  # (Make any necessary Android.bp changes and test the new libxml2.)
+//  git push aosp HEAD:master  # Push directly, avoiding gerrit.
+//  git push aosp HEAD:refs/for/master  # Push to gerrit.
+//
+//  # Now commit any necessary Android.bp changes like normal:
+//  repo start post-sync .
+//  git commit -a
+//
+
+// This comes from the automake-generated Makefile.
+// We deliberately exclude nanoftp.c and nanohttp.c, the trio library, and zlib.
+cc_library {
+    name: "libxml2",
+    host_supported: true,
+    srcs: [
+        "SAX.c",
+        "entities.c",
+        "encoding.c",
+        "error.c",
+        "parserInternals.c",
+        "parser.c",
+        "tree.c",
+        "hash.c",
+        "list.c",
+        "xmlIO.c",
+        "xmlmemory.c",
+        "uri.c",
+        "valid.c",
+        "xlink.c",
+        "debugXML.c",
+        "xpath.c",
+        "xpointer.c",
+        "xinclude.c",
+        "DOCBparser.c",
+        "catalog.c",
+        "globals.c",
+        "threads.c",
+        "c14n.c",
+        "xmlstring.c",
+        "buf.c",
+        "xmlregexp.c",
+        "xmlschemas.c",
+        "xmlschemastypes.c",
+        "xmlunicode.c",
+        "xmlreader.c",
+        "relaxng.c",
+        "dict.c",
+        "SAX2.c",
+        "xmlwriter.c",
+        "legacy.c",
+        "chvalid.c",
+        "pattern.c",
+        "xmlsave.c",
+        "xmlmodule.c",
+        "schematron.c",
+    ],
+    export_include_dirs: ["include"],
+    cflags: [
+        "-DLIBXML_THREAD_ENABLED=1",
+
+        "-Wno-missing-field-initializers",
+        "-Wno-self-assign",
+        "-Wno-sign-compare",
+        "-Wno-tautological-pointer-compare",
+        "-Wno-unused-parameter",
+    ],
+    static: {
+        cflags: ["-fvisibility=hidden"],
+    },
+    target: {
+        host: {
+            host_ldlibs: ["-ldl"],
+        },
+    },
+    shared_libs: ["libicuuc"],
+}