Sophie

Sophie

distrib > Mageia > 5 > x86_64 > by-pkgid > 58d9c6b7b29d9bf576a984938621beb0 > files > 16

festival-2.1-9.mga5.src.rpm

# we ship the 1.4.2 docs for now.
%define docversion 1.4.2
%define speechtoolsversion %version
%define oldstlibname %mklibname -d speech_tools %major
%define oldstdevname %mklibname -d -s speech_tools
%define major 2.1.1
%define libname %mklibname speech_tools %major
%define stringmajor 1.2
%define libnamestring %mklibname eststring %stringmajor
%define oldlibname %mklibname speech_tools 1
%define libnamedevel %mklibname speech_tools -d

Summary:	A free speech synthesizer 
Name:		festival
Version:	2.1
Release:	%mkrel 9
License:	BSD
Group:		Sound/Utilities
URL:		http://www.cstr.ed.ac.uk/projects/festival/
Source:	http://festvox.org/packed/%{name}/%{version}/%{name}-%{version}-release.tar.gz
Source1:	http://festvox.org/packed/%{name}/%{version}/speech_tools-%{speechtoolsversion}-release.tar.gz
Source2:	http://festvox.org/packed/%{name}/%{docversion}/festdoc-%{docversion}.tar.bz2
Source3:	siteinit.scm
Source4:	sitevars.scm
# Fix up various locations to be more FSSTND compliant
Patch0:		festival-1.4.1-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
# Additionally, prefer the smaller nitech hts voices.
Patch1:		festival-2.1-nitech-american.patch
# Whack some buildroot references
Patch2: festival_buildroot.patch
Patch3: festival.gcc47.patch

# (fc) 1.2.96-4mdv Fix a coding error (RH bug #162137) (Fedora)
Patch5: festival-1.96-speechtools-rateconvtrivialbug.patch
# (fc) 1.2.96-4mdv Link libs with libm, libtermcap, and libesd (RH bug #198190) (Fedora)
# (ahmad) 2.1-2.mga1 modify this patch so that we don't link against libesd,
# as esound is being phased out of the distro
# libtermcap isn't used any more, either
Patch6:		festival-2.1-speechtools-linklibswithotherlibs.patch
# For some reason, CXX is set to gcc on everything but Mac OS Darwin,
# where it's set to g++. Yeah, well. We need it to be right too.
Patch7:		festival-1.96-speechtools-ohjeezcxxisnotgcc.patch
# (fc) 1.2.96-5mdv build speech_tools as shared libraries (Fedora)
Patch8:		festival-1.96-speechtools-shared-build.patch
# (fc) 1.2.96-5mdv Look for speech tools here, not back there (Fedora)
Patch10:	festival-1.96-findspeechtools.patch
# (fc) 1.96-5mdv  Build main library as shared, not just speech-tools (Fedora)
Patch11:	festival-1.96-main-shared-build.patch
# (fc) 1.2.96-5mdv improve soname (Fedora)
Patch12:	festival-2.1-bettersonamehack.patch
# (fc) 
Patch15:	festival-finnish.patch
# Look for siteinit and sitevars in /etc/festival
Patch16: festival-1.96-etcsiteinit.patch
Patch17:	speech_tools-1.2.96-fix-str-fmt.patch
Patch18:	festival-2.1-mga-alsa-near-rates.patch
BuildRequires:	perl
BuildRequires:	pkgconfig(ncurses)
BuildRequires:	pkgconfig(alsa)
Requires:	%{name}-voice

%description
Festival is a general multi-lingual speech synthesis system developed
at CSTR. It offers a full text to speech system with various APIs, as
well as an environment for development and research of speech synthesis
techniques. It is written in C++ with a Scheme-based command interpreter
for general control.


%package -n speech_tools
Summary:	Miscellaneous utilities from the Edinburgh Speech Tools 
Group:		Sound/Utilities
Version:	%{speechtoolsversion}
Conflicts:	%{name} < 1.96-9mdv

%description -n speech_tools
Miscellaneous utilities from the Edinburgh Speech Tools. Unless you have a
specific need for one of these programs, you probably don't need to install
this.

%package	devel
Summary:	Static libraries and headers for %{name} text to speech
Group:		Development/C++
Requires:	%{name} = %{version}-%{release}
Requires:	speech_tools-devel

%description	devel
Festival is a general multi-lingual speech synthesis system developed
at CSTR. It offers a full text to speech system with various APIs, as
well as an environment for development and research of speech synthesis
techniques. It is written in C++ with a Scheme-based command interpreter
for general control.

