diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6240eac
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+SOURCES/jansson-2.11.tar.bz2
diff --git a/.jansson.metadata b/.jansson.metadata
new file mode 100644
index 0000000..e81728c
--- /dev/null
+++ b/.jansson.metadata
@@ -0,0 +1 @@
+02eedcc641c5770da423a0ea05e3a104bafd7ef1 SOURCES/jansson-2.11.tar.bz2
diff --git a/SOURCES/jansson-Call-va_end-after-va_copy-in-json_vsprintf.patch b/SOURCES/jansson-Call-va_end-after-va_copy-in-json_vsprintf.patch
new file mode 100644
index 0000000..2a4e16e
--- /dev/null
+++ b/SOURCES/jansson-Call-va_end-after-va_copy-in-json_vsprintf.patch
@@ -0,0 +1,64 @@
+From 66e4ee795d21a30118f8503c966e9f9ae87db315 Mon Sep 17 00:00:00 2001
+From: Xin Long <lucien.xin@gmail.com>
+Date: Wed, 25 Jul 2018 17:39:33 +0800
+Subject: [PATCH] Call va_end after va_copy in json_vsprintf
+
+As said in man doc:
+  "Each  invocation  of va_copy() must be matched by a corresponding
+   invocation of va_end() in the same function."
+
+va_copy may alloc memory in some system, it's necessay to free it by
+va_end.
+
+Fixes: efe6c7b3f2b3 ("Add json_sprintf and json_vsprintf")
+Signed-off-by: Xin Long <lucien.xin@gmail.com>
+---
+ src/value.c | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/src/value.c b/src/value.c
+index 29a978c..861dce8 100644
+--- a/src/value.c
++++ b/src/value.c
+@@ -781,26 +781,33 @@ static json_t *json_string_copy(const json_t *string)
+ }
+ 
+ json_t *json_vsprintf(const char *fmt, va_list ap) {
++    json_t *json = NULL;
+     int length;
+     char *buf;
+     va_list aq;
+     va_copy(aq, ap);
+ 
+     length = vsnprintf(NULL, 0, fmt, ap);
+-    if (length == 0)
+-        return json_string("");
++    if (length == 0) {
++        json = json_string("");
++        goto out;
++    }
+ 
+     buf = jsonp_malloc(length + 1);
+     if (!buf)
+-        return NULL;
++        goto out;
+ 
+     vsnprintf(buf, length + 1, fmt, aq);
+     if (!utf8_check_string(buf, length)) {
+         jsonp_free(buf);
+-        return NULL;
++        goto out;
+     }
+ 
+-    return jsonp_stringn_nocheck_own(buf, length);
++    json = jsonp_stringn_nocheck_own(buf, length);
++
++out:
++    va_end(aq);
++    return json;
+ }
+ 
+ json_t *json_sprintf(const char *fmt, ...) {
+-- 
+2.1.0
+
diff --git a/SOURCES/jansson-Deal-with-warnings-under-gcc-8.patch b/SOURCES/jansson-Deal-with-warnings-under-gcc-8.patch
new file mode 100644
index 0000000..418ef49
--- /dev/null
+++ b/SOURCES/jansson-Deal-with-warnings-under-gcc-8.patch
@@ -0,0 +1,53 @@
+From 81fe13eeed91d5c973db63d2f662ae766a8832c4 Mon Sep 17 00:00:00 2001
+From: Corey Farrell <git@cfware.com>
+Date: Sat, 14 Jul 2018 13:24:55 -0400
+Subject: [PATCH] Deal with warnings under gcc 8.
+
+Recent versions of gcc have introduced compiler warnings for string
+operations that could be truncated.  This caused problems with -Werror.
+src/error.c used strncpy to write "..." to a string, but skipped writing
+the NUL terminator.  Switch this to use memcpy.  src/load.c produced
+warnings from snprintf writing error strings that could be truncated.
+Added code to autotools build to detect `-Wno-format-truncation', add it
+to AM_CFLAGS if supported.
+---
+ configure.ac | 9 ++++++++-
+ src/error.c  | 2 +-
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4ab9d3d..ca12b59 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -108,7 +108,14 @@ AC_DEFINE_UNQUOTED([INITIAL_HASHTABLE_ORDER], [$initial_hashtable_order],
+   [Number of buckets new object hashtables contain is 2 raised to this power. E.g. 3 -> 2^3 = 8.])
+ 
+ if test x$GCC = xyes; then
+-    AM_CFLAGS="-Wall -Wextra -Wdeclaration-after-statement"
++    AC_MSG_CHECKING(for -Wno-format-truncation)
++    wnoformat_truncation="-Wno-format-truncation"
++    AS_IF([${CC} -Wno-format-truncation -Werror -S -o /dev/null -xc /dev/null > /dev/null 2>&1],
++      [AC_MSG_RESULT(yes)],
++      [AC_MSG_RESULT(no)
++      wnoformat_truncation=""])
++
++    AM_CFLAGS="-Wall -Wextra -Wdeclaration-after-statement ${wnoformat_truncation}"
+ fi
+ AC_SUBST([AM_CFLAGS])
+ 
+diff --git a/src/error.c b/src/error.c
+index cbd50d7..f5da6b9 100644
+--- a/src/error.c
++++ b/src/error.c
+@@ -28,7 +28,7 @@ void jsonp_error_set_source(json_error_t *error, const char *source)
+         strncpy(error->source, source, length + 1);
+     else {
+         size_t extra = length - JSON_ERROR_SOURCE_LENGTH + 4;
+-        strncpy(error->source, "...", 3);
++        memcpy(error->source, "...", 3);
+         strncpy(error->source + 3, source + extra, length - extra + 1);
+     }
+ }
+-- 
+2.1.0
+
diff --git a/SPECS/jansson.spec b/SPECS/jansson.spec
new file mode 100644
index 0000000..46cb852
--- /dev/null
+++ b/SPECS/jansson.spec
@@ -0,0 +1,186 @@
+Name:		jansson
+Version:	2.11
+Release:	3%{?dist}
+Summary:	C library for encoding, decoding and manipulating JSON data
+
+Group:		System Environment/Libraries
+License:	MIT
+URL:		http://www.digip.org/jansson/
+Source0:	http://www.digip.org/jansson/releases/jansson-%{version}.tar.bz2
+Patch1:		jansson-Deal-with-warnings-under-gcc-8.patch
+Patch2:		jansson-Call-va_end-after-va_copy-in-json_vsprintf.patch
+
+BuildRequires:	gcc
+BuildRequires:	autoconf automake libtool
+BuildRequires:	python3-sphinx
+
+%description
+Small library for parsing and writing JSON documents.
+
+%package devel
+Summary: Header files for jansson
+Group: Development/Libraries
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+Header files for developing applications making use of jansson.
+
+%package devel-doc
+Summary: Development documentation for jansson
+BuildArch: noarch
+
+%description devel-doc
+Development documentation for jansson.
+
+%prep
+%autosetup -p1
+autoreconf --force --install -I m4
+
+%if 0%{?rhel} == 6
+%{__sed} -i 's/code-block:: shell/code-block:: none/g' doc/*.rst
+%endif
+
+%build
+%configure --disable-static
+make %{?_smp_mflags}
+make html
+
+%check
+make check
+
+%install
+make install INSTALL="install -p" DESTDIR="$RPM_BUILD_ROOT"
+rm "$RPM_BUILD_ROOT%{_libdir}"/*.la
+
+%ldconfig_scriptlets
+
+%files
+%doc LICENSE CHANGES
+%{_libdir}/*.so.*
+
+%files devel
+%{_libdir}/*.so
+%{_libdir}/pkgconfig/%{name}.pc
+%{_includedir}/*
+
+%files devel-doc
+%doc doc/_build/html/*
+
+%changelog
+* Fri Aug 03 2018 Xin Long <lxin@redhat.com> - 2.11-3
+- Deal with warnings under gcc 8
+- Call va_end after va_copy in json_vsprintf
+- Fix bogus date in jansson.spec
+
+* Mon Jul 09 2018 Charalampos Stratakis <cstratak@redhat.com> - 2.11-2
+- Change to python3-sphinx
+
+* Sat Mar 10 2018 Corey Farrell <git@cfware.com> - 2.11-1
+- Update to Jansson 2.11
+
+* Mon Feb 19 2018 Jared Smith <jsmith@fedoraproject.org> - 2.10-7
+- Add missing BuildRequires on gcc
+
+* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-6
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.10-5
+- Switch to %%ldconfig_scriptlets
+
+* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Sat Jun 10 2017 Nathaniel McCallum <npmccallum@redhat.com> - 2.10-2
+- Add upstream patch for optional arguments to json_pack()
+- Migrate to use autosetup macro
+
+* Thu Mar 02 2017 Nathaniel McCallum <npmccallum@redhat.com> - 2.10-1
+- Update to Jansson 2.10
+
+* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.9-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Tue Sep 20 2016 Nathaniel McCallum <npmccallum@redhat.com> - 2.9-1
+- Update to Jansson 2.9
+
+* Fri Sep 16 2016 Nathaniel McCallum <npmccallum@redhat.com> - 2.8-1
+- Update to Jansson 2.8
+- Add json_auto_t patch
+
+* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.7-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.7-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Mon Jan 05 2015 Jiri Pirko <jpirko@redhat.com> 2.7-1
+- Update to Jansson 2.7
+
+* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Sat Mar 15 2014 Jiri Pirko <jpirko@redhat.com> 2.6-3
+- Create devel-doc package
+
+* Tue Mar 11 2014 Peter Robinson <pbrobinson@fedoraproject.org> 2.6-2
+- Package cleanups
+
+* Thu Feb 13 2014 Jared Smith <jsmith@fedoraproject.org> - 2.6-1
+- Update to Jansson 2.6 for CVE-2013-6401 
+
+* Sat Jan 25 2014 Jiri Pirko <jpirko@redhat.com> 2.5-1
+- Update to Jansson 2.5.
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Thu Nov 08 2012 Jiri Pirko <jpirko@redhat.com> 2.4-1
+- Update to Jansson 2.4.
+
+* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Fri Feb 03 2012 Jiri Pirko <jpirko@redhat.com> 2.3-1
+- Update to Jansson 2.3.
+
+* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Sat Jun 11 2011 Sean Middleditch <sean@middleditch.us> 2.1-1
+- Update to Jansson 2.1.
+- Drop Sphinx patch, no longer necessary.
+
+* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Sat Jul 03 2010 Sean Middleditch <sean@middleditch.us> 1.3-1
+- Update to Jansson 1.3.
+- Disable warnings-as-errors for Sphinx documentation.
+
+* Thu Jan 21 2010 Sean Middleditch <sean@middleditch.us> 1.2-1
+- Update to Jansson 1.2.
+
+* Mon Jan 11 2010 Sean Middleditch <sean@middleditch.us> 1.1.3-4
+- Update jansson description per upstream's suggestions.
+- Removed README from docs.
+
+* Sat Jan 09 2010 Sean Middleditch <sean@middleditch.us> 1.1.3-3
+- Correct misspelling of jansson in the pkg-config file.
+
+* Sat Jan 09 2010 Sean Middleditch <sean@middleditch.us> 1.1.3-2
+- Fix Changelog dates.
+- Mix autoheader warning.
+- Added make check.
+- Build and install HTML documentation in -devel package.
+
+* Thu Jan 07 2010 Sean Middleditch <sean@middleditch.us> 1.1.3-1
+- Initial packaging for Fedora.