+# TODO: kill ELF binary from %{_datadir}, see files
Summary: The Festival speech sythesis system
-Summary(pl): System syntezy mowy Festival
+Summary(pl.UTF-8): System syntezy mowy Festival
Name: festival
-Version: 1.4.2
-Release: 3
-License: GPL
+Version: 2.5.0
+Release: 1
+License: BSD-like (except for festival.el, which is on GPL)
Group: Applications/Sound
-Source0: http://www.cstr.ed.ac.uk/download/festival/%{version}/%{name}-%{version}-release.tar.gz
-Source1: http://www.cstr.ed.ac.uk/download/festival/%{version}/festvox_us1.tar.gz
-Source2: http://www.cstr.ed.ac.uk/download/festival/%{version}/festvox_us2.tar.gz
-Source3: http://www.cstr.ed.ac.uk/download/festival/%{version}/festvox_us3.tar.gz
-Source4: http://www.cstr.ed.ac.uk/download/festival/%{version}/festvox_en1.tar.gz
+Source0: http://www.festvox.org/packed/festival/2.5/%{name}-%{version}-release.tar.gz
+# Source0-md5: 6cc3730fc5175f04d4d2f05e6bbab6b5
Patch0: %{name}-config.patch
+Patch1: %{name}-pulse.patch
URL: http://www.cstr.ed.ac.uk/projects/festival/
-BuildRequires: speech_tools-devel
+BuildRequires: automake
+BuildRequires: speech_tools-devel >= 2.5
+Requires: festival-voice
+Requires: speech_tools >= 2.5
+Suggests: festival-voice-english-slt-cg
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%ifarch alpha
+%define fostype alpha_Linux
+%else
+%define fostype unknown_Linux
+%endif
+
%description
Festival offers a general framework for building speech synthesis
systems as well as including examples of various modules. As a whole
an Emacs interface. Festival is multi-lingual, though English is the
most advanced.
-%description -l pl
-Festival jest platform± przeznaczon± do budowania systemów syntezy
-mowy oraz do ³atwego testowania ró¿nych modu³ów sk³adaj±cych siê na
-syntezator mowy. Mo¿na te¿ u¿ywaæ programu jako maszynki czytaj±cej
-pliki tekstowe. Festival jest wielojêzyczny, lecz jêzyk angielski jest
+%description -l pl.UTF-8
+Festival jest platformą przeznaczoną do budowania systemów syntezy
+mowy oraz do łatwego testowania różnych modułów składających się na
+syntezator mowy. Można też używać programu jako maszynki czytającej
+pliki tekstowe. Festival jest wielojęzyczny, lecz język angielski jest
najbardziej zaawansowany.
%package devel
-Summary: Festival developement enviroment
-Summary(pl): Festival - ¶rodowidko rozwojowe
+Summary: Festival developement environment
+Summary(pl.UTF-8): Festival - środowidko rozwojowe
Group: Applications/Sound
%description devel
-Festival developement enviroment.
-
-%description devel -l pl
-Festival - ¶rodowisko rozwojowe.
-
-%package voices-english-mbrola-us
-Summary: Festival's files for voices us1, us2, us3
-Summary(pl): Pliki Festival do g³osów us1, us2, us3
-Group: Applications/Sound
-Requires: mbrola
-
-%description voices-english-mbrola-us
-Files needed to use us1, us2, us3 voices from mbrola packages.
-
-%description voices-english-mbrola-us -l pl
-Pliki potrzebne do u¿ycia g³osów us1, us2, us3 z pakietu mbrola.
-
-%package voices-english-mbrola-en
-Summary: Festival's files for voice en1
-Summary(pl): Pliki Festival do g³osu en1
-Group: Applications/Sound
-Requires: mbrola
-
-%description voices-english-mbrola-en
-Files needed to use en1 voice from mbrola packages.
+Festival developement environment.
-%description voices-english-mbrola-en -l pl
-Pliki potrzebne do u¿ycia g³osu en1 z pakietu mbrola.
+%description devel -l pl.UTF-8
+Festival - środowisko rozwojowe.
%prep
-%setup -q -n %{name} -b1 -b2 -b3 -b4
+%setup -q -n %{name}
%patch0 -p1
+%patch1 -p1
+
+ln -s %{_libdir}/speech_tools/base_class src/modules/MultiSyn
+ln -s %{_libdir}/speech_tools/config/modules/pulse_audio.mak config/modules
+
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r rm -v
%build
+cp -f /usr/share/automake/config.* .
+%{__perl} -pi -e 's,^EST=.*,EST=%{_libdir}/speech_tools,' config/config.in
%configure2_13
-%{__make} \
+%{__make} -j1 \
CC="%{__cc}" \
CXX="%{__cxx}" \
+ ECHO_N='printf "%%s"' \
OPTIMISE_CCFLAGS="%{rpmcflags}" \
OPTIMISE_CXXFLAGS="%{rpmcflags}" \
OPTIMISE_LINK="%{rpmldflags}" \
REQUIRED_LIBDEPS=
-# REQUIRED_LIBDPES is workaround not to need static speech_tools libraries
+# REQUIRED_LIBDEPS is workaround not to need static speech_tools libraries
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/%{name}/lib/{voices/english,dicts},%{_libdir},%{_includedir}/%{name},%{_mandir}/man1}
# bin
-install bin/festival_server* bin/text2wave $RPM_BUILD_ROOT%{_bindir}
-install src/main/festival{,_client} $RPM_BUILD_ROOT%{_bindir}
+install -p bin/festival_server* bin/text2wave $RPM_BUILD_ROOT%{_bindir}
+install -p src/main/festival{,_client} $RPM_BUILD_ROOT%{_bindir}
+cp -p doc/festival*.1 $RPM_BUILD_ROOT%{_mandir}/man1
# devel
-install src/lib/libFestival.a $RPM_BUILD_ROOT%{_libdir}
-install src/include/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}
+cp -p src/lib/libFestival.a $RPM_BUILD_ROOT%{_libdir}
+cp -p src/include/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}
# data
-cp -r lib config examples $RPM_BUILD_ROOT%{_datadir}/%{name}
-find $RPM_BUILD_ROOT%{_datadir}/%{name} -name Makefile -exec rm \{\} \;
-
-install doc/festival{,_client}.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -a lib config examples $RPM_BUILD_ROOT%{_datadir}/%{name}
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/festival/lib/etc/unknown_Linux/.made
+find $RPM_BUILD_ROOT%{_datadir}/%{name} -name Makefile | xargs rm -v
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc ACKNOWLEDGMENTS COPYING NEWS README
-%{_mandir}/man1/*
-%attr(755,root,root) %{_bindir}/*
+%doc ACKNOWLEDGMENTS COPYING NEWS README.md
+%attr(755,root,root) %{_bindir}/festival
+%attr(755,root,root) %{_bindir}/festival_client
+%attr(755,root,root) %{_bindir}/festival_server
+%attr(755,root,root) %{_bindir}/festival_server_control
+%attr(755,root,root) %{_bindir}/text2wave
+%{_mandir}/man1/festival.1*
+%{_mandir}/man1/festival_client.1*
%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/examples
%dir %{_datadir}/%{name}/lib
-%dir %{_datadir}/%{name}/lib/dicts
-%dir %{_datadir}/%{name}/lib/voices
-%dir %{_datadir}/%{name}/lib/voices/english
-%dir %{_datadir}/%{name}/lib/etc
-%dir %{_datadir}/%{name}/lib/etc/unknown_Linux
-%attr(755,root,root) %{_datadir}/%{name}/lib/etc/unknown_Linux/audsp
-%{_datadir}/%{name}/lib/etc/email_filter
-%{_datadir}/%{name}/lib/*.scm
-%{_datadir}/%{name}/lib/Sable.v0_2.dtd
+%{_datadir}/%{name}/lib/VCLocalRules
%{_datadir}/%{name}/lib/festival.el
%{_datadir}/%{name}/lib/sable-latin.ent
%{_datadir}/%{name}/lib/scfg_wsj_wp20.gram
%{_datadir}/%{name}/lib/sec.*.ngrambin
%{_datadir}/%{name}/lib/speech.properties
-%{_datadir}/%{name}/examples
+%{_datadir}/%{name}/lib/*.dtd
+%{_datadir}/%{name}/lib/*.scm
+%dir %{_datadir}/%{name}/lib/etc
+%{_datadir}/%{name}/lib/etc/email_filter
+%dir %{_datadir}/%{name}/lib/etc/%{fostype}
+# XXX: ELF binary, fix it!
+%attr(755,root,root) %{_datadir}/%{name}/lib/etc/%{fostype}/audsp
+%dir %{_datadir}/%{name}/lib/multisyn
+%{_datadir}/%{name}/lib/multisyn/*.scm
+# directories for festival data
+%dir %{_datadir}/%{name}/lib/dicts
%files devel
%defattr(644,root,root,755)
+%{_libdir}/libFestival.a
%{_includedir}/%{name}
-%{_libdir}/*
+%dir %{_datadir}/%{name}
%{_datadir}/%{name}/config
-
-%files voices-english-mbrola-us
-%defattr(644,root,root,755)
-%{_datadir}/%{name}/lib/voices/english/us1_mbrola
-%{_datadir}/%{name}/lib/voices/english/us2_mbrola
-%{_datadir}/%{name}/lib/voices/english/us3_mbrola
-
-%files voices-english-mbrola-en
-%defattr(644,root,root,755)
-%{_datadir}/%{name}/lib/voices/english/en1_mbrola