summaryrefslogtreecommitdiff
path: root/gnu/packages/speech.scm
diff options
context:
space:
mode:
authorRaghav Gururajan <raghavgururajan@disroot.org>2020-07-02 01:55:56 -0400
committerDanny Milosavljevic <dannym@scratchpost.org>2020-08-18 22:56:26 +0200
commit8dde7a8694d8ec032cb3f3c0302f3e124677cef6 (patch)
tree3526117e2e9b19dbe24d7e586651bdd6f2082fdd /gnu/packages/speech.scm
parentde4ca0934119f61fec4195c69f86d6af31547249 (diff)
downloadguix-patches-8dde7a8694d8ec032cb3f3c0302f3e124677cef6.tar
guix-patches-8dde7a8694d8ec032cb3f3c0302f3e124677cef6.tar.gz
gnu: Add flite.
* gnu/packages/speech.scm (flite): New variable. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
Diffstat (limited to 'gnu/packages/speech.scm')
-rw-r--r--gnu/packages/speech.scm68
1 files changed, 68 insertions, 0 deletions
diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
index fc87a19b79..66d8fca31b 100644
--- a/gnu/packages/speech.scm
+++ b/gnu/packages/speech.scm
@@ -51,6 +51,74 @@
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils))
+(define-public flite
+ (package
+ (name "flite")
+ (version "2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "http://www.festvox.org/" name "/packed/" name
+ "-" version "/" name "-" version "-release.tar.bz2"))
+ (sha256
+ (base32 "119b7l7pjb1l5raqq24p8rmhdqni49vjh2mgdryrfr575rm3yg67"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; XXX:
+ ;; There numerous issues with the testsuite.
+ ;; Enable all of them once they are fixed in upstream.
+ `(#:tests? #f
+ #:configure-flags
+ (list
+ "--enable-shared"
+ (string-append "LDFLAGS=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-rpath
+ (lambda _
+ (substitute* "main/Makefile"
+ (("flite_LIBS_flags \\+= -Wl,-rpath [^ ]*")
+ "flite_LIBS_flags +="))
+ #t))
+ (delete 'check)
+ ;; Modifying testsuite/Makefile is not done in favor of
+ ;; overriding 'check.
+ ;; The path not taken would be:
+ ;; test:\n\t$(foreach x,$(subst tris1,,$(subst dcoffset_wave,,$(subst flite_test,,$(subst by_word,,$(subst bin2ascii,,$(subst lpc_resynth,,$(subst rfc,,$(subst compare_wave,,$(subst record_in_noise,,$(subst combine_waves,,$(patsubst play_%,,$(subst record_wave,,$(subst lex_lookup,,$(patsubst lpc_test%,,$(patsubst asciiS2U%,,$(patsubst asciiU2S%,,$(ALL))))))))))))))))),echo TEST $x && ./$x data.one && ) true
+ (add-after 'install 'check
+ (lambda _
+ (invoke "make" "-C" "testsuite")
+ (with-directory-excursion "testsuite"
+ (invoke "./token_test")
+ (invoke "./hrg_test")
+ (invoke "./regex_test")
+ (invoke "./nums_test")
+ (invoke "./lex_test")
+ (invoke "./utt_test")
+ (invoke "./multi_thread"))
+ #t))
+ (add-after 'install 'remove-static-libs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")))
+ (for-each delete-file
+ (find-files out "\\.a$"))
+ #t))))))
+ (native-inputs
+ `(("perl" ,perl)))
+ (inputs
+ `(("alsa" ,alsa-lib)))
+ (synopsis "Speech synthesis system")
+ (description "Flite (festival-lite) is a small, fast run-time text to speech
+synthesis engine developed at CMU and primarily designed for small embedded
+machines and/or large servers. It is designed as an alternative text to speech
+synthesis engine to Festival for voices built using the FestVox suite of voice
+building tools.")
+ (home-page "http://www.festvox.org/flite/index.html")
+ (license (license:non-copyleft "file:///COPYING"))))
+
(define-public espeak
(package
(name "espeak")