This package contains the libraries and includes files necessary to develop
applications using %{name}.

%package -n	%{libname}
Summary:	Shared libraries for %{name} text to speech
Group:		System/Libraries
Version:	%{speechtoolsversion}
Requires:	speech_tools >= %{speechtoolsversion}-%{release}
Conflicts:	%{oldlibname} < %version

%description -n	%{libname}
Festival is a general multi-lingual speech synthesis system developed
at CSTR. It offers a full text to speech system with various APIs, as
well as an environment for development and research of speech synthesis
techniques. It is written in C++ with a Scheme-based command interpreter
for general control.

This package contains the libraries and includes files necessary for
applications that use %{name}.

%package -n	%{libnamestring}
Summary:	Shared libraries for %{name} text to speech
Group:		System/Libraries
Version:	%{speechtoolsversion}
Requires:	speech_tools >= %{speechtoolsversion}-%{release}
Conflicts:	%{oldlibname} < %version

%description -n	%{libnamestring}
Festival is a general multi-lingual speech synthesis system developed
at CSTR. It offers a full text to speech system with various APIs, as
well as an environment for development and research of speech synthesis
techniques. It is written in C++ with a Scheme-based command interpreter
for general control.

This package contains the libraries and includes files necessary for
applications that use %{name}.

%package -n	%{libnamedevel}
Summary:	Static libraries and headers for %{name} text to speech
Group:		Development/C++
Version:	%{speechtoolsversion}
Requires:	speech_tools = %{speechtoolsversion}-%{release}
Requires:	%{libname} = %{speechtoolsversion}-%{release}
Requires:	%{libnamestring} = %{speechtoolsversion}-%{release}
Provides:	speech_tools-devel = %{speechtoolsversion}-%{release}
Obsoletes:	%{oldstlibname} < %{version}
Obsoletes:	%{oldstdevname} < %{version}
Requires(post):	info-install
Requires(preun): info-install

%description -n	%{libnamedevel}
Festival is a general multi-lingual speech synthesis system developed
at CSTR. It offers a full text to speech system with various APIs, as
well as an environment for development and research of speech synthesis
techniques. It is written in C++ with a Scheme-based command interpreter
for general control.

This package contains the libraries and includes files necessary to develop
applications using %{name}.
 
%prep
%setup -q -a 1 -a 2 -n %{name}
%patch0 -p1 -b .fsstnd
# no backup extension, directory is copied during package install
%patch1 -p1 
%patch2 -p1 -b .buildroot
%patch3 -p0 -b .gcc
%patch5 -p1 -b .rateconvtrivialbug
%patch6 -p1 -b .linklibswithotherlibs
%patch7 -p1 -b .cxx
%patch8 -p1 -b .shared
# no backup extension, directory is copied during package install
%patch10 -p1 
# no backup extension, directory is copied during package install
%patch11 -p1 
%patch12 -p1 -b .bettersoname
# no backup extension, directory is copied during package install
%patch15 -p1 
# no backup extension, directory is copied during package install
%patch16 -p1 
%patch17 -p0
%patch18 -p1 -b .nearrates

# zero length
rm festdoc-1.4.2/speech_tools/doc/index_html.jade
rm festdoc-1.4.2/speech_tools/doc/examples_gen/error_example_section.sgml
rm festdoc-1.4.2/speech_tools/doc/tex_stuff.jade

# (gb) lib64 fixes, don't bother with a patch for now
perl -pi -e '/^REQUIRED_LIBRARY_DIR/ and s,/usr/lib,%{_libdir},' config/project.mak


%build

# build speech tools (and libraries)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/speech_tools/lib
cd speech_tools
  %configure2_5x
  # -fPIC 'cause we're building shared libraries and it doesn't hurt
  # -fno-strict-aliasing because of a couple of warnings about code
  #   problems; if $RPM_OPT_FLAGS contains -O2 or above, this puts
  #   it back. Once that problem is gone upstream, remove this for
  #   better optimization.
  make \
    CFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" \
    CXXFLAGS="$RPM_OPT_FLAGS  -fPIC -fno-strict-aliasing"
cd -

# build the main program
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/src/lib
# instead of doing this, maybe we should patch the make process
# so it looks in the right place explicitly:
export PATH=$(pwd)/bin:$PATH
%configure
make \
  CFLAGS="$RPM_OPT_FLAGS -fPIC" \
  CXXFLAGS="$RPM_OPT_FLAGS -fPIC" 

%check
# all tests must pass
cd speech_tools
#make CFLAGS="$RPM_OPT_FLAGS -fPIC -fno-strict-aliasing" \
#    CXXFLAGS="$RPM_OPT_FLAGS  -fPIC -fno-strict-aliasing" test | grep -v INCORRECT
cd ..

