head 1.11;
access;
symbols;
locks; strict;
comment @-- @;
1.11
date 2009.04.18.13.10.15; author rse; state Exp;
branches;
next 1.10;
commitid 4pHXU27WTIGCZuKt;
1.10
date 2008.03.23.08.43.29; author rse; state Exp;
branches;
next 1.9;
commitid fKlwuAUP513I8eWs;
1.9
date 2008.03.21.16.34.48; author rse; state Exp;
branches;
next 1.8;
commitid VYxWLAtedKUlO0Ws;
1.8
date 2008.03.21.16.15.29; author rse; state Exp;
branches;
next 1.7;
commitid 7HpxTDL1cX5LH0Ws;
1.7
date 2008.03.21.15.51.17; author rse; state Exp;
branches;
next 1.6;
commitid ZlZM3fs7S9tsz0Ws;
1.6
date 2008.03.21.11.30.05; author rse; state Exp;
branches;
next 1.5;
commitid I4qZMlumTabQ7ZVs;
1.5
date 2008.03.20.23.26.57; author rse; state Exp;
branches;
next 1.4;
commitid IOeuhoqJph6L7VVs;
1.4
date 2008.03.20.22.53.25; author rse; state Exp;
branches;
next 1.3;
commitid Ypr1PmGoKElgWUVs;
1.3
date 2008.03.20.16.41.33; author rse; state Exp;
branches;
next 1.2;
commitid 1t0uM8JWyrNGSSVs;
1.2
date 2008.03.20.14.57.35; author rse; state Exp;
branches;
next 1.1;
commitid FyLzZeJY34e2jSVs;
1.1
date 2008.03.20.14.55.28; author rse; state Exp;
branches;
next ;
commitid X1p8u1K2gvniiSVs;
desc
@@
1.11
log
@bump years in copyright messages
@
text
@##
## festival.spec -- OpenPKG RPM Package Specification
## Copyright (c) 2000-2009 OpenPKG Foundation e.V.
##
## Permission to use, copy, modify, and distribute this software for
## any purpose with or without fee is hereby granted, provided that
## the above copyright notice and this permission notice appear in all
## copies.
##
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
## SUCH DAMAGE.
##
# package versions
%define V_festival 1.96
%define V_speech_tools 1.2.96
%define V_ogireslpc 2.2
%define V_ogilexicon 2.2
%define V_ogivoiceas 2.3
%define V_ogivoicemwm5 2.3
%define V_ogivoiceaec 2.3
%define V_ogivoicejph 2.3
%define V_ogivoicetll 2.3
%define V_ogivoicerab 2.1
# package information
Name: festival
Summary: Speech Synthesis System
URL: http://www.cstr.ed.ac.uk/projects/festival/
Vendor: University of Edinburgh
Packager: OpenPKG Foundation e.V.
Distribution: OpenPKG Community
Class: EVAL
Group: Audio
License: X11-style
Version: %{V_festival}
Release: 20080323
# package options
%option with_ogi no
# list of sources
Source0: http://festvox.org/packed/festival/%{V_festival}/festival-%{V_festival}-beta.tar.gz
Source1: http://festvox.org/packed/festival/%{V_festival}/speech_tools-%{V_speech_tools}-beta.tar.gz
Source2: http://festvox.org/packed/festival/%{V_festival}/festlex_CMU.tar.gz
Source3: http://festvox.org/packed/festival/%{V_festival}/festlex_POSLEX.tar.gz
Source4: http://festvox.org/packed/festival/%{V_festival}/festlex_OALD.tar.gz
Source5: http://festvox.org/packed/festival/%{V_festival}/festvox_kallpc16k.tar.gz
Source6: http://festvox.org/packed/festival/%{V_festival}/festvox_kedlpc16k.tar.gz
Source7: http://festvox.org/packed/festival/%{V_festival}/festvox_kedlpc8k.tar.gz
Source8: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_awb_arctic_hts.tar.gz
Source9: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_bdl_arctic_hts.tar.gz
Source10: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_jmk_arctic_hts.tar.gz
Source11: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_slt_arctic_hts.tar.gz
Source12: http://www.cslu.ogi.edu/tts/download/data/OGIresLPC-%{V_ogireslpc}.tar.gz
Source13: http://www.cslu.ogi.edu/tts/download/data/OGIlexicon-%{V_ogilexicon}.tar.gz
Source14: http://www.cslu.ogi.edu/tts/download/data/voice_as_di_%{V_ogivoiceas}.tar.gz
Source15: http://www.cslu.ogi.edu/tts/download/data/voice_mwm5_di_%{V_ogivoicemwm5}.tar.gz
Source16: http://www.cslu.ogi.edu/tts/download/data/voice_aec_di_%{V_ogivoiceaec}.tar.gz
Source17: http://www.cslu.ogi.edu/tts/download/data/voice_jph_di_%{V_ogivoicejph}.tar.gz
Source18: http://www.cslu.ogi.edu/tts/download/data/voice_tll_di_%{V_ogivoicetll}.tar.gz
Source19: http://www.cslu.ogi.edu/tts/download/data/voice_ogirab_di_%{V_ogivoicerab}.tar.gz
Source20: rc.festival
Source21: festival-init.scm
Source22: festival-vars.scm
Patch0: festival.patch
# build information
Prefix: %{l_prefix}
BuildRoot: %{l_buildroot}
BuildPreReq: OpenPKG, openpkg >= 20040130, make, gcc, gcc::with_cxx = yes
PreReq: OpenPKG, openpkg >= 20040130, opensp
AutoReq: no
AutoReqProv: no
%description
Festival offers a general framework for building speech synthesis
systems as well as including examples of various modules. As a whole
it offers full text to speech through a number APIs. Festival is
multi-lingual though English is the most advanced language. The
system is written in C++ and uses the Edinburgh Speech Tools Library
(EST) for low level architecture and has a Scheme (SIOD) based
command interpreter for control.
%track
prog festival = {
version = %{version}
url = http://festvox.org/packed/festival/
regex = (1\.\d+|2\.\d+)/
}
%prep
%setup -q -c
%setup -q -T -D -a 1
%setup -q -T -D -a 2
%setup -q -T -D -a 3
%setup -q -T -D -a 4
%setup -q -T -D -a 5
%setup -q -T -D -a 6
%setup -q -T -D -a 7
%setup -q -T -D -a 8
%setup -q -T -D -a 9
%setup -q -T -D -a 10
%setup -q -T -D -a 11
%if "%{with_ogi}" == "yes"
%setup -q -T -D -a 12
%setup -q -T -D -a 13
%setup -q -T -D -a 14
%setup -q -T -D -a 15
%setup -q -T -D -a 16
%setup -q -T -D -a 17
%setup -q -T -D -a 18
%setup -q -T -D -a 19
%endif
%patch -p0
%build
# expand variables in patched sources
%{l_shtool} subst %{l_value -s -a} \
festival/lib/init.scm \
festival/lib/tts.scm \
festival/lib/voices.scm
# optionally activate OGI extension
%if "%{with_ogi}" == "yes"
( echo "ALSO_INCLUDE += OGIcommon OGIeffect OGIinsert OGIdbase OGIresLPC"
) >>festival/config/config.in
%{l_shtool} subst \
-e 's;^\(OPTIONAL.*\);\1 OGIcommon OGIeffect OGIinsert OGIdbase OGIresLPC;' \
festival/src/modules/Makefile
%endif
# support additional platforms
cp speech_tools/config/systems/ix86_FreeBSD.mak \
speech_tools/config/systems/unknown_FreeBSD.mak
cp speech_tools/config/systems/ix86_SunOS5.mak \
speech_tools/config/systems/unknown_SunOS5.mak
cp festival/config/systems/ix86_FreeBSD.mak \
festival/config/systems/unknown_FreeBSD.mak
cp festival/config/systems/ix86_SunOS5.mak \
festival/config/systems/unknown_SunOS5.mak
# build speech tools
( cd speech_tools
CC="%{l_cc}" \
CXX="%{l_cxx}" \
CFLAGS="%{l_cflags -O}" \
CXXFLAGS="%{l_cxxflags -O}" \
CPPFLAGS="%{l_cppflags}" \
LDFLAGS="%{l_ldflags}" \
./configure \
--prefix=%{l_prefix}
%{l_make} %{l_mflags}
) || exit $?
# build festival toolkit
( cd festival
( echo "FTLIBDIR=%{l_prefix}/lib/festival"
) >>config/config.in
CC="%{l_cc}" \
CXX="%{l_cxx}" \
CFLAGS="%{l_cflags -O}" \
CXXFLAGS="%{l_cxxflags -O}" \
CPPFLAGS="%{l_cppflags}" \
LDFLAGS="%{l_ldflags}" \
./configure \
--prefix=%{l_prefix}
%{l_make} %{l_mflags}
) || exit $?
%install
# create installation hierarchy
rm -rf $RPM_BUILD_ROOT
%{l_shtool} mkdir -f -p -m 755 \
$RPM_BUILD_ROOT%{l_prefix}/bin \
$RPM_BUILD_ROOT%{l_prefix}/man/man1 \
$RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
$RPM_BUILD_ROOT%{l_prefix}/etc/festival \
$RPM_BUILD_ROOT%{l_prefix}/lib/festival \
$RPM_BUILD_ROOT%{l_prefix}/var/festival
# install program files
%{l_shtool} install -c -m 755 \
festival/lib/etc/*/audsp \
$RPM_BUILD_ROOT%{l_prefix}/bin/festival_audsp
%{l_shtool} install -c -m 755 \
festival/src/main/festival \
festival/src/main/festival_client \
$RPM_BUILD_ROOT%{l_prefix}/bin/
%{l_shtool} install -c -m 755 \
-e 's;\(exec \).*\(/bin/festival --script\);\1%{l_prefix}\2;' \
festival/examples/saytime \
festival/examples/text2pos \
festival/examples/text2wave \
$RPM_BUILD_ROOT%{l_prefix}/bin/
%{l_shtool} install -c -m 644 \
festival/doc/festival.1 \
festival/doc/festival_client.1 \
festival/doc/text2wave.1 \
$RPM_BUILD_ROOT%{l_prefix}/man/man1/
# install library files
chmod -R u+w,a+r,og-w festival/lib
find festival/lib -type d -print | xargs chmod 755
mv festival/lib/voices/us/* festival/lib/voices/english/
rmdir festival/lib/voices/us
cp -rp festival/lib/* $RPM_BUILD_ROOT%{l_prefix}/lib/festival/
rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib/festival/etc
# install default site configuration
%{l_shtool} install -c -m 644 \
%{SOURCE festival-vars.scm} \
%{SOURCE festival-init.scm} \
$RPM_BUILD_ROOT%{l_prefix}/etc/festival/
# install run-command script
%{l_shtool} install -c -m 755 %{l_value -s -a} \
%{SOURCE rc.festival} \
$RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
# determine installation files
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
%{l_files_std} \
'%config %{l_prefix}/etc/festival/*' \
'%attr(-,%{l_nusr},%{l_ngrp}) %{l_prefix}/var/festival'
%files -f files
%clean
rm -rf $RPM_BUILD_ROOT
%post
# after upgrade, restart service
[ $1 -eq 2 ] || exit 0
eval `%{l_rc} festival status 2>/dev/null`
[ ".$festival_active" = .yes ] && %{l_rc} festival restart
exit 0
%preun
# before erase, stop service and remove log files
[ $1 -eq 0 ] || exit 0
%{l_rc} festival stop 2>/dev/null
rm -f $RPM_INSTALL_PREFIX/var/festival/* >/dev/null 2>&1 || true
exit 0
@
1.10
log
@try to fix tracking
@
text
@d3 1
a3 1
## Copyright (c) 2000-2008 OpenPKG Foundation e.V.
@
1.9
log
@another round to get Festival building under AMD64 platforms
@
text
@d47 1
a47 1
Release: 20080321
d98 2
a99 2
url = http://www.cstr.ed.ac.uk/downloads/festival/
regex = (1\.\d+|2\.\d+)
@
1.8
log
@try to get the stuff working in a more portable way
@
text
@d144 4
@
1.7
log
@support AMD64 platforms, too
@
text
@d143 1
a143 1
# support AMD64 platforms
d145 1
a145 1
festival/config/systems/amd64_FreeBSD.mak
d147 1
a147 1
festival/config/systems/amd64_SunOS5.mak
@
1.6
log
@add optional OGI stuff
@
text
@d143 6
@
1.5
log
@cleanup packaging; add text2wav(1) manual page; remove MBROLA based voices as MBROLA is an ancient binary-only stuff
@
text
@d27 8
d49 3
d65 11
a75 3
Source12: rc.festival
Source13: festival-init.scm
Source14: festival-vars.scm
d115 10
d134 9
@
1.4
log
@simplify packaging and as a intended side-effect fix the text2wav(1) tool
@
text
@d39 1
a39 1
Release: 20080320
d50 7
a56 10
Source8: http://festvox.org/packed/festival/%{V_festival}/festvox_us1.tar.gz
Source9: http://festvox.org/packed/festival/%{V_festival}/festvox_us2.tar.gz
Source10: http://festvox.org/packed/festival/%{V_festival}/festvox_us3.tar.gz
Source11: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_awb_arctic_hts.tar.gz
Source12: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_bdl_arctic_hts.tar.gz
Source13: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_jmk_arctic_hts.tar.gz
Source14: http://festvox.org/packed/festival/%{V_festival}/festvox_cmu_us_slt_arctic_hts.tar.gz
Source15: rc.festival
Source16: festival-init.scm
Source17: festival-vars.scm
a95 3
%setup -q -T -D -a 12
%setup -q -T -D -a 13
%setup -q -T -D -a 14
d101 3
a103 1
festival/lib/init.scm
a151 4
%{l_shtool} install -c -m 644 \
festival/doc/festival.1 \
festival/doc/festival_client.1 \
$RPM_BUILD_ROOT%{l_prefix}/man/man1/
d158 5
@
1.3
log
@first cut for adding Festival daemon/server support
@
text
@d124 2
a144 1
$RPM_BUILD_ROOT%{l_prefix}/libexec/festival \
d151 1
a151 1
$RPM_BUILD_ROOT%{l_prefix}/libexec/festival/
d155 1
a155 16
$RPM_BUILD_ROOT%{l_prefix}/libexec/festival/
( echo "#!/bin/sh"
echo "PATH=%{l_prefix}/libexec/festival:\$PATH"
echo "export PATH"
echo "exec %{l_prefix}/libexec/festival/festival \\"
echo " --libdir %{l_prefix}/lib/festival \$*"
) >festival.sh
( echo "#!/bin/sh"
echo "PATH=%{l_prefix}/libexec/festival:\$PATH"
echo "export PATH"
echo "exec %{l_prefix}/libexec/festival/festival_client \$*"
) >festival_client.sh
%{l_shtool} install -c -m 755 \
festival.sh $RPM_BUILD_ROOT%{l_prefix}/bin/festival
%{l_shtool} install -c -m 755 \
festival_client.sh $RPM_BUILD_ROOT%{l_prefix}/bin/festival_client
@
1.2
log
@improve description
@
text
@d57 3
d66 1
a66 1
PreReq: OpenPKG, openpkg >= 20040130
d105 4
d110 10
a119 10
( cd speech_tools
CC="%{l_cc}" \
CXX="%{l_cxx}" \
CFLAGS="%{l_cflags -O}" \
CXXFLAGS="%{l_cxxflags -O}" \
CPPFLAGS="%{l_cppflags}" \
LDFLAGS="%{l_ldflags}" \
./configure \
--prefix=%{l_prefix}
%{l_make} %{l_mflags}
d123 10
a132 10
( cd festival
CC="%{l_cc}" \
CXX="%{l_cxx}" \
CFLAGS="%{l_cflags -O}" \
CXXFLAGS="%{l_cxxflags -O}" \
CPPFLAGS="%{l_cppflags}" \
LDFLAGS="%{l_ldflags}" \
./configure \
--prefix=%{l_prefix}
%{l_make} %{l_mflags}
d141 2
d144 2
a145 1
$RPM_BUILD_ROOT%{l_prefix}/lib/festival
d155 5
a159 5
( echo "#!/bin/sh"
echo "PATH=%{l_prefix}/libexec/festival:\$PATH"
echo "export PATH"
echo "exec %{l_prefix}/libexec/festival/festival \\"
echo " --libdir %{l_prefix}/lib/festival \$*"
d161 4
a164 5
( echo "#!/bin/sh"
echo "PATH=%{l_prefix}/libexec/festival:\$PATH"
echo "export PATH"
echo "exec %{l_prefix}/libexec/festival/festival_client \\"
echo " %{l_prefix}/lib/festival \$*"
d184 2
d188 2
a189 3
( echo "(set! system-voice-path '(\"%{l_prefix}/lib/festival/voices\"))"
echo "(set! sgml_parse_progname \"nsgmls\")"
) >sitevars.scm
d191 8
a198 2
sitevars.scm \
$RPM_BUILD_ROOT%{l_prefix}/lib/festival/sitevars.scm
d201 4
a204 1
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
d211 14
@
1.1
log
@first cut for packaging the Festival speech synthesizing tool (can be used from within Asterisk PBX to on-the-fly generate waves based on configuration text)
@
text
@d70 5
a74 9
it offers full text to speech through a number APIs: from shell
level, though a Scheme command interpreter, as a C++ library, from
Java, and an Emacs interface. Festival is multi-lingual (currently
English (British and American), and Spanish) though English is the
most advanced. The system is written in C++ and uses the Edinburgh
Speech Tools Library for low level architecture and has a Scheme
(SIOD) based command interpreter for control. Documentation is given
in the FSF texinfo format which can generate, a printed manual, info
files and HTML.
@