diff --git a/package/Config.in b/package/Config.in
index cee013e096..afa145eefe 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -878,6 +878,7 @@ menu "JSON/XML"
 	source "package/mxml/Config.in"
 	source "package/rapidjson/Config.in"
 	source "package/tinyxml/Config.in"
+	source "package/tinyxml2/Config.in"
 	source "package/xerces/Config.in"
 	source "package/yajl/Config.in"
 	source "package/yaml-cpp/Config.in"
diff --git a/package/tinyxml2/Config.in b/package/tinyxml2/Config.in
new file mode 100644
index 0000000000..25bc5941aa
--- /dev/null
+++ b/package/tinyxml2/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_TINYXML2
+	bool "tinyxml2"
+	depends on BR2_INSTALL_LIBSTDCPP
+	help
+	  TinyXML-2 is a simple, small, efficient, C++ XML parser that can be
+	  easily integrating into other programs.
+
+	  http://www.grinninglizard.com/tinyxml2/index.html
+
+comment "tinyxml2 needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/tinyxml2/tinyxml2.mk b/package/tinyxml2/tinyxml2.mk
new file mode 100644
index 0000000000..370049b916
--- /dev/null
+++ b/package/tinyxml2/tinyxml2.mk
@@ -0,0 +1,13 @@
+################################################################################
+#
+# tinyxml2
+#
+################################################################################
+
+TINYXML2_VERSION = 2.2.0
+TINYXML2_SITE = $(call github,leethomason,tinyxml2,$(TINYXML2_VERSION))
+TINYXML2_LICENSE = zlib
+TINYXML2_LICENSE_FILES = readme.md
+TINYXML2_INSTALL_STAGING = YES
+
+$(eval $(cmake-package))