Add package config for libxml2

Change-Id: I692080701919b21197308d9f5c1580c70014618a
diff --git a/BUILD.gn b/BUILD.gn
index 0d2e65e..4a02287 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -26,6 +26,8 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+import("//packages/package.gni")
+
 # This is the configuration needed to use libxml2.
 config("libxml2_config") {
   include_dirs = [ "include" ]
@@ -39,13 +41,13 @@
 config("libxml2_private_config") {
   visibility = [ ":*" ]
   cflags = [
-      "-Wno-empty-body",
-      "-Wno-incompatible-pointer-types",
-      "-Wno-missing-field-initializers",
-      "-Wno-self-assign",
-      "-Wno-sign-compare",
-      "-Wno-tautological-pointer-compare",
-      "-Wno-unused-function",
+    "-Wno-empty-body",
+    "-Wno-incompatible-pointer-types",
+    "-Wno-missing-field-initializers",
+    "-Wno-self-assign",
+    "-Wno-sign-compare",
+    "-Wno-tautological-pointer-compare",
+    "-Wno-unused-function",
   ]
   defines = [
     "HAVE_CONFIG_H",
@@ -74,6 +76,54 @@
     "error.c",
     "globals.c",
     "hash.c",
+    "include/libxml/DOCBparser.h",
+    "include/libxml/HTMLparser.h",
+    "include/libxml/HTMLtree.h",
+    "include/libxml/Makefile.am",
+    "include/libxml/SAX.h",
+    "include/libxml/SAX2.h",
+    "include/libxml/c14n.h",
+    "include/libxml/catalog.h",
+    "include/libxml/chvalid.h",
+    "include/libxml/debugXML.h",
+    "include/libxml/dict.h",
+    "include/libxml/encoding.h",
+    "include/libxml/entities.h",
+    "include/libxml/globals.h",
+    "include/libxml/hash.h",
+    "include/libxml/list.h",
+    "include/libxml/nanoftp.h",
+    "include/libxml/nanohttp.h",
+    "include/libxml/parser.h",
+    "include/libxml/parserInternals.h",
+    "include/libxml/pattern.h",
+    "include/libxml/relaxng.h",
+    "include/libxml/schemasInternals.h",
+    "include/libxml/schematron.h",
+    "include/libxml/threads.h",
+    "include/libxml/tree.h",
+    "include/libxml/uri.h",
+    "include/libxml/valid.h",
+    "include/libxml/xinclude.h",
+    "include/libxml/xlink.h",
+    "include/libxml/xmlIO.h",
+    "include/libxml/xmlautomata.h",
+    "include/libxml/xmlerror.h",
+    "include/libxml/xmlexports.h",
+    "include/libxml/xmlmemory.h",
+    "include/libxml/xmlmodule.h",
+    "include/libxml/xmlreader.h",
+    "include/libxml/xmlregexp.h",
+    "include/libxml/xmlsave.h",
+    "include/libxml/xmlschemas.h",
+    "include/libxml/xmlschemastypes.h",
+    "include/libxml/xmlstring.h",
+    "include/libxml/xmlunicode.h",
+    "include/libxml/xmlversion.h",
+    "include/libxml/xmlwriter.h",
+    "include/libxml/xpath.h",
+    "include/libxml/xpathInternals.h",
+    "include/libxml/xpointer.h",
     "legacy.c",
     "list.c",
     "nanoftp.c",
@@ -103,62 +153,26 @@
     "xpath.c",
     "xpointer.c",
     "xzlib.c",
-    "include/libxml/c14n.h",
-    "include/libxml/dict.h",
-    "include/libxml/globals.h",
-    "include/libxml/list.h",
-    "include/libxml/parser.h",
-    "include/libxml/SAX2.h",
-    "include/libxml/threads.h",
-    "include/libxml/xinclude.h",
-    "include/libxml/xmlexports.h",
-    "include/libxml/xmlreader.h",
-    "include/libxml/xmlschemastypes.h",
-    "include/libxml/xpathInternals.h",
-    "include/libxml/catalog.h",
-    "include/libxml/DOCBparser.h",
-    "include/libxml/hash.h",
-    "include/libxml/Makefile.am",
-    "include/libxml/parserInternals.h",
-    "include/libxml/SAX.h",
-    "include/libxml/tree.h",
-    "include/libxml/xlink.h",
-    "include/libxml/xmlIO.h",
-    "include/libxml/xmlregexp.h",
-    "include/libxml/xmlstring.h",
-    "include/libxml/xpointer.h",
-    "include/libxml/chvalid.h",
-    "include/libxml/encoding.h",
-    "include/libxml/HTMLparser.h",
-    "include/libxml/nanoftp.h",
-    "include/libxml/pattern.h",
-    "include/libxml/schemasInternals.h",
-    "include/libxml/uri.h",
-    "include/libxml/xmlautomata.h",
-    "include/libxml/xmlmemory.h",
-    "include/libxml/xmlsave.h",
-    "include/libxml/xmlunicode.h",
-    "include/libxml/xmlwriter.h",
-    "include/libxml/debugXML.h",
-    "include/libxml/entities.h",
-    "include/libxml/HTMLtree.h",
-    "include/libxml/nanohttp.h",
-    "include/libxml/relaxng.h",
-    "include/libxml/schematron.h",
-    "include/libxml/valid.h",
-    "include/libxml/xmlerror.h",
-    "include/libxml/xmlmodule.h",
-    "include/libxml/xmlschemas.h",
-    "include/libxml/xmlversion.h",
-    "include/libxml/xpath.h",
   ]
 
   public_configs = [ ":libxml2_config" ]
   configs -= [ "//build/config:symbol_visibility_hidden" ]
   configs += [ ":libxml2_private_config" ]
 
-
   deps = [
     "//third_party/zlib",
   ]
 }
+
+
+package("package") {
+  package_name = "libxml2"
+
+  deps = [
+    ":libxml2",
+  ]
+
+  libraries = [ {
+        name = "libxml2.so"
+      } ]
+}