summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn J. Ellis <jje@gentoo.org>2003-07-20 04:04:37 +0000
committerJohn J. Ellis <jje@gentoo.org>2003-07-20 04:04:37 +0000
commit84583cad1d72df8c61a14f64a4f98e07cf94e0a6 (patch)
tree922d69f818c112dd500fe77eab7f401db3037df1 /media-sound
parentVersion bump. ~x86 masked. Closes #22053. Whew. (diff)
downloadhistorical-84583cad1d72df8c61a14f64a4f98e07cf94e0a6.tar.gz
historical-84583cad1d72df8c61a14f64a4f98e07cf94e0a6.tar.bz2
historical-84583cad1d72df8c61a14f64a4f98e07cf94e0a6.zip
Version bump. ~x86 masked. Closes #22053. Whew.
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/festival/Manifest2
-rw-r--r--media-sound/festival/festival-1.4.3.ebuild221
-rw-r--r--media-sound/festival/files/digest-festival-1.4.313
-rw-r--r--media-sound/festival/files/festival-gcc3.3.diff142
4 files changed, 377 insertions, 1 deletions
diff --git a/media-sound/festival/Manifest b/media-sound/festival/Manifest
index 8cf6565c5609..a97cade289d2 100644
--- a/media-sound/festival/Manifest
+++ b/media-sound/festival/Manifest
@@ -3,7 +3,7 @@ MD5 da9ca662aae1e740f474ffc389f88373 festival-1.4.2-r1.ebuild 6384
MD5 160440e9290b8d18876eccf29025f558 festival-1.4.2-r2.ebuild 6496
MD5 931b35f5238453c327f03528b4de7ba2 festival-1.4.2-r3.ebuild 6364
MD5 018bb793c737dabd3d25e4fe8ff8cdc4 festival-1.4.2.ebuild 1830
-MD5 999de5fc882137df0276318276471800 festival-1.4.3.ebuild 6240
+MD5 c5addea3ec5ef52175ccd791508329e9 festival-1.4.3.ebuild 6342
MD5 4dc97895cbe241e9b03132de8c1079fd files/digest-festival-1.4.2 947
MD5 e2882c47fc5e3eab44b08f2ab31deedb files/digest-festival-1.4.2-r1 942
MD5 e2882c47fc5e3eab44b08f2ab31deedb files/digest-festival-1.4.2-r2 942
diff --git a/media-sound/festival/festival-1.4.3.ebuild b/media-sound/festival/festival-1.4.3.ebuild
new file mode 100644
index 000000000000..844fd6bcf7e1
--- /dev/null
+++ b/media-sound/festival/festival-1.4.3.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/festival/festival-1.4.3.ebuild,v 1.1 2003/07/20 04:04:28 jje Exp $
+
+S=${WORKDIR}/${PN}
+DESCRIPTION="Festival Text to Speech engine"
+GCCPV=`cc -dumpversion`
+IUSE=""
+HOMEPAGE="http://www.cstr.ed.ac.uk/"
+SITE="http://www.speech.cs.cmu.edu/${PN}/cstr/${PN}/${PV}"
+
+SRC_URI="${SITE}/${P}-release.tar.gz
+ ${SITE}/festlex_CMU.tar.gz
+ ${SITE}/festlex_OALD.tar.gz
+ ${SITE}/festlex_POSLEX.tar.gz
+ ${SITE}/festvox_don.tar.gz
+ ${SITE}/festvox_ellpc11k.tar.gz
+ ${SITE}/festvox_kallpc16k.tar.gz
+ ${SITE}/festvox_kedlpc16k.tar.gz
+ ${SITE}/festvox_rablpc16k.tar.gz
+ ${SITE}/festvox_us1.tar.gz
+ ${SITE}/festvox_us2.tar.gz
+ ${SITE}/festvox_us3.tar.gz
+ doc? ( ${SITE}/festdoc-1.4.2.tar.gz )"
+
+ # Keeping these things in external patch files (that dont even live in
+ # the files subdir) makes it far too difficult to modify the ebuild. These
+ # patches are easily replaced by a bit of sed, consistant with the rest of
+ # the ebuild, and moving the ebuild commands from the external shell script
+ # into the ebuild where they belong.
+
+SLOT="0"
+LICENSE="FESTIVAL BSD as-is"
+KEYWORDS="~x86"
+
+RDEPEND="virtual/glibc"
+DEPEND=">=media-sound/speech-tools-1.2.3"
+
+src_unpack() {
+ unpack ${P}-release.tar.gz
+ unpack festlex_CMU.tar.gz
+ unpack festlex_OALD.tar.gz
+ unpack festlex_POSLEX.tar.gz
+ unpack festvox_don.tar.gz
+ unpack festvox_ellpc11k.tar.gz
+ unpack festvox_kallpc16k.tar.gz
+ unpack festvox_kedlpc16k.tar.gz
+ unpack festvox_rablpc16k.tar.gz
+ unpack festvox_us1.tar.gz
+ unpack festvox_us2.tar.gz
+ unpack festvox_us3.tar.gz
+ epatch ${FILESDIR}/${PN}-gcc3.3.diff
+}
+
+src_compile() {
+
+ mv config/config.in config/config.in.org
+ cat config/config.in.org | sed 's@EST=$(TOP)/../speech_tools@EST=/usr/lib/speech-tools@' > config/config.in
+
+ econf
+
+ # testsuite still fails to build under gcc-3.2
+ mv Makefile Makefile.orig
+ sed -e '/^BUILD_DIRS =/s/testsuite//' Makefile.orig > Makefile
+
+ pushd config/modules/
+ cp editline.mak editline.mak.orig
+ sed -e '/^MODULE_LIBS/s/-ltermcap/-lncurses/' editline.mak.orig \
+ > editline.mak
+ popd
+
+ # emake worked for me on SMP
+ #emake did not work for me because I had -j5. If there is anything greater than
+ #-j2, emake dies.
+ #zhen@gentoo.org
+ make || die
+
+ cd ${S}
+ econf
+ pushd src/arch/festival/
+ cp festival.cc festival.cc.orig
+ sed -e '/^const char \*festival_libdir/s:FTLIBDIR:"/usr/lib/festival":' \
+ festival.cc.orig > festival.cc
+ pushd
+ pushd config/modules/
+ cp editline.mak editline.mak.orig
+ sed -e '/^MODULE_LIBS/s/-ltermcap/-lncurses/' editline.mak.orig \
+ > editline.mak
+ pushd
+
+ # emake failed for me on SMP
+ make || die
+
+ # Need to fix saytime to look for festival in the correct spot
+ cp examples/saytime examples/saytime.orig
+ sed "s:${WORKDIR}/festival/bin/festival:/usr/bin/festival:" \
+ examples/saytime.orig > examples/saytime
+
+ # And do the same thing for text2wave
+ cp bin/text2wave bin/text2wave.orig
+ sed "s:${WORKDIR}/festival/bin/festival:/usr/bin/festival:" \
+ bin/text2wave.orig > bin/text2wave
+}
+
+src_install() {
+ # Install the binaries
+ cd ${WORKDIR}/festival/src/main
+ dobin festival
+ cd ${WORKDIR}/festival/examples
+ dobin saytime
+ cd ${WORKDIR}/festival/bin
+ dobin text2wave
+ cd ${WORKDIR}/festival/lib/etc/*Linux*
+ dobin audsp
+
+ einfo ""
+ einfo "Please ignore errors about skipped directories. They are harmless."
+ einfo ""
+
+ # Install the main libraries
+ insinto /usr/lib/festival
+ doins ${WORKDIR}/festival/lib/*
+
+ # Install the dicts and vioces
+ FESTLIB=${WORKDIR}/festival/lib
+ DESTLIB=/usr/lib/festival
+ insinto ${DESTLIB}/dicts
+ doins ${FESTLIB}/dicts/COPYING.poslex \
+ ${FESTLIB}/dicts/wsj.wp39.poslexR ${FESTLIB}/dicts/wsj.wp39.tri.ngrambin
+ insinto ${DESTLIB}/dicts/cmu
+ doins ${FESTLIB}/dicts/cmu/*
+ insinto ${DESTLIB}/dicts/oald
+ doins ${FESTLIB}/dicts/oald/*
+
+ FESTLIB=${WORKDIR}/festival/lib/voices/spanish/el_diphone
+ DESTLIB=/usr/lib/festival/voices/spanish/el_diphone
+ insinto ${DESTLIB}/festvox
+ doins ${FESTLIB}/festvox/*
+ insinto ${DESTLIB}/group
+ doins ${FESTLIB}/group/*
+
+ FESTLIB=${WORKDIR}/festival/lib/voices/english
+ DESTLIB=/usr/lib/festival/voices/english
+ insinto ${DESTLIB}/don_diphone
+ doins ${FESTLIB}/don_diphone/*
+ insinto ${DESTLIB}/don_diphone/festvox
+ doins ${FESTLIB}/don_diphone/festvox/*
+
+ insinto ${DESTLIB}/kal_diphone
+ doins ${FESTLIB}/kal_diphone/*
+ insinto ${DESTLIB}/kal_diphone/festvox
+ doins ${FESTLIB}/kal_diphone/festvox/*
+ insinto ${DESTLIB}/kal_diphone/group
+ doins ${FESTLIB}/kal_diphone/group/*
+
+ insinto ${DESTLIB}/ked_diphone
+ doins ${FESTLIB}/ked_diphone/*
+ insinto ${DESTLIB}/ked_diphone/festvox
+ doins ${FESTLIB}/ked_diphone/festvox/*
+ insinto ${DESTLIB}/ked_diphone/group
+ doins ${FESTLIB}/ked_diphone/group/*
+
+ insinto ${DESTLIB}/rab_diphone
+ doins ${FESTLIB}/rab_diphone/*
+ insinto ${DESTLIB}/rab_diphone/festvox
+ doins ${FESTLIB}/rab_diphone/festvox/*
+ insinto ${DESTLIB}/rab_diphone/group
+ doins ${FESTLIB}/rab_diphone/group/*
+ insinto ${DESTLIB}/us1_mbrola
+
+ doins ${FESTLIB}/us1_mbrola/*
+ insinto ${DESTLIB}/us1_mbrola/festvox
+ doins ${FESTLIB}/us1_mbrola/festvox/*
+
+ insinto ${DESTLIB}/us2_mbrola
+ doins ${FESTLIB}/us2_mbrola/*
+ insinto ${DESTLIB}/us2_mbrola/festvox
+ doins ${FESTLIB}/us2_mbrola/festvox/*
+
+ insinto ${DESTLIB}/us3_mbrola
+ doins ${FESTLIB}/us3_mbrola/*
+ insinto ${DESTLIB}/us3_mbrola/festvox
+ doins ${FESTLIB}/us3_mbrola/festvox/*
+
+ # Install the docs
+ cd ${S} # needed
+ into /usr
+ dodoc ACKNOWLEDGMENTS COPYING NEWS README
+ doman doc/festival.1 doc/festival_client.1
+
+ cd ${WORKDIR}/festdoc-1.4.2/festival/html
+ dohtml *.html
+
+ # Sample .festivalrc
+ cd ${D}/usr/lib/festival
+ cat << EOF > festivalrc
+(Parameter.set 'Audio_Method 'linux16audio)
+;(Parameter.set 'Audio_Method 'esdaudio)
+;(Parameter.set 'Audio_Method 'mplayeraudio)
+;(Parameter.set 'Audio_Method 'sunaudio)
+
+; American female
+;(set! voice_default 'voice_us1_mbrola)
+EOF
+}
+
+pkg_postinst() {
+ einfo
+ einfo ' To test festival, simply type:'
+ einfo ' "saytime"'
+ einfo
+ einfo ' Or for something more fun:'
+ einfo ' "echo "Gentoo can speak" | festival --tts"'
+ einfo
+ einfo ' A sample ~/.festivalrc is provided in'
+ einfo ' /usr/lib/festival/festivalrc'
+ einfo
+ einfo ' Emerge mbrola to enable some additional voices'
+ einfo
+}
+
diff --git a/media-sound/festival/files/digest-festival-1.4.3 b/media-sound/festival/files/digest-festival-1.4.3
new file mode 100644
index 000000000000..7933fac5b8b9
--- /dev/null
+++ b/media-sound/festival/files/digest-festival-1.4.3
@@ -0,0 +1,13 @@
+MD5 c070523bea2baa0bcaa2d922481abbb5 festival-1.4.3-release.tar.gz 630179
+MD5 a3ffcd09dcbf1306fdef3c84c1c521d6 festlex_CMU.tar.gz 1697709
+MD5 45a03689025849d02ec963a5b338ef37 festlex_OALD.tar.gz 1472516
+MD5 742c266e4c4978fae2b5c1bf6f549eb4 festlex_POSLEX.tar.gz 242914
+MD5 90442079e34a3a694077f8715d15fbdf festvox_don.tar.gz 645583
+MD5 e96a97644d36fcb89952ca65c283cea3 festvox_ellpc11k.tar.gz 1473907
+MD5 abbd12e1d04ecdcae07f1d0044f3a947 festvox_kallpc16k.tar.gz 4104056
+MD5 35d4a2f377d05913ddae61db542afca1 festvox_kedlpc16k.tar.gz 4221528
+MD5 cefcdda6cd48027da36d78f2f711451b festvox_rablpc16k.tar.gz 5369001
+MD5 d0c3e727003e715a65daf01003101813 festvox_us1.tar.gz 11040
+MD5 fbcc8baacbff3aa2aaaf5a93701bb5e0 festvox_us2.tar.gz 11037
+MD5 06dbfe2edaab6ffa31deeaf522e0c33e festvox_us3.tar.gz 11220
+MD5 faabc25a6c1b11854c41adc257c47bdb festdoc-1.4.2.tar.gz 1652551
diff --git a/media-sound/festival/files/festival-gcc3.3.diff b/media-sound/festival/files/festival-gcc3.3.diff
new file mode 100644
index 000000000000..2cbee7d400f7
--- /dev/null
+++ b/media-sound/festival/files/festival-gcc3.3.diff
@@ -0,0 +1,142 @@
+diff -Naur festival.org/src/modules/base/phrasify.cc festival/src/modules/base/phrasify.cc
+--- festival.org/src/modules/base/phrasify.cc 2001-04-04 06:55:20.000000000 -0500
++++ festival/src/modules/base/phrasify.cc 2003-06-22 10:41:41.000000000 -0500
+@@ -218,7 +218,7 @@
+ EST_Val npbreak = wagon_predict(w,phrase_type_tree);
+ w->set("pbreak",npbreak.string()); // may reset to BB
+ }
+- pbreak = w->f("pbreak");
++ pbreak = (EST_String)w->f("pbreak");
+ if (pbreak == "B")
+ w->set("blevel",3);
+ else if (pbreak == "mB")
+diff -Naur festival.org/src/modules/base/word.cc festival/src/modules/base/word.cc
+--- festival.org/src/modules/base/word.cc 2001-04-04 06:55:20.000000000 -0500
++++ festival/src/modules/base/word.cc 2003-06-22 10:41:41.000000000 -0500
+@@ -64,10 +64,10 @@
+ for (w=u->relation("Word")->first(); w != 0; w = next(w))
+ {
+ lpos = NIL;
+- pos = ffeature(w,"hg_pos");
++ pos = (EST_String)ffeature(w,"hg_pos");
+ // explicit homograph pos disambiguation
+ if (pos == "0")
+- pos = ffeature(w,"pos");
++ pos = (EST_String)ffeature(w,"pos");
+ if (pos != "0")
+ lpos = rintern(pos);
+
+@@ -100,8 +100,8 @@
+ // from which a list can be read.
+ EST_String p;
+
+- if (((p = ffeature(w,"phonemes")) != "0") ||
+- ((p = ffeature(w,"R:Token.parent.phonemes")) != "0"))
++ if (((p = (EST_String)ffeature(w,"phonemes")) != "0") ||
++ ((p = (EST_String)ffeature(w,"R:Token.parent.phonemes")) != "0"))
+ {
+ LISP phones = read_from_lstring(strintern(p));
+
+diff -Naur festival.org/src/modules/Intonation/int_tree.cc festival/src/modules/Intonation/int_tree.cc
+--- festival.org/src/modules/Intonation/int_tree.cc 2001-04-04 06:55:20.000000000 -0500
++++ festival/src/modules/Intonation/int_tree.cc 2003-06-22 10:41:41.000000000 -0500
+@@ -87,11 +87,11 @@
+ for (s=u->relation("Syllable")->first(); s != 0; s=next(s))
+ {
+ if ((paccent = accent_specified(s)) == "0") // check if pre-specified
+- paccent = wagon_predict(s,accent_tree);
++ paccent = (EST_String)wagon_predict(s,accent_tree);
+ if (paccent != "NONE")
+ add_IntEvent(u,s,paccent);
+ if ((ptone = tone_specified(s)) == "0")
+- ptone = wagon_predict(s,endtone_tree);
++ ptone = (EST_String)wagon_predict(s,endtone_tree);
+ if (ptone != "NONE")
+ add_IntEvent(u,s,ptone);
+ }
+@@ -107,11 +107,11 @@
+ EST_Item *token = parent(word,"Token");
+ EST_String paccent("0");
+ if (token)
+- paccent = ffeature(token,"accent");
++ paccent = (EST_String)ffeature(token,"accent");
+
+ if (paccent == "0")
+ {
+- paccent = ffeature(word,"accent");
++ paccent = (EST_String)ffeature(word,"accent");
+ if (paccent == "0")
+ return paccent;
+ }
+@@ -139,11 +139,11 @@
+ EST_Item *token = parent(word,"Token");
+ EST_String ptone("0");
+ if (token)
+- ptone = ffeature(token,"tone");
++ ptone = (EST_String)ffeature(token,"tone");
+
+ if (ptone == "0")
+ {
+- ptone = ffeature(word,"tone");
++ ptone = (EST_String)ffeature(word,"tone");
+ if (ptone == "0")
+ return ptone;
+ }
+diff -Naur festival.org/src/modules/Text/token.cc festival/src/modules/Text/token.cc
+--- festival.org/src/modules/Text/token.cc 2001-04-04 06:55:20.000000000 -0500
++++ festival/src/modules/Text/token.cc 2003-06-22 10:41:41.000000000 -0500
+@@ -230,7 +230,7 @@
+ else
+ return cons(strintern(tok),NIL);
+ }
+- else if ((token_pos = ffeature(token,"token_pos")) == "ordinal")
++ else if ((token_pos = (EST_String)ffeature(token,"token_pos")) == "ordinal")
+ return say_num_as_ordinal(tok);
+ else if (token_pos == "year")
+ return say_num_as_year(tok);
+@@ -404,7 +404,7 @@
+ const char *tokch = tok;
+
+ for (i=0; i<tok.length(); i++)
+- if (strchr(PunctuationChars,tokch[i]) == NULL)
++ if (strchr((const char *)PunctuationChars,tokch[i]) == NULL)
+ return FALSE;
+
+ return TRUE;
+diff -Naur festival.org/src/modules/Text/xxml.cc festival/src/modules/Text/xxml.cc
+--- festival.org/src/modules/Text/xxml.cc 2001-04-04 06:55:20.000000000 -0500
++++ festival/src/modules/Text/xxml.cc 2003-06-22 10:41:41.000000000 -0500
+@@ -93,7 +93,7 @@
+ cerr << "xxml parse error: unexpected end of file \n";
+ festival_error();
+ }
+- line = ts.get_upto_eoln();
++ line = (EST_String)ts.get_upto_eoln();
+ type = line.at(0,1);
+ remainder = line.after(0);
+ if (type == "-")
+@@ -159,7 +159,7 @@
+ EST_Token t;
+
+ ts.open_string(remainder);
+- name = ts.get();
++ name = (EST_String)ts.get();
+ if ((t=ts.get()) == "IMPLIED")
+ att = cons(rintern(name),cons(NIL,NIL));
+ else if (t == "TOKEN")
+diff -Naur festival.org/src/modules/UniSyn_diphone/us_diphone_index.cc festival/src/modules/UniSyn_diphone/us_diphone_index.cc
+--- festival.org/src/modules/UniSyn_diphone/us_diphone_index.cc 2002-07-02 06:18:30.000000000 -0500
++++ festival/src/modules/UniSyn_diphone/us_diphone_index.cc 2003-06-22 10:41:41.000000000 -0500
+@@ -106,9 +106,9 @@
+
+ if (!item)
+ return "";
+- else if ((d1 = item->f(dname+"_"+dir,def)) != "0")
++ else if ((d1 = (EST_String)item->f(dname+"_"+dir,def)) != "0")
+ return d1;
+- else if ((d1 = item->f(dname,def)) != "0")
++ else if ((d1 = (EST_String)item->f(dname,def)) != "0")
+ return d1;
+ else
+ return item->f("name","0").string();
+