summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2017-02-11 21:23:52 -0600
committerEric Bavier <bavier@member.fsf.org>2017-02-13 22:28:25 -0600
commit43bfbf137043c2e86ae907528ab830d66e86c642 (patch)
tree8a3286275d5e53dd89a4e3b65bdfc02e666ccc7c
parentef61177dddcedaf773e83aa99feef113537e5d92 (diff)
downloadgnu-guix-43bfbf137043c2e86ae907528ab830d66e86c642.tar
gnu-guix-43bfbf137043c2e86ae907528ab830d66e86c642.tar.gz
gnu: Add hubbub.
* gnu/packages/web.scm (hubbub): New variable.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/hubbub-sort-entities.patch13
-rw-r--r--gnu/packages/web.scm31
3 files changed, 45 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index fcc7eb0094..20fe3a2f25 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -634,6 +634,7 @@ dist_patch_DATA = \
%D%/packages/patches/hdf-eos5-fortrantests.patch \
%D%/packages/patches/higan-remove-march-native-flag.patch \
%D%/packages/patches/hop-linker-flags.patch \
+ %D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/hypre-doc-tables.patch \
%D%/packages/patches/hypre-ldflags.patch \
diff --git a/gnu/packages/patches/hubbub-sort-entities.patch b/gnu/packages/patches/hubbub-sort-entities.patch
new file mode 100644
index 0000000000..012e3c3022
--- /dev/null
+++ b/gnu/packages/patches/hubbub-sort-entities.patch
@@ -0,0 +1,13 @@
+Traverse the entities hash's keys in sorted order to ensure reproducibility.
+
+--- libhubbub-0.3.3/build/make-entities.pl
++++ libhubbub-0.3.3/build/make-entities.pl
+@@ -86,7 +86,7 @@
+
+ my $trie;
+
+-foreach my $key (keys %entities) {
++foreach my $key (sort keys %entities) {
+ $trie = insert_node($trie, $key, $entities{$key});
+ }
+
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 37ea4e8f7d..5ace1ebe0b 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -3791,6 +3791,37 @@ libraries.")
C. It is developed as part of the NetSurf project.")
(license l:expat)))
+(define-public hubbub
+ (package
+ (name "hubbub")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://download.netsurf-browser.org/libs/releases/"
+ "lib" name "-" version "-src.tar.gz"))
+ (sha256
+ (base32
+ "101781iw32p47386fxqr01nrkywi12w17ajh02k2vlga4z8zyv86"))
+ (patches (search-patches "hubbub-sort-entities.patch"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("netsurf-buildsystem" ,netsurf-buildsystem)
+ ("pkg-config" ,pkg-config)
+ ("doxygen" ,doxygen)
+ ("json-c" ,json-c)
+ ("perl" ,perl)))
+ (propagated-inputs
+ `(("libparserutils" ,libparserutils))) ;for libhubbub.pc
+ (arguments netsurf-buildsystem-arguments)
+ (home-page "http://www.netsurf-browser.org/projects/hubbub/")
+ (synopsis "HTML5 compliant parsing library")
+ (description
+ "Hubbub is an HTML5 compliant parsing library, written in C, which can
+parse both valid and invalid web content. It is developed as part of the
+NetSurf project.")
+ (license l:expat)))
+
(define-public netsurf
(package
(name "netsurf")