123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368 |
- %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
- %define with_nas 1
- %define with_pulse 1
- %define with_flite 1
- Name: speech-dispatcher
- Version: 0.6.7
- Release: 5%{?_dist_release}
- Summary: To provide a high-level device independent layer for speech synthesis
- Group: System Environment/Libraries
- # Almost all files are under GPLv2+, however
- # src/c/clients/spdsend/spdsend.h is licensed under GPLv2,
- # which makes %%_bindir/spdsend GPLv2.
- License: GPLv2+ and GPLv2
- URL: http://www.freebsoft.org/pub/projects/speechd/
- Source0: http://www.freebsoft.org/pub/projects/speechd/%{name}-%{version}.tar.gz
- Source1: http://www.nsitonline.in/hemant/stuff/speechd-rpm/speech-dispatcherd
- Patch0: http://www.nsitonline.in/hemant/stuff/speechd-rpm/speechd.patch
- Patch1: speech-dispatcher-gcc44-0.6.7.patch
- Patch2: speech-dispatcher-fixdso.patch
- BuildRoot: %{_tmppath}/%{name}-%{version}-root
- BuildRequires: python-setuptools
- BuildRequires: espeak-devel
- BuildRequires: alsa-lib-devel
- BuildRequires: dotconf-devel
- BuildRequires: texinfo
- BuildRequires: libraw1394-devel
- Buildrequires: pulseaudio-lib-devel
- Buildrequires: glib2-devel
- BuildRequires: flite-devel
- Buildrequires: nas-devel
- Requires(post): /sbin/chkconfig
- Requires(preun): /sbin/chkconfig /sbin/service
- Requires(postun): /sbin/service
- %description
- * Common interface to different TTS engines
- * Handling concurrent synthesis requests – requests may come
- asynchronously from multiple sources within an application
- and/or from more different applications.
- * Subsequent serialization, resolution of conflicts and
- priorities of incoming requests
- * Context switching – state is maintained for each client
- connection independently, event for connections from
- within one application.
- * High-level client interfaces for popular programming languages
- * Common sound output handling – audio playback is handled by
- Speech Dispatcher rather than the TTS engine, since most engines
- have limited sound output capabilities.
- %package devel
- Summary: Development files for %{name}
- Group: Development/Libraries
- Requires: speech-dispatcher = %{version}-%{release}
- License: GPLv2+
- %description devel
- The %{name}-devel package contains libraries and header files for
- developing applications that use %{name}.
- %package doc
- Summary: Documentation for speech-dispatcher
- License: GPLv2+
- Group: Applications/Documentation
- Requires: speech-dispatcher = %{version}-%{release}
- Requires(post): /sbin/install-info
- Requires(preun):/sbin/install-info
- %description doc
- speechd documentation
- %package python
- Summary: Python Client API for speech-dispatcher
- License: GPLv2+
- Group: Development/Libraries
- Requires: speech-dispatcher = %{version}-%{release}
- %description python
- speechd python module
- %prep
- %setup -q
- # patch needs further review as it has olpc specific changes in it.
- #%patch0 -p1
- %patch1 -p1 -b .gcc44
- %patch2 -p1 -b .fixdso
- %build
- iconv -f ISO-8859-2 -t UTF-8 doc/speech-dispatcher-cs.texi -o doc/speech-dispatcher-cs_c.texi
- mv doc/speech-dispatcher-cs_c.texi doc/speech-dispatcher-cs.texi
- %configure --disable-static --with-alsa --with-pulse --without-flite --sysconfdir=%{_sysconfdir}
- # Remove rpath as per https://fedoraproject.org/wiki/Packaging/Guidelines#Beware_of_Rpath
- sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
- sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
- make %{?_smp_mflags}
- %install
- rm -rf $RPM_BUILD_ROOT
- #Install the Python Modules
- cd src/python/
- mkdir -p build/lib/speechd
- python setup.py install --root $RPM_BUILD_ROOT
- chmod 0755 $RPM_BUILD_ROOT%{python_sitelib}/speechd/_test.py
- #Move to the base BUILD folder
- cd ../../
- for dir in \
- config/ doc/ src/audio/ src/c/ src/modules/ src/tests/ src/server/
- do
- pushd $dir
- make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
- popd
- done
- #Install the init shell script
- mkdir -p $RPM_BUILD_ROOT%{_initrddir}
- install -p -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/
- #Rename certain generically named binaries
- mv $RPM_BUILD_ROOT%{_bindir}/long_message $RPM_BUILD_ROOT%{_bindir}/spd_long_message
- mv $RPM_BUILD_ROOT%{_bindir}/run_test $RPM_BUILD_ROOT%{_bindir}/spd_run_test
- #Remove %{_infodir}/dir file
- rm -f $RPM_BUILD_ROOT%{_infodir}/dir
- cd ../../
- find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
- # Move the config files from /usr/share to /etc
- mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/speech-dispatcher/clients
- mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/speech-dispatcher/modules
- mv $RPM_BUILD_ROOT%{_datadir}/speech-dispatcher/conf/speechd.conf $RPM_BUILD_ROOT%{_sysconfdir}/speech-dispatcher/
- mv $RPM_BUILD_ROOT%{_datadir}/speech-dispatcher/conf/clients/* $RPM_BUILD_ROOT%{_sysconfdir}/speech-dispatcher/clients
- mv $RPM_BUILD_ROOT%{_datadir}/speech-dispatcher/conf/modules/* $RPM_BUILD_ROOT%{_sysconfdir}/speech-dispatcher/modules
- # Now move the files, change ownerships, apply setuid settings incase build is for
- # olpc.
- #if 0%{?olpc}
- # #Move the speech-dispatcher configuration files to olpc writable location.
- # mkdir -p $RPM_BUILD_ROOT/home/olpc/.speechd
- # mv $RPM_BUILD_ROOT%{_sysconfdir}/speech-dispatcher/* $RPM_BUILD_ROOT/home/olpc/.speechd
- #endif
- # Remove dummy sound
- rm -rf $RPM_BUILD_ROOT/%{_datadir}/sounds/
- # Create log dir
- mkdir -p -m 0700 $RPM_BUILD_ROOT%{_localstatedir}/log/speech-dispatcher/
- %clean
- rm -rf $RPM_BUILD_ROOT
- %post
- /sbin/ldconfig
- /sbin/chkconfig --add speech-dispatcherd
- %postun
- /sbin/ldconfig
- if [ "$1" -ge "1" ] ; then
- /sbin/service speech-dispatcherd condrestart >/dev/null 2>&1 || :
- fi
- %preun
- if [ $1 = 0 ] ; then
- /sbin/service speech-dispatcherd stop >/dev/null 2>&1
- /sbin/chkconfig --del speech-dispatcherd
- fi
- %post doc
- /sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || :
- /sbin/install-info %{_infodir}/spd-say.info %{_infodir}/dir || :
- /sbin/install-info %{_infodir}/ssip.info %{_infodir}/dir || :
- /sbin/install-info %{_infodir}/%{name}-cs.info %{_infodir}/dir || :
- %preun doc
- if [ $1 = 0 ]; then
- /sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || :
- /sbin/install-info --delete %{_infodir}/spd-say.info %{_infodir}/dir || :
- /sbin/install-info --delete %{_infodir}/ssip.info %{_infodir}/dir || :
- /sbin/install-info --delete %{_infodir}/%{name}-cs.info %{_infodir}/dir || :
- fi
- %files
- %defattr(-,root,root,-)
- %doc AUTHORS ChangeLog NEWS README TODO COPYING
- %config(noreplace) %{_sysconfdir}/speech-dispatcher/speechd.conf
- %config(noreplace) %{_sysconfdir}/speech-dispatcher/clients/*.conf
- %config(noreplace) %{_sysconfdir}/speech-dispatcher/modules/*.conf
- %dir %{_sysconfdir}/speech-dispatcher/
- %dir %{_sysconfdir}/speech-dispatcher/clients
- %dir %{_sysconfdir}/speech-dispatcher/modules
- %{_bindir}/*
- %{_libdir}/speech-dispatcher-modules/sd_*
- %dir %{_libdir}/speech-dispatcher-modules
- %{_libdir}/libspeechd.so.2
- %{_libdir}/libspeechd.so.2.1.1
- %dir %{_libdir}/speech-dispatcher
- %{_libdir}/speech-dispatcher/lib*.so
- %{_libdir}/speech-dispatcher/libsdaudio.so.2
- %{_libdir}/speech-dispatcher/libsdaudio.so.2.0.2
- %dir %attr(0700, root, root) %{_localstatedir}/log/speech-dispatcher/
- %attr(0755,root,root)%{_initrddir}/speech-dispatcherd
- %files devel
- %defattr(-,root,root,-)
- %{_includedir}/*
- %{_libdir}/lib*.so
- %files doc
- %defattr(-,root,root,-)
- %{_infodir}/*
- %files python
- %defattr(-,root,root,-)
- %{python_sitelib}/speechd*
- %changelog
- * Sun Mar 14 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> - 0.6.7-5
- - Initial build for Vine Linux
- * Wed Mar 3 2010 Peter Robinson <pbrobinson@gmail.com> - 0.6.7-4
- - Add patch to fix dso linking. Bug 564851
- * Sat Jan 9 2010 Peter Robinson <pbrobinson@gmail.com> - 0.6.7-3
- - Updated to the new python sysarch spec file reqs
- * Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.7-2
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
- * Wed May 20 2009 Peter Robinson <pbrobinson@gmail.com> - 0.6.7-1
- - New upstream release, some spec file cleanups.
- * Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.6-21
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
- * Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.6.6-20
- - Rebuild for Python 2.6
- * Sun Sep 21 2008 Ville Skyttä <ville.skytta at iki.fi> - 0.6.6-19
- - Fix Patch0:/%%patch mismatch.
- * Wed Jul 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-18
- - removed suid permission for speech-dispatcher binary.
- * Wed Jul 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-17
- - changing permissions of speech-dispatcher to 6711 (setuid and setguid)
- - relocating configuration files in case of OLPC branch.
- - excluding init script in case of OLPC branch.
- * Wed Jul 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-16
- - yet another release bump required :-/
- * Wed Jul 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-15
- - release bump
- * Mon Jul 13 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-14
- - conditional build required for OLPC Branch - Building without nas and
- pulse-audio support.
- * Mon Jun 23 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-13
- - changed permission of speech-dispatcherd to 0644 too.
- * Fri Jun 20 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-12
- - added BuildRequires: texinfo (for makeinfo)
- - changed permissions of Sourcex to 0644
- - incorporated modified init script by mtasaka
- - fixed a few more macros in changelog
- - modified location of Source1 and Patch0 to point to online locations
- * Wed Jun 18 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-11
- - fixed encoding of speech-dispatcher-cs.info file to UTF-8
- * Wed Jun 11 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-10
- - removed Requires(preun) duplicates
- - applied -p option correctly to install command
- - fixed macros in changelog to prevent them from exapnding
- - fixed the init script
- - added patch to change log directory of speech-dispatcher and start only espeak
- * Sun Jun 08 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-9
- - removed %%{_infodir}/dir file
- * Sat Jun 07 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-8
- - converted speech-dispatcher-cs.info to UTF-8 encoding
- - removed multiple file listings of /usr/lib/python2.5/site-packages/speechd/_test.py
- and fixed its mode
- - added init script as a SOURCE instead as a patch
- - duplicate Requires have now been removed
- - Timestamping of files has now been added
- - Install script fixed
- - init script fixed
- * Tue Jun 03 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-7
- - changed license of base package to GPLv2+ and GPL
- - changed license of all other packages to GPLv2+
- - fixed install sequence using cleaner for loop and pushd and popd commands
- - added init script for speech-dispatcher daemon
- - added COPYING to doc in base package
- - removed comment after /sbin/ldconfig
- - resolved rpmlint errors for base package [except UTF-8 encoding error for (cs) documentation file]
- - renamed long_message to spd_long_message and run_test to spd_run_test
- - reset mode of _test.py to 0755
- * Sun Apr 27 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-6
- - changed BR to pulseaudio-lib-devel
- - removed dotconf BR
- - gave ownership of /%%{python_sitelib}/speechd-0.3-py2.5.egg-info to python package if package is built for Fedora 9 or above
- * Sun Apr 13 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-5
- - Removed conitional building options
- - Added BuildRequires for dotconf-devel
- * Mon Feb 18 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-4
- - Manually specyfying make install for each src directory to be installed
- - Installing python package seprately by by-passing make install
- * Sun Feb 17 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-3
- - Added Requires(post), Requires(preun) for -doc package
- - Changed scriptlet from postun to preun for -doc package
- - Removed Epoch
- - Moved %%{_libdir}/lib*.so back to devel pacakge
- - Require dependecny on base pacakge is now set to %%{version}-%%{release} instead of %%{version}
- - removed --prefix=$RPM_BUILD_ROOT/%%{_prefix} against configure macro.
- -- -python subpackage does not build anymore.
- - removed python subpackag rules from SPEC file.
- * Sat Feb 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-2
- - fixed directory ownerships
- * Sat Feb 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-1
- - using newest version of speech-dispatcher
- - updated %%{_libdir}/libspeechd.so.2.0.4 to %%{_libdir}/libspeechd.so.2.0.5
- - python packages are being generated correctly now
- - must force prefix=$RPM_BUILD_ROOT/%%{_prefix} to enable python packages to get installed correctly.
- - finding and deleting .*la files in $RPM_BUILD_ROOT to avoid unpackaged files error.
- * Sat Feb 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.5-4
- - updated build root
- * Sat Feb 16 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.5-3
- - added macro to prevent error from stopping build for not including *.la files
- - added epoch to the SPEC
- - conditional build seems to be working correctly the old way only??
- - unified changelogs
- * Fri Feb 15 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.5-2
- - Removed .la files
- - Removed doc-cs packages and merged it into doc package
- - Removed packaging of static files, and tested -without static_libs option for configure script
- - Moved symlink .so files from devel package to main package
- - Commented /sbin/ldconfig for devel package.
|