%install
# install speech tools libs, binaries, and include files
pushd speech_tools

  make INSTALLED_LIB=$RPM_BUILD_ROOT%{_libdir} make_installed_lib_shared
  # no thanks, static libs.
  rm -f $RPM_BUILD_ROOT%{_libdir}/*.a

  make INSTALLED_BIN=$RPM_BUILD_ROOT%{_bindir} make_installed_bin_static
  # this list of the useful programs in speech_tools comes from
  # upstream developer Alan W. Black; the other stuff is to be removed.
  pushd $RPM_BUILD_ROOT%{_bindir}
    ls |
    grep -Evw "ch_wave|ch_track|na_play|na_record|wagon|wagon_test" |
    grep -Evw "make_wagon_desc|pitchmark|pm|sig2fv|wfst_build" |
    grep -Evw "wfst_run|wfst_run" |
    xargs rm
  popd

  pushd include
    for d in $( find . -type d | grep -v win32 ); do
      make -w -C $d INCDIR=$RPM_BUILD_ROOT%{_includedir}/EST/$d install_incs
    done  
  popd

popd


install -d %{buildroot}%{_datadir}/%{name}/{voices/english,dicts}

# bin
make INSTALLED_BIN=$RPM_BUILD_ROOT%{_bindir} make_installed_bin_static
install -m 755 bin/text2wave $RPM_BUILD_ROOT%{_bindir}
#install bin/%%{name}_server* bin/text2wave %%{buildroot}%%{_bindir}
#install src/main/%%{name}{,_client} %%{buildroot}%%{_bindir}
# this is just nifty. and it's small.
install -m 755 examples/saytime $RPM_BUILD_ROOT%{_bindir}

# install the shared library
cp -a src/lib/libFestival.so* $RPM_BUILD_ROOT%{_libdir}

# devel
mkdir -p $RPM_BUILD_ROOT%{_includedir}/%{name}
install src/include/*.h %{buildroot}%{_includedir}/%{name}

# data
cp -r lib config examples %{buildroot}%{_datadir}/%{name}
find %{buildroot}%{_datadir}/%{name} -name Makefile -exec rm \{\} \;

# man pages
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
cp -a doc/*.1 $RPM_BUILD_ROOT%{_mandir}/man1

# info pages
mkdir -p $RPM_BUILD_ROOT%{_infodir}
cp festdoc-1.4.2/%{name}/info/* $RPM_BUILD_ROOT%{_infodir}

# lib: the bulk of the program -- the scheme stuff and so on
pushd lib
  mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/lib
  for f in *.scm %{name}.el *.ent *.gram *.dtd *.ngrambin speech.properties ; do
    install -m 644 $f $RPM_BUILD_ROOT%{_datadir}/%{name}/lib/
  done
  mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/lib/multisyn/
  install -m 644 multisyn/*.scm $RPM_BUILD_ROOT%{_datadir}/%{name}/lib/multisyn/
popd 

mv -f %{buildroot}/%{_datadir}/%{name}/lib/etc/unknown_RedHatLinux/audsp %{buildroot}/%{_bindir}
rm -Rf %{buildroot}/%{_datadir}/%{name}/lib/etc/
rm -f %{buildroot}%{_datadir}/%{name}/lib/VCLocalRules


# the actual /etc. :)
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
# use our version of this file
rm $RPM_BUILD_ROOT%{_datadir}/%{name}/lib/siteinit.scm 
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/siteinit.scm
install -m 644 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/sitevars.scm

sed -i -e 's,/projects/%{name}/lib,%{_datadir}/%{name},g' %{buildroot}/%{_datadir}/%{name}/lib/lexicons.scm

# the info pages contain no dir entry so the normal install macro can't be used
%post
if [ -f %{_infodir}/%{name}.info%{_extension} ]; then %__install_info %{_infodir}/%{name}.info%{_extension} --dir=%{_infodir}/dir --name=Festival --description="A text to speech system"; fi

%preun
%_remove_install_info %{name}.info

%files
%doc ACKNOWLEDGMENTS COPYING INSTALL NEWS README*
%doc festdoc-1.4.2/%{name}/html/*html
%doc festdoc-1.4.2/%{name}/%{name}.ps
%{_bindir}/audsp
%{_bindir}/%{name}
%{_bindir}/%{name}_client
%{_bindir}/%{name}_server
%{_bindir}/%{name}_server_control
%{_bindir}/text2wave
%{_bindir}/saytime
%{_libdir}/libFestival.so.%{version}*
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/lib
%{_datadir}/%{name}/lib/*.scm
%{_datadir}/%{name}/lib/%{name}.el
%{_datadir}/%{name}/lib/*.ent
%{_datadir}/%{name}/lib/*.gram
%{_datadir}/%{name}/lib/*.dtd
%{_datadir}/%{name}/lib/*.ngrambin
%{_datadir}/%{name}/lib/speech.properties
%{_datadir}/%{name}/dicts
%{_datadir}/%{name}/voices
%dir %{_datadir}/%{name}/lib/multisyn
%{_datadir}/%{name}/lib/multisyn/*.scm
%dir %{_datadir}/%{name}/examples
%{_datadir}/%{name}/examples/intro.text
%{_mandir}/man1/*
%{_infodir}/*.info*
%config(noreplace) %{_sysconfdir}/%{name}

%files devel
%doc festdoc-1.4.2/speech_tools
%{_libdir}/libFestival.so
%{_includedir}/%{name}
%{_datadir}/%{name}/config

%files -n speech_tools
%doc speech_tools/INSTALL speech_tools/README
%{_bindir}/ch_track
%{_bindir}/ch_wave
%{_bindir}/make_wagon_desc
%{_bindir}/na_play
%{_bindir}/na_record
%{_bindir}/pitchmark
%{_bindir}/pm
%{_bindir}/sig2fv
%{_bindir}/wagon
%{_bindir}/wagon_test
%{_bindir}/wfst_run
%{_bindir}/wfst_build
%{_datadir}/%{name}/examples

%files -n %{libname}
%doc speech_tools/README
%{_libdir}/libestbase.so.%{major}*
%{_libdir}/libestools.so.%{major}*

%files -n %libnamestring
%{_libdir}/libeststring.so.%{stringmajor}*

%files -n %{libnamedevel}
%{_includedir}/EST
%{_libdir}/libestbase.so
%{_libdir}/libestools.so
%{_libdir}/libeststring.so


%changelog
* Wed Oct 15 2014 umeabot <umeabot> 2.1-9.mga5
+ Revision: 739248
- Second Mageia 5 Mass Rebuild

* Tue Sep 16 2014 umeabot <umeabot> 2.1-8.mga5
+ Revision: 679157
- Mageia 5 Mass Rebuild

* Sat Oct 19 2013 umeabot <umeabot> 2.1-7.mga4
+ Revision: 529068
- Mageia 4 Mass Rebuild

* Tue Jul 02 2013 danf <danf> 2.1-6.mga4
+ Revision: 449628
- require libalsa2-devel at build time so ALSA support is built, avoiding
  the need for OSS drivers to get sound output
- use the pkgconfig form of -devel packages
- put info pages into the standard location
- removed obsolete termcap-devel requires from festival-devel

* Fri Jan 11 2013 umeabot <umeabot> 2.1-5.mga3
+ Revision: 350235
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Tue Jan 08 2013 barjac <barjac> 2.1-4.mga3
+ Revision: 342875
- fix unversioned explicit obsoletes
- use %%{name} macro
- tabs/spaces and indentation corrected
- rebuild for group change

* Sun Oct 14 2012 fwang <fwang> 2.1-3.mga3
+ Revision: 305334
- drop no-shared-data switch
- more patch
- more patch
- rediff gcc47 patch
- fix build with gcc 4.7
- update rpm group
- cleanup spec

* Sat May 07 2011 ahmad <ahmad> 2.1-3.mga1
+ Revision: 95888
- Change the speech_tools in the runtime libs to >= %%{speechtoolsversion}-%%{release}
  to eash major upgrades
- Add conflicts %%oldlibname to %%{libname}; I think this is necessary after the
  splitting of libeststring.so* in its own sub-package to ease upgrades

* Mon Feb 21 2011 ahmad <ahmad> 2.1-2.mga1
+ Revision: 55862
- drop esound-devel, phasing out esound from the distro
- drop patch4, we're removing esound-devel
- modify patch6 to not link against esound-devel

* Tue Jan 25 2011 misc <misc> 2.1-1.mga1
+ Revision: 38165
- clean old macros
- imported package festival


* Mon Dec 06 2010 Götz Waschk <waschk@mandriva.org> 2.1-1mdv2011.0
+ Revision: 611973
- new version (bug #61862)
- rediff patches 1,12
- drop patches 9,13,14,18
- split out library packages

* Thu Dec 02 2010 Oden Eriksson <oeriksson@mandriva.com> 1.96-13mdv2011.0
+ Revision: 605122
- rebuild

* Tue Mar 16 2010 Oden Eriksson <oeriksson@mandriva.com> 1.96-12mdv2010.1
+ Revision: 521121
- rebuilt for 2010.1

* Mon Oct 05 2009 Funda Wang <fwang@mandriva.org> 1.96-11mdv2010.0
+ Revision: 453852
- fix build with gcc 4.4

* Tue Apr 07 2009 Funda Wang <fwang@mandriva.org> 1.96-11mdv2009.1
+ Revision: 364969
- fix str fmt

  + Antoine Ginies <aginies@mandriva.com>
    - rebuild

* Tue Jun 17 2008 Thierry Vignaud <tv@mandriva.org> 1.96-10mdv2009.0
+ Revision: 220787
- rebuild

  + Pixel <pixel@mandriva.com>
    - do not call ldconfig in %%post/%%postun, it is now handled by filetriggers

* Wed Mar 19 2008 Frederic Crozat <fcrozat@mandriva.com> 1.96-9mdv2008.1
+ Revision: 188919
- Fix files conflicts between speech_tools and festival packages

* Mon Mar 17 2008 Frederic Crozat <fcrozat@mandriva.com> 1.96-8mdv2008.1
+ Revision: 188238
- Add conflicts to ease upgrade from 2008.0

* Fri Mar 14 2008 Frederic Crozat <fcrozat@mandriva.com> 1.96-7mdv2008.1
+ Revision: 187842
- Fix incorrect requires / provides in speech_tools lib packages

* Wed Mar 12 2008 Frederic Crozat <fcrozat@mandriva.com> 1.96-6mdv2008.1
+ Revision: 187236
- Add Buildrequires for esound
- Major rework, based on Fedora package (main package is not libified on purpose) :
 - merge speech_tools source package into festival source package
 - Patch1 (Fedora): set defaults to American English
 - Patch2 (Fedora): whack some buildroot references
 - Patch4 (Fedora): Build the ESD module
 - Patch5 (Fedora): Fix a coding error (RH bug #162137)
 - Patch6 (Fedora): Link libs with libm, libtermcap, and libesd (RH bug #198190)
 - Patch7 (Fedora); use g++ by default
 - Patch8 (Fedora): build speech_tools as shared libraries
 - Patch10 (Fedora): Look for speech tools in buildsource
 - Patch11 (Fedora): Build main library as shared, not just speech-tools
 - Patch12 (Fedora): improve soname
 - Patch13 (Fedora): fix build with gcc 4.3 (Fedora)
 - Patch16 (Fedora): Look for siteinit and sitevars in /etc/festival
- Change url
- Rebuild with latest speech_tools

* Sat Jan 12 2008 Thierry Vignaud <tv@mandriva.org> 1.96-2mdv2008.1
+ Revision: 149719
- rebuild
- kill re-definition of %%buildroot on Pixel's request

  + Olivier Blin <oblin@mandriva.com>
    - restore BuildRoot

* Mon Aug 13 2007 Funda Wang <fwang@mandriva.org> 1.96-1mdv2008.0
+ Revision: 62409
- Add requires for devel package
- New version

  + Anssi Hannula <anssi@mandriva.org>
    - add support for selecting Finnish


* Tue Dec 12 2006 Oden Eriksson <oeriksson@mandriva.com> 1.95-2mdv2007.0
+ Revision: 95974
- Import festival

* Tue Dec 12 2006 Oden Eriksson <oeriksson@mandriva.com> 1.95-2mdv2007.1
- added P25 to make it build with latest gcc (#27646, Frederic Guardia)
- bunzip patches

* Tue Dec 20 2005 Arnaud de Lorbeau <devel@mandriva.com> 1.95-1mdk
- 1.95
- add P24

* Wed Sep 21 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.4.3-8mdk
- rebuild against speech_tools 1.2.3-5mdk

* Thu Aug 25 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.4.3-7mdk
- rebuilt against gcc4 speech_tools libs

* Thu Oct 14 2004 Oden Eriksson <oeriksson@mandrakesoft.com> 1.4.3-6mdk
- nuke redundant requires
- misc spec file fixes

* Sat Oct 02 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 1.4.3-5mdk
- lib64 fixes

* Sat Sep 11 2004 Oden Eriksson <oeriksson@mandrakesoft.com> 1.4.3-4mdk
- added P23 (needed by the asterisk pbx software)

* Wed Jul 21 2004 Christiaan Welvaart <cjw@daneel.dyndns.org> 1.4.3-3mdk
- rebuild with gcc 3.4 (patch22)