summary refs log tree commit diff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2020-07-29 12:45:36 +0300
committerEfraim Flashner <efraim@flashner.co.il>2020-07-29 12:45:36 +0300
commiteb9f726d22751dd77984b106f2dbf1c0d336954b (patch)
treebb1bf3e2c04def9e0673303efa355f4e884747ca
parente6b2552a96b328d81f681c2ae17c54a795ab2547 (diff)
downloadguix-eb9f726d22751dd77984b106f2dbf1c0d336954b.tar.gz
gnu: sphinxbase: Fix building.
* gnu/packages/speech.scm (sphinxbase)[source]: Add patch.
* gnu/packages/patches/sphinxbase-fix-doxygen.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/sphinxbase-fix-doxygen.patch24
-rw-r--r--gnu/packages/speech.scm4
3 files changed, 28 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 83727b6e61..dc9ef7488e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1541,6 +1541,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/slim-display.patch			\
   %D%/packages/patches/snappy-add-O2-flag-in-CmakeLists.txt.patch	\
   %D%/packages/patches/sooperlooper-build-with-wx-30.patch 	\
+  %D%/packages/patches/sphinxbase-fix-doxygen.patch		\
   %D%/packages/patches/sssd-fix-samba.patch			\
   %D%/packages/patches/steghide-fixes.patch			\
   %D%/packages/patches/suitesparse-mongoose-cmake.patch		\
diff --git a/gnu/packages/patches/sphinxbase-fix-doxygen.patch b/gnu/packages/patches/sphinxbase-fix-doxygen.patch
new file mode 100644
index 0000000000..c8ebc52628
--- /dev/null
+++ b/gnu/packages/patches/sphinxbase-fix-doxygen.patch
@@ -0,0 +1,24 @@
+https://github.com/cmusphinx/sphinxbase/commit/6989c52a3fb9473fd61326e548440fff887525c2
+
+commit 6989c52a3fb9473fd61326e548440fff887525c2
+Author: Michel Zou <xantares09@hotmail.com>
+Date:   Thu Feb 6 07:02:06 2020 +0100
+
+    Fix doxy2swig.py IndexError: list index out of range
+
+diff --git a/doc/doxy2swig.py b/doc/doxy2swig.py
+index 5589b0d..a01c4b1 100644
+--- a/doc/doxy2swig.py
++++ b/doc/doxy2swig.py
+@@ -299,7 +299,10 @@ class Doxy2SWIG:
+             name = first['name'].firstChild.data
+ 
+             for n in node.getElementsByTagName('param'):
+-              arg_type = n.getElementsByTagName('type')[0]
++              elts = n.getElementsByTagName('type')
++              if len(elts) == 0:
++                  continue
++              arg_type = elts[0]
+               ref = self.get_specific_nodes(arg_type, ('ref'))
+               if 'ref' in ref:
+                 type_name = ref['ref'].firstChild.data
diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
index c9c1eaa8d9..fc87a19b79 100644
--- a/gnu/packages/speech.scm
+++ b/gnu/packages/speech.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -497,7 +498,8 @@ control.")
                            "sphinxbase/" version "/"
                            "sphinxbase-" version ".tar.gz"))
        (sha256
-        (base32 "0vr4k8pv5a8nvq9yja7kl13b5lh0f9vha8fc8znqnm8bwmcxnazp"))))
+        (base32 "0vr4k8pv5a8nvq9yja7kl13b5lh0f9vha8fc8znqnm8bwmcxnazp"))
+       (patches (search-patches "sphinxbase-fix-doxygen.patch"))))
     (build-system gnu-build-system)
     (arguments
      `(#:parallel-tests? #f))           ;tests fail otherwise