bd7ae9e
Name:           pocketsphinx
Jerry James 2b332f5
Version:        0.8
Jerry James 62a68af
Release:        6%{?dist}
bd7ae9e
Summary:        Real-time speech recognition
bd7ae9e
bd7ae9e
Group:          Applications/Multimedia
9f7883f
License:        BSD
Jerry James 2b332f5
URL:            http://cmusphinx.sourceforge.net/
8db61bf
Source0:        http://downloads.sourceforge.net/cmusphinx/%{name}-%{version}.tar.gz
Jerry James 1d49bdd
# Sent upstream 28 Mar 2013.  Enable large file support.
Jerry James 1d49bdd
Patch0:         %{name}-largefile.patch
Jerry James 9f33d37
# Sent upstream 29 Mar 2013.  Fix some broken doxgyen comments.
Jerry James 9f33d37
Patch1:         %{name}-doxygen.patch
bd7ae9e
c5426c4
BuildRequires:  Cython
c5426c4
BuildRequires:  doxygen
c5426c4
BuildRequires:  gstreamer-devel
c5426c4
BuildRequires:  gstreamer-plugins-base-devel
Jerry James 2b332f5
BuildRequires:  lapack-devel
Jerry James 2b332f5
BuildRequires:  libsamplerate-devel
Jerry James 2b332f5
BuildRequires:  libsndfile-devel
Jerry James 9f33d37
BuildRequires:  libtool
c5426c4
BuildRequires:  python2-devel
c5426c4
BuildRequires:  python-setuptools
c5426c4
BuildRequires:  sphinxbase-devel
bd7ae9e
Jerry James 62a68af
Requires:       %{name}-libs%{?_isa} = %{version}-%{release}
Jerry James 62a68af
Requires:       %{name}-models
Jerry James 62a68af
8db61bf
%global __provides_exclude_from ^%{_libdir}/python.*\\.so$
7a5d963
bd7ae9e
%description
bd7ae9e
PocketSphinx is a version of the open-source Sphinx-II speech recognition
bd7ae9e
system which is able to recognize speech in real-time.  While it may be
bd7ae9e
somewhat less accurate than the offline speech recognizers, it is lightweight
bd7ae9e
enough to run on handheld and embedded devices.
bd7ae9e
bd7ae9e
%package devel
bd7ae9e
Summary:        Header files for developing with pocketsphinx
bd7ae9e
Group:          Applications/Multimedia
Jerry James 2b332f5
Requires:       %{name}-libs%{?_isa} = %{version}-%{release}
666f02d
Requires:       sphinxbase-devel%{?_isa}
bd7ae9e
bd7ae9e
%description devel
bd7ae9e
Header files for developing with pocketsphinx.
bd7ae9e
bd7ae9e
%package libs
bd7ae9e
Summary:        Shared libraries for pocketsphinx executables
bd7ae9e
Group:          Applications/Multimedia
bd7ae9e
bd7ae9e
%description libs
bd7ae9e
Shared libraries for pocketsphinx executables.
bd7ae9e
Jerry James 62a68af
%package models
Jerry James 62a68af
Summary:        Voice and language models for pocketsphinx
Jerry James 62a68af
Group:          Applications/Multimedia
Jerry James 62a68af
BuildArch:      noarch
Jerry James 62a68af
Jerry James 62a68af
%description models
Jerry James 62a68af
Voice and language models for pocketsphinx.
Jerry James 62a68af
bd7ae9e
%package plugin
bd7ae9e
Summary:        Pocketsphinx gstreamer plugin
bd7ae9e
Group:          Applications/Multimedia
7a5d963
Requires:       %{name}-libs%{?_isa} = %{version}-%{release}
666f02d
Requires:       gstreamer-plugins-base%{?_isa}
bd7ae9e
bd7ae9e
%description plugin
bd7ae9e
A gstreamer plugin for pocketsphinx.
bd7ae9e
bd7ae9e
%package python
bd7ae9e
Summary:        Python interface to pocketsphinx
bd7ae9e
Group:          Applications/Multimedia
666f02d
Requires:       %{name}-libs%{?_isa} = %{version}-%{release}
666f02d
Requires:       sphinxbase-python%{?_isa}
bd7ae9e
bd7ae9e
%description python
bd7ae9e
Python interface to pocketsphinx.
bd7ae9e
bd7ae9e
%prep
bd7ae9e
%setup -q
Jerry James 1d49bdd
%patch0
Jerry James 1d49bdd
%patch1
9f7883f
9f7883f
# Force code generation with a newer version of Cython
9f7883f
rm -f python/pocketsphinx.c
9f7883f
Jerry James 2b332f5
# Install the python egg in the Fedora way
Jerry James 2b332f5
sed 's|\( install \)--prefix\( \$(DESTDIR)\)\$(prefix)|\1--skip-build --root\2|' \
Jerry James 2b332f5
    -i python/Makefile.in
Jerry James 2b332f5
9f7883f
# Remove spurious executable bits
Jerry James 2b332f5
chmod a-x model/lm/en/tidigits.fsg
bd7ae9e
Jerry James 9f33d37
# Regenerate files due to patch 0
Jerry James 9f33d37
autoreconf -fi
Jerry James 9f33d37
bd7ae9e
%build
7a5d963
%configure --disable-static
bd7ae9e
Jerry James 2b332f5
# Get rid of undesirable hardcoded rpaths; workaround libtool reordering
Jerry James 2b332f5
# -Wl,--as-needed after all the libraries.
c5426c4
sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
c5426c4
    -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
Jerry James 2b332f5
    -e 's|CC="gcc|CC="gcc -Wl,--as-needed|' \
c5426c4
    -i libtool
