From a6579fd24aaf0b48a3b3b4a302d95e1f8542c737 Mon Sep 17 00:00:00 2001 From: Jonathan Blandford Date: Feb 25 2005 23:30:58 +0000 Subject: - patch from Matthew Miller to update to 1.95. Full changelog below Mon Feb 7 2005 Matthew Miller 1.95-0.mattdm8 - put speech-tools binaries in /usr/libexec/speech-tools so as to not clutter /usr/bin. Another approach would be to make speech-tools a separate package and to make these utilities a subpackage of that. - macro-ize /usr/bin, /usr/lib, /usr/include Sun Feb 6 2005 Matthew Miller 1.95-0.mattdm6 - worked on this some more - made actually work -- put back rest of fsstnd patch which I had broken - made kludge for lack of sonames in shared libraries -- I think I did the right thing - put back american as the default -- british dicts are non-free. Wed Jan 5 2005 Matthew Miller 1.95-0.mattdm1 - preliminary update to 1.95 beta - add really nice CMU_ARCTIC HTS voices, which is the whole point of wanting to do this. (They have a free license.) - switch to festvox.org north american upstream urls - keep old doc files -- there's no new ones yet. - add comment to specfile about reason for lack of OALD (British) voices -- they've got a more restrictive license. - change license to "X11-style", because that's how they describe it. - remove exclusivearch. I dunno if this builds on other archs, but I also don't know why it wouldn't. - fancier buildroot string, 'cause hey, why not. - more "datadir" macros - remove most of Patch0 (fsstnd) -- can be done by setting variables instead. there's some bits in speechtools still, though - update Patch3 (shared-build) - don't apply patches 20 and 21 -- no longer needed. - disable adding "FreeBSD" and "OpenBSD" to the dictionary for now. Probably a whole list of geek words should be added. Also, the patch was applied in an icky kludgy way. --- diff --git a/.cvsignore b/.cvsignore index aabe85e..1c93a8e 100644 --- a/.cvsignore +++ b/.cvsignore @@ -8,3 +8,9 @@ festvox_kallpc8k.tar.gz festvox_kedlpc16k.tar.gz festvox_kedlpc8k.tar.gz speech_tools-1.2.2-release.tar.gz +festvox_cmu_us_awb_arctic_hts.tar.gz +festvox_cmu_us_bdl_arctic_hts.tar.gz +festvox_cmu_us_jmk_arctic_hts.tar.gz +festvox_cmu_us_slt_arctic_hts.tar.gz +speech_tools-1.2.95-beta.tar.gz +festival-1.95-beta.tar.gz diff --git a/festival.spec b/festival.spec index 78c4ccd..e4f6d22 100644 --- a/festival.spec +++ b/festival.spec @@ -1,56 +1,78 @@ Name: festival Summary: A free speech synthesizer -Version: 1.4.2 -Release: 25 +Version: 1.95 +Release: 1 + +# we ship the 1.4.2 docs for now. +%define docversion 1.4.2 # Files needed for everything... -Source: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/%{name}-%{version}-release.tar.gz -Source1: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/speech_tools-1.2.2-release.tar.gz -Source2: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festdoc-%{version}.tar.gz +%define baseURL http://festvox.org/packed/festival/%{version} +Source: %{baseURL}/festival-%{version}-beta.tar.gz +Source1: %{baseURL}/speech_tools-1.2.95-beta.tar.gz + +# Docs haven't been updated yet; here's the old ones +Source2: http://festvox.org/packed/festival/1.4.3/festdoc-1.4.2.tar.gz ### DICTIONARIES # Generic English dictionary -Source100: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festlex_POSLEX.tar.gz +Source100: %{baseURL}/festlex_POSLEX.tar.gz # American English dictionary -Source101: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festlex_CMU.tar.gz +Source101: %{baseURL}/festlex_CMU.tar.gz +# OALD isn't included because it's got a more restrictive (non-commercial +# only) license. OALD voices not included for same reason. -### VOICES +### DIPHONE VOICES # American English male speaker (KAL), residual excited LPC diphone database -Source200: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festvox_kallpc16k.tar.gz +Source200: %{baseURL}/festvox_kallpc16k.tar.gz # Same voice at lower quality -Source201: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festvox_kallpc8k.tar.gz +Source201: %{baseURL}/festvox_kallpc8k.tar.gz # American English male speaker, residual excited LPC diphone database -Source202: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festvox_kedlpc16k.tar.gz +Source202: %{baseURL}/festvox_kedlpc16k.tar.gz # Same voice at lower quality -Source203: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festvox_kedlpc8k.tar.gz +Source203: %{baseURL}/festvox_kedlpc8k.tar.gz # Castilian Spanish male speaker, residual excited LPC diphone database -Source204: ftp://ftp.cstr.ed.ac.uk/pub/festival/%{version}/festvox_ellpc11k.tar.gz +Source204: %{baseURL}/festvox_ellpc11k.tar.gz + +### HTS VOICES (use Nagoya Institute of Technology's HTS based synthesizer) +# US English male ("bdl") +Source210: %{baseURL}/festvox_cmu_us_bdl_arctic_hts.tar.gz +# US English female ("slt") +Source211: %{baseURL}/festvox_cmu_us_slt_arctic_hts.tar.gz +# Canadian English male ("jmk") using US English +Source212: %{baseURL}/festvox_cmu_us_jmk_arctic_hts.tar.gz +# Scottish English male ("awb") using US English +Source213: %{baseURL}/festvox_cmu_us_awb_arctic_hts.tar.gz + +### Multisyn voices left out because they're ~ 100MB each. + +### MBROLA voices left out, because they require MBROLA, which ain't free. + # Fix up various locations to be more FSSTND compliant -Patch: festival-1.4.1-fsstnd.patch +Patch0: festival-1.95-fsstnd.patch # Set defaults to American English instead of British English - the OALD # dictionary (free for non-commercial use only) is needed for BE support -Patch1: festival-american.patch +Patch1: festival-1.95-american.patch # Whack some buildroot references Patch2: festival-buildroot.patch # Use shared libraries -Patch3: festival-1.4.2-shared-build.patch +Patch3: festival-1.95-shared-build.patch -# Add some useful words to the dictionary... -Patch10: CMU-redhat.patch - -# Translate this strange pseudocode to real C++ -Patch20: speech_tools-1.2.2-c++.patch -Patch21: festival-1.4.2-c++.patch +# mattdm: this is a hack to make the shared libraries build with actual +# sonames. I'm not sure I'm doing the right thing here, but this *does* +# make it work. Someone should double check me. +Patch30: festival-1.95-sonamehack.patch URL: http://www.cstr.ed.ac.uk/projects/festival/ Group: Applications/Multimedia -License: BSD +License: X11-style BuildRoot: %{_tmppath}/%{name}-%{version}-root -ExclusiveArch: i386 sparc +# Try turning this off. +# ExclusiveArch: i386 sparc # readlink from kpathsea BuildRequires: tetex BuildRequires: libtermcap-devel @@ -82,18 +104,16 @@ tar xzf %{SOURCE2} ln -sf festival/speech_tools ../speech_tools -%patch -p1 -b .fsstnd -#patch1 -p1 -b .americandefault +%patch0 -p1 -b .fsstnd +%patch1 -p1 -b .americandefault %patch2 -p1 -%patch3 -p0 -%patch20 -p0 -%patch21 -p1 +%patch3 -p1 +%patch30 -p1 -b .soname # zero length - -rm festdoc-%{version}/speech_tools/doc/index_html.jade -rm festdoc-%{version}/speech_tools/doc/examples_gen/error_example_section.sgml -rm festdoc-%{version}/speech_tools/doc/tex_stuff.jade +rm festdoc-%{docversion}/speech_tools/doc/index_html.jade +rm festdoc-%{docversion}/speech_tools/doc/examples_gen/error_example_section.sgml +rm festdoc-%{docversion}/speech_tools/doc/tex_stuff.jade @@ -110,7 +130,7 @@ make popd %configure -make +FTLIBDIR=%{_datadir}/festival make mkdir DATA.TMP cd DATA.TMP @@ -121,7 +141,11 @@ tar xzf %{SOURCE201} tar xzf %{SOURCE202} tar xzf %{SOURCE203} tar xzf %{SOURCE204} -patch -p0 <%{PATCH10} +tar xzf %{SOURCE210} +tar xzf %{SOURCE211} +tar xzf %{SOURCE212} +tar xzf %{SOURCE213} + cd festival/lib/dicts/cmu make cd ../../.. @@ -129,56 +153,65 @@ cd ../../.. %install export PATH=`pwd`/src/main:$PATH export LD_LIBRARY_PATH=`pwd`/speech_tools/lib:$PATH -mkdir -p $RPM_BUILD_ROOT/usr/bin $RPM_BUILD_ROOT/usr/lib +mkdir -p $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_libdir} $RPM_BUILD_ROOT%{_libexecdir}/speech-tools pushd speech_tools rm -f bin/Makefile -cp -a bin/* $RPM_BUILD_ROOT/usr/bin -cp -a lib/lib*.a lib/lib*.so* $RPM_BUILD_ROOT/usr/lib +cp -a bin/* $RPM_BUILD_ROOT%{_libexecdir}/speech-tools +cp -a lib/lib*.a lib/lib*.so* $RPM_BUILD_ROOT%{_libdir} popd -mkdir -p $RPM_BUILD_ROOT/usr/share/festival -mv DATA.TMP/festival/lib/voices $RPM_BUILD_ROOT/usr/share/festival -mv DATA.TMP/festival/lib/dicts $RPM_BUILD_ROOT/usr/share/festival +mkdir -p $RPM_BUILD_ROOT%{_datadir}/festival +mv DATA.TMP/festival/lib/voices $RPM_BUILD_ROOT%{_datadir}/festival +mv DATA.TMP/festival/lib/dicts $RPM_BUILD_ROOT%{_datadir}/festival rm -f lib/Makefile lib/*.fsstnd lib/*.americandefault bin/Makefile -mv lib/* $RPM_BUILD_ROOT/usr/share/festival -mv bin/* $RPM_BUILD_ROOT/usr/bin +mv lib/* $RPM_BUILD_ROOT%{_datadir}/festival +mv bin/* $RPM_BUILD_ROOT%{_bindir} # We want the real festival, not the wrapper script -rm -f $RPM_BUILD_ROOT/usr/bin/Makefile +rm -f $RPM_BUILD_ROOT%{_bindir}/Makefile mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1 cp -a doc/*.1 $RPM_BUILD_ROOT%{_mandir}/man1 -mkdir -p $RPM_BUILD_ROOT/usr/include/speech_tools -mkdir -p $RPM_BUILD_ROOT/usr/include/festival -cp -a src/include/* $RPM_BUILD_ROOT/usr/include/festival -cp -aR speech_tools/include/* $RPM_BUILD_ROOT/usr/include/speech_tools -cp -a src/lib/libFestival.a $RPM_BUILD_ROOT/usr/lib +mkdir -p $RPM_BUILD_ROOT%{_includedir}/speech_tools +mkdir -p $RPM_BUILD_ROOT%{_includedir}/festival +cp -a src/include/* $RPM_BUILD_ROOT%{_includedir}/festival +cp -aR speech_tools/include/* $RPM_BUILD_ROOT%{_includedir}/speech_tools +cp -a src/lib/libFestival.a $RPM_BUILD_ROOT%{_libdir} # symlinks into buildtree evil -for i in $RPM_BUILD_ROOT/usr/bin/*; do +for i in $RPM_BUILD_ROOT%{_libexecdir}/speech-tools/*; do + if [ -h "$i" ]; then + a=`readlink "$i"` + rm -f "$i" + cp -a "$a" $RPM_BUILD_ROOT%{_libexecdir}/speech-tools/ + fi +done +for i in $RPM_BUILD_ROOT%{_bindir}/*; do if [ -h "$i" ]; then a=`readlink "$i"` rm -f "$i" - cp -a "$a" $RPM_BUILD_ROOT/usr/bin/ + cp -a "$a" $RPM_BUILD_ROOT%{_bindir}/ fi done # Remove some files we don't need -rm -rf $RPM_BUILD_ROOT/usr/include/speech_tools/win32 -rm -rf $RPM_BUILD_ROOT/usr/include/speech_tools/Makefile -rm -rf $RPM_BUILD_ROOT/usr/include/festival/Makefile -rm -f $RPM_BUILD_ROOT/usr/share/festival/etc/unknown_RedHatLinux/.made -rm -f $RPM_BUILD_ROOT/usr/bin/{est_gdb,est_examples,est_program} +rm -rf $RPM_BUILD_ROOT%{_includedir}/speech_tools/win32 +rm -rf $RPM_BUILD_ROOT%{_includedir}/speech_tools/Makefile +rm -rf $RPM_BUILD_ROOT%{_includedir}/festival/Makefile +rm -f $RPM_BUILD_ROOT%{_datadir}/festival/etc/unknown_RedHatLinux/.made +rm -f $RPM_BUILD_ROOT%{_bindir}/{est_gdb,est_examples,est_program} +rm -f $RPM_BUILD_ROOT%{_libexecdir}/speech-tools/{build_docbook_index,cxx_to_docbook} # This shouldn't be in the tarball -pushd festdoc-%{version}/speech_tools/doc -rm -fr CVS arch_doc/CVS man/CVS speechtools/arch_doc/CVS +pushd festdoc-%{docversion}/speech_tools/doc + rm -fr CVS arch_doc/CVS man/CVS speechtools/arch_doc/CVS + rm -f .*_made .speechtools_html .tex_done popd # Fix up the headers to look for other includes where we want them, not # where they're supposed to be in the source tree # There is probably a better way to do this, I'm not (yet) a sed expert. # What this does is, basically, replacing "EST_*.h" with . -for i in `find $RPM_BUILD_ROOT/usr/include/festival/ -type f` `find $RPM_BUILD_ROOT/usr/include/speech_tools/ -type f`; do +for i in `find $RPM_BUILD_ROOT%{_includedir}/festival/ -type f` `find $RPM_BUILD_ROOT%{_includedir}/speech_tools/ -type f`; do sed -e 's,"EST.*\.h",\,g' -e 's,speech_tools/\",speech_tools/,g' \ -e 's,"siod.*\.h",\,g' -e 's,speech_tools/\",speech_tools/,g' \ -e 's,"instantiate/.*\.h",\,g' -e 's,speech_tools/instantiate/\",speech_tools/instantiate/,g' -e 's,"instantiate,instantiate,g' \ @@ -193,12 +226,12 @@ for i in `find $RPM_BUILD_ROOT/usr/include/festival/ -type f` `find $RPM_BUILD_R done mkdir $RPM_BUILD_ROOT%{_infodir} -cp -p festdoc-%{version}/festival/info/* $RPM_BUILD_ROOT%{_infodir} +cp -p festdoc-%{docversion}/festival/info/* $RPM_BUILD_ROOT%{_infodir} rm ../speech_tools # Remove the spanish voices until we get clarification on the license -rm -rf $RPM_BUILD_ROOT/usr/share/festival/voices/spanish/ +rm -rf $RPM_BUILD_ROOT%{_datadir}/festival/voices/spanish/ %clean rm -rf $RPM_BUILD_ROOT @@ -216,18 +249,18 @@ fi %files %defattr(-,root,root) %doc ACKNOWLEDGMENTS COPYING INSTALL NEWS README -%doc festdoc-%{version}/festival/html/*html -#%doc festdoc-%{version}/festival/info -#%doc festdoc-%{version}/festival/festival.ps +%doc festdoc-%{docversion}/festival/html/*html %{_infodir}/* %{_bindir}/* +%dir %{_libexecdir}/speech-tools +%{_libexecdir}/speech-tools/* %{_datadir}/festival %{_libdir}/*.so.* %{_mandir}/man1/* %files devel %defattr(-,root,root) -%doc festdoc-%{version}/speech_tools +%doc festdoc-%{docversion}/speech_tools %{_libdir}/*.a %{_libdir}/*.so %dir %{_includedir}/speech_tools @@ -236,6 +269,43 @@ fi %{_includedir}/festival/* %changelog +* Fri Feb 25 2005 - 1.95-1 +- patch from Matthew Miller to update to 1.95. Full changelog below + +* Mon Feb 7 2005 Matthew Miller 1.95-0.mattdm8 +- put speech-tools binaries in /usr/libexec/speech-tools so as to not + clutter /usr/bin. Another approach would be to make speech-tools a + separate package and to make these utilities a subpackage of that. +- macro-ize /usr/bin, /usr/lib, /usr/include + +* Sun Feb 6 2005 Matthew Miller 1.95-0.mattdm6 +- worked on this some more +- made actually work -- put back rest of fsstnd patch which I had broken +- made kludge for lack of sonames in shared libraries -- I think I did the + right thing +- put back american as the default -- british dicts are non-free. + +* Wed Jan 5 2005 Matthew Miller 1.95-0.mattdm1 +- preliminary update to 1.95 beta +- add really nice CMU_ARCTIC HTS voices, which is the whole point of wanting + to do this. (They have a free license.) +- switch to festvox.org north american upstream urls +- keep old doc files -- there's no new ones yet. +- add comment to specfile about reason for lack of OALD (British) voices -- + they've got a more restrictive license. +- change license to "X11-style", because that's how they describe it. +- remove exclusivearch. I dunno if this builds on other archs, but I + also don't know why it wouldn't. +- fancier buildroot string, 'cause hey, why not. +- more "datadir" macros +- remove most of Patch0 (fsstnd) -- can be done by setting variables instead. + there's some bits in speechtools still, though +- update Patch3 (shared-build) +- don't apply patches 20 and 21 -- no longer needed. +- disable adding "FreeBSD" and "OpenBSD" to the dictionary for now. Probably + a whole list of geek words should be added. Also, the patch was applied + in an icky kludgy way. + * Thu Jul 29 2004 Miloslav Trmac - 1.4.2-25 - Update for gcc 3.4 diff --git a/sources b/sources index 6a665e9..f41a082 100644 --- a/sources +++ b/sources @@ -1,10 +1,8 @@ faabc25a6c1b11854c41adc257c47bdb festdoc-1.4.2.tar.gz -4a46160fdda29188e0c4ee51b41c5695 festival-1.4.2-release.tar.gz -a3ffcd09dcbf1306fdef3c84c1c521d6 festlex_CMU.tar.gz -742c266e4c4978fae2b5c1bf6f549eb4 festlex_POSLEX.tar.gz -e96a97644d36fcb89952ca65c283cea3 festvox_ellpc11k.tar.gz -abbd12e1d04ecdcae07f1d0044f3a947 festvox_kallpc16k.tar.gz -d3b750bd2fdcc8dde9da458bcc00fe74 festvox_kallpc8k.tar.gz -35d4a2f377d05913ddae61db542afca1 festvox_kedlpc16k.tar.gz -9b9c7419b4d311c5bdec3193fc3930cd festvox_kedlpc8k.tar.gz 34c7e43480612ef8ecc5d3bdf1b46668 speech_tools-1.2.2-release.tar.gz +65130b3c466f1b9f5ea3d2ea211cf168 festvox_cmu_us_awb_arctic_hts.tar.gz +43283634ecceecaa4bb10277343b2852 festvox_cmu_us_bdl_arctic_hts.tar.gz +e8bd1298ac7aad7d752c0bdfe9c9287b festvox_cmu_us_jmk_arctic_hts.tar.gz +28166834ae3b9e5dc5e2ef3476fb56c3 festvox_cmu_us_slt_arctic_hts.tar.gz +4a0a58d8c4bafaee9f0a913372ded8bd speech_tools-1.2.95-beta.tar.gz +0a44e30f922fa57ed1a7aa437baf4dd6 festival-1.95-beta.tar.gz