summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/syndication.scm2
-rw-r--r--gnu/packages/web.scm38
2 files changed, 33 insertions, 7 deletions
diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm
index b182e13395..0f3ecbf101 100644
--- a/gnu/packages/syndication.scm
+++ b/gnu/packages/syndication.scm
@@ -64,7 +64,7 @@
        ("ruby" ,ruby))) ; for tests
     (inputs
      `(("curl" ,curl)
-       ("json-c" ,json-c)
+       ("json-c" ,json-c-0.12)      ; check whether json-c-0.12 can be removed
        ("ncurses" ,ncurses)
        ("stfl" ,stfl)
        ("sqlite" ,sqlite)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index a0d9e7a329..30d5e51be9 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
 ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
-;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
@@ -514,7 +514,7 @@ data.")
 (define-public json-c
   (package
     (name "json-c")
-    (version "0.12.1")
+    (version "0.13")
     (source (origin
              (method url-fetch)
              (uri (string-append
@@ -522,7 +522,7 @@ data.")
                    version ".tar.gz"))
              (sha256
               (base32
-               "08qibrq29a5v7g23wi5icy6l4fbfw90h9ccps6vq0bcklx8n84ra"))
+               "0kf2594kxcfga6x0mvwzj2qg8pgxhjkibc16ghnw85mdx45ph5h3"))
              (modules '((guix build utils)))
              (snippet
               '(begin
@@ -542,10 +542,36 @@ data.")
     (synopsis "JSON implementation in C")
     (description
      "JSON-C implements a reference counting object model that allows you to
-easily construct JSON objects in C, output them as JSON formatted strings and
-parse JSON formatted strings back into the C representation of JSON objects.")
+easily construct JSON objects in C, output them as JSON-formatted strings and
+parse JSON-formatted strings back into the C representation of JSON objects.
+It aims to conform to RFC 7159.")
     (license l:x11)))
 
+;; TODO: remove this old version when all dependents have been updated.
+(define-public json-c-0.12
+  (package
+    (inherit json-c)
+    (version "0.12.1")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append
+                   "https://s3.amazonaws.com/json-c_releases/releases/json-c-"
+                   version ".tar.gz"))
+             (sha256
+              (base32 "08qibrq29a5v7g23wi5icy6l4fbfw90h9ccps6vq0bcklx8n84ra"))
+             (modules '((guix build utils)))
+             (snippet
+              '(begin
+                 ;; Somehow 'config.h.in' is older than
+                 ;; 'aclocal.m4', which would trigger a rule to
+                 ;; run 'autoheader'.
+                 (set-file-time "config.h.in"
+                                (stat "aclocal.m4"))
+
+                 ;; Don't try to build with -Werror.
+                 (substitute* (find-files "." "Makefile\\.in")
+                   (("-Werror") ""))))))))
+
 (define-public qjson
   (package
     (name "qjson")
@@ -4279,7 +4305,7 @@ C.  It is developed as part of the NetSurf project.")
      `(("netsurf-buildsystem" ,netsurf-buildsystem)
        ("pkg-config" ,pkg-config)
        ("doxygen" ,doxygen)
-       ("json-c" ,json-c)
+       ("json-c" ,json-c-0.12)      ; check whether json-c-0.12 can be removed
        ("perl" ,perl)))
     (propagated-inputs
      `(("libparserutils" ,libparserutils))) ;for libhubbub.pc