Festival with Russian Language Support Fix added.
This commit is contained in:
parent
f58bd9b266
commit
200a7f28c4
|
@ -0,0 +1,128 @@
|
|||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-accessibility/festival/festival-2.1-r1.ebuild,v 1.3 2013/02/02 22:18:04 ago Exp $
|
||||
|
||||
EAPI="2"
|
||||
inherit eutils multilib toolchain-funcs user
|
||||
|
||||
MY_PV="${PV}-release"
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
DESCRIPTION="Festival Text to Speech engine"
|
||||
HOMEPAGE="http://www.cstr.ed.ac.uk/projects/festival/"
|
||||
SITE="http://www.festvox.org/packed/${PN}/${PV}"
|
||||
SRC_URI="${SITE}/${MY_P}.tar.gz
|
||||
${SITE}/festlex_CMU.tar.gz
|
||||
${SITE}/festlex_OALD.tar.gz
|
||||
${SITE}/festlex_POSLEX.tar.gz
|
||||
${SITE}/festvox_cmu_us_awb_cg.tar.gz
|
||||
${SITE}/festvox_cmu_us_rms_cg.tar.gz
|
||||
${SITE}/festvox_cmu_us_slt_arctic_hts.tar.gz
|
||||
${SITE}/festvox_rablpc16k.tar.gz
|
||||
${SITE}/festvox_kallpc16k.tar.gz
|
||||
${SITE}/speech_tools-${MY_PV}.tar.gz"
|
||||
|
||||
LICENSE="FESTIVAL HPND BSD rc regexp-UofT free-noncomm"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="~app-accessibility/speech-tools-2.1
|
||||
>=sys-libs/ncurses-5.6-r2"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
S=${WORKDIR}/festival
|
||||
|
||||
pkg_setup() {
|
||||
enewuser festival -1 -1 -1 audio
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# tell festival to use the speech-tools we have installed.
|
||||
sed -i -e "s:\(EST=\).*:\1${EPREFIX}/usr/share/speech-tools:" "${S}"/config/config.in
|
||||
sed -i -e "s:\$(EST)/lib:/usr/$(get_libdir):" "${S}"/config/project.mak
|
||||
|
||||
# fix the reference to /usr/lib/festival
|
||||
sed -i -e "s:\(FTLIBDIR.*=.*\)\$.*:\1${EPREFIX}/usr/share/festival:" "${S}"/config/project.mak
|
||||
|
||||
# Fix path for examples in festival.scm
|
||||
sed -i -e "s:\.\./examples/:${EPREFIX}/usr/share/doc/${PF}/examples/:" "${S}"/lib/festival.scm
|
||||
|
||||
epatch "${FILESDIR}/${P}-ldflags.patch"
|
||||
epatch "${FILESDIR}/${P}-init-scm.patch"
|
||||
epatch "${FILESDIR}/${P}-gentoo-system.patch"
|
||||
|
||||
# copy what we need for MultiSyn from speech_tools.
|
||||
cp -pr "${WORKDIR}"/speech_tools/base_class "${S}"/src/modules/MultiSyn
|
||||
|
||||
epatch "${FILESDIR}/${P}-gcc4.7.patch"
|
||||
|
||||
echo "(Parameter.set 'Audio_Command \"aplay -q -c 1 -t raw -f s16 -r \$SR \$FILE\")" >> "${S}"/lib/siteinit.scm
|
||||
echo "(Parameter.set 'Audio_Method 'Audio_Command)" >> "${S}"/lib/siteinit.scm
|
||||
|
||||
# Patch for the Russian Languages
|
||||
epatch "${FILESDIR}/${P}-russian.patch"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf || die "econf failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1 PROJECT_LIBDEPS="" REQUIRED_LIBDEPS="" LOCAL_LIBDEPS="" \
|
||||
OPTIMISE_CXXFLAGS="${CXXFLAGS}" OPTIMISE_CCFLAGS="${CFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}" \
|
||||
CC="$(tc-getCC)" CXX="$(tc-getCXX)" || die "emake failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Install the binaries
|
||||
dobin src/main/festival
|
||||
dobin lib/etc/*Linux*/audsp
|
||||
dolib.a src/lib/libFestival.a
|
||||
|
||||
# Install the main libraries
|
||||
insinto /usr/share/festival
|
||||
doins -r lib/*
|
||||
|
||||
# Install the examples
|
||||
insinto /usr/share/doc/${PF}
|
||||
doins -r examples
|
||||
|
||||
# Need to fix saytime, etc. to look for festival in the correct spot
|
||||
for ex in "${D}"/usr/share/doc/${PF}/examples/*.sh; do
|
||||
exnoext=${ex%%.sh}
|
||||
chmod a+x "${exnoext}"
|
||||
dosed "s:${S}/bin/festival:/usr/bin/festival:" "${exnoext##$D}"
|
||||
done
|
||||
|
||||
# Install the header files
|
||||
insinto /usr/include/festival
|
||||
doins src/include/*.h
|
||||
|
||||
insinto /etc/festival
|
||||
doins lib/site*
|
||||
|
||||
# Install the docs
|
||||
dodoc "${S}"/{ACKNOWLEDGMENTS,NEWS,README}
|
||||
doman "${S}"/doc/{festival.1,festival_client.1}
|
||||
|
||||
# create the directory where our log file will go.
|
||||
diropts -m 0755 -o festival -g audio
|
||||
keepdir /var/log/festival
|
||||
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog
|
||||
elog " Useful examples include saytime, text2wave. For example, try:"
|
||||
elog " \"/usr/share/doc/${PF}/examples/saytime\""
|
||||
elog
|
||||
elog " Or for something more fun:"
|
||||
elog ' "echo "Gentoo can speak" | festival --tts"'
|
||||
elog
|
||||
elog "This version also allows configuration of site specific"
|
||||
elog "initialization in /etc/festival/siteinit.scm and"
|
||||
elog "variables in /etc/festival/sitevars.scm."
|
||||
elog
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
diff -uNr festival.orig/src/modules/MultiSyn/base_class/EST_TSimpleVector.cc festival/src/modules/MultiSyn/base_class/EST_TSimpleVector.cc
|
||||
--- festival.orig/src/modules/MultiSyn/base_class/EST_TSimpleVector.cc 2012-12-02 23:03:27.000000000 +0000
|
||||
+++ festival/src/modules/MultiSyn/base_class/EST_TSimpleVector.cc 2012-12-02 23:21:17.000000000 +0000
|
||||
@@ -42,6 +42,7 @@
|
||||
|
||||
#include "EST_TSimpleVector.h"
|
||||
#include "EST_matrix_support.h"
|
||||
+#include <cstring>
|
||||
#include <fstream>
|
||||
#include "EST_cutils.h"
|
||||
|
||||
@@ -49,7 +50,7 @@
|
||||
{
|
||||
if (this->p_column_step==1 && a.p_column_step==1)
|
||||
{
|
||||
- resize(a.n(), FALSE);
|
||||
+ this->resize(a.n(), FALSE);
|
||||
memcpy((void *)(this->p_memory), (const void *)(a.p_memory), this->n() * sizeof(T));
|
||||
}
|
||||
else
|
||||
@@ -70,7 +71,7 @@
|
||||
int old_offset = this->p_offset;
|
||||
unsigned int q;
|
||||
|
||||
- just_resize(newn, &old_vals);
|
||||
+ this->just_resize(newn, &old_vals);
|
||||
|
||||
if (set && old_vals)
|
||||
{
|
|
@ -0,0 +1,124 @@
|
|||
diff -uNr festival.orig/config/systems/GentooLinux.mak festival/config/systems/GentooLinux.mak
|
||||
--- festival.orig/config/systems/GentooLinux.mak 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ festival/config/systems/GentooLinux.mak 2011-02-09 10:43:28.000000000 -0500
|
||||
@@ -0,0 +1,42 @@
|
||||
+ ###########################################################################
|
||||
+ ## ##
|
||||
+ ## Centre for Speech Technology Research ##
|
||||
+ ## University of Edinburgh, UK ##
|
||||
+ ## Copyright (c) 1996 ##
|
||||
+ ## All Rights Reserved. ##
|
||||
+ ## ##
|
||||
+ ## Permission is hereby granted, free of charge, to use and distribute ##
|
||||
+ ## this software and its documentation without restriction, including ##
|
||||
+ ## without limitation the rights to use, copy, modify, merge, publish, ##
|
||||
+ ## distribute, sublicense, and/or sell copies of this work, and to ##
|
||||
+ ## permit persons to whom this work is furnished to do so, subject to ##
|
||||
+ ## the following conditions: ##
|
||||
+ ## 1. The code must retain the above copyright notice, this list of ##
|
||||
+ ## conditions and the following disclaimer. ##
|
||||
+ ## 2. Any modifications must be clearly marked as such. ##
|
||||
+ ## 3. Original authors' names are not deleted. ##
|
||||
+ ## 4. The authors' names are not used to endorse or promote products ##
|
||||
+ ## derived from this software without specific prior written ##
|
||||
+ ## permission. ##
|
||||
+ ## ##
|
||||
+ ## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ##
|
||||
+ ## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ##
|
||||
+ ## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ##
|
||||
+ ## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ##
|
||||
+ ## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ##
|
||||
+ ## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ##
|
||||
+ ## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ##
|
||||
+ ## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ##
|
||||
+ ## THIS SOFTWARE. ##
|
||||
+ ## ##
|
||||
+ ###########################################################################
|
||||
+ ## ##
|
||||
+ ## Author: William Hubbs <williamh@gentoo.org> ##
|
||||
+ ## -------------------------------------------------------------------- ##
|
||||
+ ## Settings for Gentoo Linux distributions. ##
|
||||
+ ## ##
|
||||
+ ###########################################################################
|
||||
+
|
||||
+MANDIR=$(INSTALL_PREFIX)/share/man
|
||||
+# Gentoo does not use termcap
|
||||
+OS_LIBS = $(LDFLAGS) -ldl -lncurses
|
||||
diff -uNr festival.orig/config/systems/Makefile festival/config/systems/Makefile
|
||||
--- festival.orig/config/systems/Makefile 2011-02-09 10:41:01.000000000 -0500
|
||||
+++ festival/config/systems/Makefile 2011-02-09 10:44:22.000000000 -0500
|
||||
@@ -41,6 +41,7 @@
|
||||
Linux.mak \
|
||||
RedHatLinux.mak \
|
||||
DebianGNULinux.mak \
|
||||
+ GentooLinux.mak \
|
||||
alpha_Linux.mak \
|
||||
alpha_OSF1V4.0.mak \
|
||||
alpha_RedHatLinux.mak \
|
||||
@@ -94,6 +95,7 @@
|
||||
sparc_SunOS5.8.mak \
|
||||
sparc_SunOS5.mak \
|
||||
unknown_DebianGNULinux.mak \
|
||||
+ unknown_GentooLinux.mak \
|
||||
unknown_Linux.mak \
|
||||
unknown_RedHatLinux.mak \
|
||||
power_macintosh_Darwin.mak \
|
||||
diff -uNr festival.orig/config/systems/unknown_GentooLinux.mak festival/config/systems/unknown_GentooLinux.mak
|
||||
--- festival.orig/config/systems/unknown_GentooLinux.mak 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ festival/config/systems/unknown_GentooLinux.mak 2011-02-09 10:45:34.000000000 -0500
|
||||
@@ -0,0 +1,41 @@
|
||||
+###########################################################################
|
||||
+## ##
|
||||
+## Centre for Speech Technology Research ##
|
||||
+## University of Edinburgh, UK ##
|
||||
+## Copyright (c) 1996 ##
|
||||
+## All Rights Reserved. ##
|
||||
+## ##
|
||||
+## Permission is hereby granted, free of charge, to use and distribute ##
|
||||
+## this software and its documentation without restriction, including ##
|
||||
+## without limitation the rights to use, copy, modify, merge, publish, ##
|
||||
+## distribute, sublicense, and/or sell copies of this work, and to ##
|
||||
+## permit persons to whom this work is furnished to do so, subject to ##
|
||||
+## the following conditions: ##
|
||||
+## 1. The code must retain the above copyright notice, this list of ##
|
||||
+## conditions and the following disclaimer. ##
|
||||
+## 2. Any modifications must be clearly marked as such. ##
|
||||
+## 3. Original authors' names are not deleted. ##
|
||||
+## 4. The authors' names are not used to endorse or promote products ##
|
||||
+## derived from this software without specific prior written ##
|
||||
+## permission. ##
|
||||
+## ##
|
||||
+## THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ##
|
||||
+## DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ##
|
||||
+## ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ##
|
||||
+## SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ##
|
||||
+## FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ##
|
||||
+## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ##
|
||||
+## AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ##
|
||||
+## ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ##
|
||||
+## THIS SOFTWARE. ##
|
||||
+## ##
|
||||
+###########################################################################
|
||||
+## ##
|
||||
+## Author: William Hubbs <williamh@gentoo.org> ##
|
||||
+## -------------------------------------------------------------------- ##
|
||||
+## Settings for Gentoo Linux distributions. ##
|
||||
+## ##
|
||||
+###########################################################################
|
||||
+
|
||||
+include $(EST)/config/systems/Linux.mak
|
||||
+include $(EST)/config/systems/GentooLinux.mak
|
||||
diff -uNr festival.orig/config/system.sh festival/config/system.sh
|
||||
--- festival.orig/config/system.sh 2011-02-09 10:41:01.000000000 -0500
|
||||
+++ festival/config/system.sh 2011-02-09 10:42:10.000000000 -0500
|
||||
@@ -70,6 +70,10 @@
|
||||
then
|
||||
OSTYPE=DebianGNULinux
|
||||
OSREV=`cat /etc/debian_version`
|
||||
+ elif [ -f "/etc/gentoo-release" ]
|
||||
+ then
|
||||
+ OSTYPE=GentooLinux
|
||||
+ OSREV=""
|
||||
else
|
||||
# Generic unknown GNU/Linux system.
|
||||
OSTYPE=Linux
|
|
@ -0,0 +1,24 @@
|
|||
--- festival/lib/init.scm 2006-09-15 01:34:32.000000000 -0500
|
||||
+++ festival/lib/init.scm 2006-09-15 01:50:30.000000000 -0500
|
||||
@@ -52,8 +52,8 @@
|
||||
|
||||
;;; A chance to set various variables to a local setting e.g.
|
||||
;;; lexdir, voices_dir audio etc etc.
|
||||
-(if (probe_file (path-append libdir "sitevars.scm"))
|
||||
- (load (path-append libdir "sitevars.scm")))
|
||||
+(if (probe_file "/etc/festival/sitevars.scm")
|
||||
+ (load "/etc/festival/sitevars.scm"))
|
||||
|
||||
;;; CSTR siod extensions
|
||||
(require 'cstr)
|
||||
@@ -133,8 +133,8 @@
|
||||
;;;
|
||||
;;; Local site initialization, if the file exists load it
|
||||
;;;
|
||||
-(if (probe_file (path-append libdir "siteinit.scm"))
|
||||
- (load (path-append libdir "siteinit.scm")))
|
||||
+(if (probe_file "/etc/festival/siteinit.scm")
|
||||
+ (load "/etc/festival/siteinit.scm"))
|
||||
|
||||
;;; User initialization, if a user has a personal customization
|
||||
;;; file loaded it
|
|
@ -0,0 +1,12 @@
|
|||
diff -uNr festival.orig/config/systems/Linux.mak festival/config/systems/Linux.mak
|
||||
--- festival.orig/config/systems/Linux.mak 2011-02-09 10:08:20.000000000 -0500
|
||||
+++ festival/config/systems/Linux.mak 2011-02-09 10:09:04.000000000 -0500
|
||||
@@ -46,7 +46,7 @@
|
||||
JAVAH=/usr/bin/javah
|
||||
|
||||
TCL_LIBRARY = -ltcl
|
||||
-OS_LIBS = -ldl
|
||||
+OS_LIBS = $(OPTIMISE_LDFLAGS) -ldl
|
||||
|
||||
## the native audio module for this type of system
|
||||
NATIVE_AUDIO_MODULE = LINUX16
|
|
@ -0,0 +1,26 @@
|
|||
--- lib/languages.scm 2002-04-20 01:47:23.000000000 +0400
|
||||
+++ lib/languages.scm 2014-10-24 12:00:20.283268003 +0400
|
||||
@@ -39,6 +39,14 @@
|
||||
;;; new voices will become automatically available.
|
||||
;;;
|
||||
|
||||
+(define (language_russian)
|
||||
+ "(language_russian)
|
||||
+ Set up language parameters for Russian."
|
||||
+ (set! male1 voice_msu_ru_nsh_clunits)
|
||||
+ (male1)
|
||||
+ (Parameter.set 'Language 'russian)
|
||||
+)
|
||||
+
|
||||
(define (language_british_english)
|
||||
"(language_british_english)
|
||||
Set up language parameters for British English."
|
||||
@@ -111,6 +119,8 @@
|
||||
(language_castillian_spanish))
|
||||
((equal? language 'klingon)
|
||||
(language_klingon))
|
||||
+ ((equal? language 'russian)
|
||||
+ (language_russian))
|
||||
(t
|
||||
(print "Unsupported language, using English")
|
||||
(language_british_english))))
|
Loading…
Reference in New Issue