bd7ae9e
bd7ae9e
make %{?_smp_mflags}
bd7ae9e
bd7ae9e
%install
bd7ae9e
mkdir -p $RPM_BUILD_ROOT%{python_sitearch}
bd7ae9e
make install DESTDIR=$RPM_BUILD_ROOT
bd7ae9e
bd7ae9e
# Install the man pages
bd7ae9e
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
bd7ae9e
cp -p doc/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
bd7ae9e
bd7ae9e
# Get rid of files we don't want packaged
Jerry James 2b332f5
find $RPM_BUILD_ROOT%{_libdir} -name \*.la | xargs rm -f
bd7ae9e
rm -f doc/html/installdox
bd7ae9e
bd7ae9e
%post libs -p /sbin/ldconfig
bd7ae9e
bd7ae9e
%postun libs -p /sbin/ldconfig
bd7ae9e
bd7ae9e
%files
bd7ae9e
%{_bindir}/*
bd7ae9e
%{_mandir}/man1/*
bd7ae9e
bd7ae9e
%files devel
bd7ae9e
%doc doc/html
Jerry James 62a68af
%{_includedir}/%{name}/
Jerry James 62a68af
%{_libdir}/lib%{name}.so
Jerry James 62a68af
%{_libdir}/pkgconfig/%{name}.pc
bd7ae9e
bd7ae9e
%files libs
9f7883f
%doc AUTHORS ChangeLog COPYING NEWS README
Jerry James 62a68af
%{_libdir}/lib%{name}.so.*
Jerry James 62a68af
Jerry James 62a68af
%files models
Jerry James 62a68af
%{_datadir}/%{name}/
bd7ae9e
bd7ae9e
%files plugin
bd7ae9e
%{_libdir}/gstreamer-0.10/*
bd7ae9e
bd7ae9e
%files python
bd7ae9e
%{python_sitearch}/*
bd7ae9e
bd7ae9e
%changelog
Jerry James 62a68af
* Thu Sep  5 2013 Jerry James <loganjerry@gmail.com> - 0.8-6
Jerry James 62a68af
- Split the voice and language models into a noarch subpackage due to size
Jerry James 62a68af
f4e8c61
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-5
f4e8c61
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
f4e8c61
Jerry James 9f33d37
* Fri Mar 29 2013 Jerry James <loganjerry@gmail.com> - 0.8-4
Jerry James 9f33d37
- Different approach to the -largefile patch to fix problems with the original
Jerry James 9f33d37
- Drop -aarch64 patch since we now run autoreconf
Jerry James 9f33d37
- Add -doxygen patch to fix broken doxygen comments
Jerry James 9f33d37
Jerry James 1d49bdd
* Thu Mar 28 2013 Jerry James <loganjerry@gmail.com> - 0.8-3
Jerry James 1d49bdd
- Add -largefile patch for large file support
Jerry James 1d49bdd
- Add -aarch64 patch (bz 926360)
Jerry James 1d49bdd
6cbea57
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-2
6cbea57
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
6cbea57
Jerry James 2b332f5
* Mon Dec 17 2012 Jerry James <loganjerry@gmail.com> - 0.8-1
Jerry James 2b332f5
- New upstream release
Jerry James 2b332f5
4fbd8e3
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7-5
4fbd8e3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
4fbd8e3
666f02d
* Tue Jan 10 2012 Jerry James <loganjerry@gmail.com> - 0.7-4
666f02d
- Rebuild for bz 772699
666f02d
- New project URL
666f02d
8db61bf
* Fri Jan  6 2012 Jerry James <loganjerry@gmail.com> - 0.7-3
8db61bf
- Rebuild for GCC 4.7
8db61bf
- Minor spec file cleanups
8db61bf
7a5d963
* Fri Jul 15 2011 Jerry James <loganjerry@gmail.com> - 0.7-2
7a5d963
- Use RPM 4.9's new filter scheme to remove bogus provides
7a5d963
- Minor spec file cleanups
7a5d963
c5426c4
* Tue Apr 19 2011 Jerry James <loganjerry@gmail.com> - 0.7-1
c5426c4
- New upstream release
c5426c4
898a0f2
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.1-2
898a0f2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
898a0f2
9f7883f
* Mon Aug 16 2010 Jerry James <loganjerry@gmail.com> - 0.6.1-1
9f7883f
- New upstream release
9f7883f
- All sources are now BSD
9f7883f
31144c6
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 0.5.1-5
31144c6
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
31144c6
1379a6a
* Fri Nov 20 2009 Jerry James <loganjerry@gmail.com> - 0.5.1-4
1379a6a
- Update python BRs for Rawhide
1379a6a
bd7ae9e
* Fri Aug 21 2009 Jerry James <loganjerry@gmail.com> - 0.5.1-3
bd7ae9e
- More review issues:
bd7ae9e
- Fix license (gstreamer plugin is LGPLv2+)
bd7ae9e
- Remove unnecessary zero-byte turtle dictionary file
bd7ae9e
bd7ae9e
* Fri Aug 21 2009 Jerry James <loganjerry@gmail.com> - 0.5.1-2
bd7ae9e
- Fix issues raised in review by Andrew Colin Kissa, namely:
bd7ae9e
- Improve description and summary
bd7ae9e
- Change the group to Applications/Multimedia
bd7ae9e
bd7ae9e
* Tue Mar 24 2009 Jerry James <loganjerry@gmail.com> - 0.5.1-1
bd7ae9e
- Update to 0.5.1
bd7ae9e
bd7ae9e
* Thu Jul 10 2008 Jerry James <loganjerry@gmail.com> - 0.5-1
bd7ae9e
- Update to 0.5
bd7ae9e
bd7ae9e
* Wed Mar  5 2008 Jerry James <loganjerry@gmail.com> - 0.4.1-1
bd7ae9e
- Initial RPM