diff options
author | Jeremy Huddleston <eradicator@gentoo.org> | 2004-03-13 06:48:14 +0000 |
---|---|---|
committer | Jeremy Huddleston <eradicator@gentoo.org> | 2004-03-13 06:48:14 +0000 |
commit | d23c0f303270302e9ac2e9a0d01d8a38b9500a9a (patch) | |
tree | 83b5ae2e46b93a9030eb71fd545aa69007534526 /media-sound | |
parent | Version bump. (Manifest recommit) (diff) | |
download | gentoo-2-d23c0f303270302e9ac2e9a0d01d8a38b9500a9a.tar.gz gentoo-2-d23c0f303270302e9ac2e9a0d01d8a38b9500a9a.tar.bz2 gentoo-2-d23c0f303270302e9ac2e9a0d01d8a38b9500a9a.zip |
Adding init script and configuration to use festival server... part of the fix for bug #43374.
Diffstat (limited to 'media-sound')
-rw-r--r-- | media-sound/festival/ChangeLog | 7 | ||||
-rw-r--r-- | media-sound/festival/Manifest | 3 | ||||
-rw-r--r-- | media-sound/festival/festival-1.4.3-r1.ebuild | 224 | ||||
-rw-r--r-- | media-sound/festival/files/digest-festival-1.4.3-r1 | 13 | ||||
-rw-r--r-- | media-sound/festival/files/festival.rc | 17 | ||||
-rw-r--r-- | media-sound/festival/files/server.scm | 29 |
6 files changed, 293 insertions, 0 deletions
diff --git a/media-sound/festival/ChangeLog b/media-sound/festival/ChangeLog index dd9fbec79614..54b7af5519bd 100644 --- a/media-sound/festival/ChangeLog +++ b/media-sound/festival/ChangeLog @@ -3,6 +3,13 @@ # $Header: /home/cvsroot/gentoo-x86/media-sound/festival/ChangeLog,v 1 2002/05/07 # 03:58:19 naz Exp $ +*festival-1.4.3-r1 (12 Mar 2004) + + 12 Mar 2004; Jeremy Huddleston <eradicator@gentoo.org> + festival-1.4.3-r1.ebuild, files/festival.rc, files/server.scm: + Adding init script and configuration to use festival server... part of the fix + for bug #43374. + 25 Feb 2004; Sven Blumenstein <bazik@gentoo.org> festival-1.4.3.ebuild: DEPEND media-sounds/speech-tools is broken on sparc, see bug #41329. diff --git a/media-sound/festival/Manifest b/media-sound/festival/Manifest index 5e9d7869d6b3..5d0921e03f2e 100644 --- a/media-sound/festival/Manifest +++ b/media-sound/festival/Manifest @@ -1,3 +1,4 @@ +MD5 4bc5f10b994b483d84fedcfea23dea5c festival-1.4.3-r1.ebuild 6942 MD5 358ef29f319a3e64dc9ab2064d18a3a1 festival-1.4.3.ebuild 6421 MD5 061e5b2fcf80241d7840231f9a6c62e5 festival-1.4.2-r3.ebuild 6383 MD5 352cf11965004413407fb6ba5db660db ChangeLog 3564 @@ -7,3 +8,5 @@ MD5 44bdf5d07947b391cecc75ed8ca49445 files/festival-1.4.2.patch 8724 MD5 b380d6440fe49096f7705d6f1adf01ee files/festival-1.4.3-asterisk.patch 3028 MD5 70fe1c867e8782c7ff288056677fda0c files/festival-gcc3.3.diff 5257 MD5 e2882c47fc5e3eab44b08f2ab31deedb files/digest-festival-1.4.2-r3 942 +MD5 f38f904b9dfc77c788a63f51ccd2abb7 files/digest-festival-1.4.3-r1 863 +MD5 b37b84b29a9071549588459a050251d6 files/festival.rc 432 diff --git a/media-sound/festival/festival-1.4.3-r1.ebuild b/media-sound/festival/festival-1.4.3-r1.ebuild new file mode 100644 index 000000000000..d14954ad9e35 --- /dev/null +++ b/media-sound/festival/festival-1.4.3-r1.ebuild @@ -0,0 +1,224 @@ +# Copyright 1999-2004 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-r1.ebuild,v 1.1 2004/03/13 06:48:13 eradicator Exp $ + +S=${WORKDIR}/${PN} +DESCRIPTION="Festival Text to Speech engine" +GCCPV=`gcc -dumpversion` +IUSE="asterisk" +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 ~ppc -sparc amd64" + +RDEPEND=">=media-sound/speech-tools-1.2.3" +DEPEND="${RDEPEND} + sys-apps/sed" + +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 + + use asterisk && epatch ${FILESDIR}/${P}-asterisk.patch +} + +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 server.scm configuration for the server + dodir /etc/festival + insinto /etc/festival + doins ${FILESDIR}/server.scm + + # Install the init script + exeinto /etc/init.d + newexe ${FILESDIR}/festival.rc festival +} + +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 " To enable the festival server at boot, run" + einfo " rc-update add festival default" + einfo + einfo " You must setup the server's port, access list, etc in this file:" + einfo " /etc/festival/server.scm" + einfo + einfo " Emerge mbrola to enable some additional voices" + einfo +} + diff --git a/media-sound/festival/files/digest-festival-1.4.3-r1 b/media-sound/festival/files/digest-festival-1.4.3-r1 new file mode 100644 index 000000000000..7933fac5b8b9 --- /dev/null +++ b/media-sound/festival/files/digest-festival-1.4.3-r1 @@ -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.rc b/media-sound/festival/files/festival.rc new file mode 100644 index 000000000000..f0c6f847801c --- /dev/null +++ b/media-sound/festival/files/festival.rc @@ -0,0 +1,17 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/festival/files/festival.rc,v 1.1 2004/03/13 06:48:14 eradicator Exp $ + +start() { + ebegin "Starting festival" + start-stop-daemon --start --quiet --background --make-pidfile --pidfile /var/run/festival.pid \ + --exec /usr/bin/festival -- --server -b /etc/festival/server.scm + eend $? +} + +stop() { + ebegin "Stopping festival" + start-stop-daemon --stop --quiet --pidfile /var/run/festival.pid + eend $? +} diff --git a/media-sound/festival/files/server.scm b/media-sound/festival/files/server.scm new file mode 100644 index 000000000000..ca86448eed0d --- /dev/null +++ b/media-sound/festival/files/server.scm @@ -0,0 +1,29 @@ +; Audio +(Parameter.set 'Audio_Method 'linux16audio) +;(Parameter.set 'Audio_Method 'esdaudio) +;(Parameter.set 'Audio_Method 'mplayeraudio) +;(Parameter.set 'Audio_Method 'sunaudio) + +; American female - For a list of voices, look in /usr/lib/festival/voices/ +; You may want to emerge 'mbrola' (this commented option would use one of +; those voices) +;(set! voice_default 'voice_us1_mbrola) + +; Maximum number of clients on the server +(set! server_max_clients 10) + +; Server port +(set! server_port 1314) + +; Log file location +(set! server_log_file "/var/log/festival.log") + +; Set the server password +(set! server_passwd nil) + +; Server access list (hosts) +(set! server_access_list '("[^.]+" "127.0.0.1" "localhost.*" "192.68.*")) + +; Server deny list (hosts) +(set! server_deny_list nil) + |