%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0} Summary: Shared libraries for GSM speech compressor Name: gsm Version: 1.0.18 Release: 1%{?_dist_release} Group: System Environment/Libraries Vendor: Project Vine Distribution: Vine Linux License: MIT URL: http://www.quut.com/gsm/ Source: http://www.quut.com/gsm/%{name}-%{version}.tar.gz Patch0: gsm-makefile.patch Patch1: gsm-warnings.patch BuildRoot: %{_tmppath}/%{name}-%{version}-root %global shortver %(echo %{version} | sed -e 's/\.[0-9]*$//') %global majorver %(echo %{shortver} | sed -e 's/\.[0-9]*$//') %global minorver %(echo %{shortver} | sed -e 's/^[0-9]*\.//') %global patchlevel %(echo %{version} | sed -e 's/^[0-9]*\.[0-9]*\.//') %define srcver %{shortver}-pl%{patchlevel} %define soname %{version} %description Contains runtime shared libraries for libgsm, an implementation of the European GSM 06.10 provisional standard for full-rate speech transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse excitation/long term prediction) coding at 13 kbit/s. GSM 06.10 compresses frames of 162 13-bit samples (8 kHz sampling rate, i.e. a frame rate of 50 Hz) into 260 bits; for compatibility with typical UNIX applications, our implementation turns frames of 160 16-bit linear samples into 33-byte frames (1650 Bytes/s). The quality of the algorithm is good enough for reliable speaker recognition; even music often survives transcoding in recognizable form (given the bandwidth limitations of 8 kHz sampling rate). The interfaces offered are a front end modelled after compress(1), and a library API. Compression and decompression run faster than realtime on most SPARCstations. The implementation has been verified against the ETSI standard test patterns. %package tools Summary: GSM speech compressor tools Group: Applications/Multimedia %description tools Contains command line utilities for libgsm, an implementation of the European GSM 06.10 provisional standard for full-rate speech transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse excitation/long term prediction) coding at 13 kbit/s. %package devel Summary: Header files and development libraries for libgsm Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel Contains header files and development libraries for libgsm, an implementation of the European GSM 06.10 provisional standard for full-rate speech transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse excitation/long term prediction) coding at 13 kbit/s. # compat32 %package -n compat32-%{name} Summary: Shared libraries for GSM speech compressor Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} %description -n compat32-%{name} Contains runtime shared libraries for libgsm, an implementation of the European GSM 06.10 provisional standard for full-rate speech transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse excitation/long term prediction) coding at 13 kbit/s. GSM 06.10 compresses frames of 162 13-bit samples (8 kHz sampling rate, i.e. a frame rate of 50 Hz) into 260 bits; for compatibility with typical UNIX applications, our implementation turns frames of 160 16-bit linear samples into 33-byte frames (1650 Bytes/s). The quality of the algorithm is good enough for reliable speaker recognition; even music often survives transcoding in recognizable form (given the bandwidth limitations of 8 kHz sampling rate). The interfaces offered are a front end modelled after compress(1), and a library API. Compression and decompression run faster than realtime on most SPARCstations. The implementation has been verified against the ETSI standard test patterns. %package -n compat32-%{name}-devel Summary: Header files and development libraries for libgsm Group: Development/Libraries Requires: compat32-%{name} = %{version}-%{release} Requires: %{name}-devel = %{version}-%{release} %description -n compat32-%{name}-devel Contains header files and development libraries for libgsm, an implementation of the European GSM 06.10 provisional standard for full-rate speech transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse excitation/long term prediction) coding at 13 kbit/s. %prep %setup -n gsm-%{srcver} -q %autopatch -p1 perl -pi -e 's/^CCFLAGS .*$/CCFLAGS = -c %{optflags} -DNeedFunctionPrototypes=1 -Wall -Wno-comment -D_XOPEN_SOURCE=700 -D_REENTRANT -fPIC/' Makefile sed -i \ -e 's/@MAJORVER@/%{majorver}/' \ -e 's/@MINORVER@/%{minorver}/' \ -e 's/@PATCHLEVEL@/%{patchlevel}/' \ -e 's/@SOVERSION@/%{soname}/' \ Makefile %build make %{?_smp_mflags} all %install rm -rf %{buildroot} mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_includedir}/gsm mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_mandir}/{man1,man3} make install \ INSTALL_ROOT=%{buildroot}%{_prefix} \ GSM_INSTALL_INC=%{buildroot}%{_includedir}/gsm \ GSM_INSTALL_LIB=%{buildroot}%{_libdir} # some apps look for this in /usr/include ln -s gsm/gsm.h %{buildroot}%{_includedir} echo ".so toast.1" > %{buildroot}%{_mandir}/man1/tcat.1 echo ".so toast.1" > %{buildroot}%{_mandir}/man1/untoast.1 %check # This is to ensure that the patch creates the proper library version. [ -f %{buildroot}%{_libdir}/libgsm.so.%{version} ] export LDFLAGS="%{?__global_ldflags}" make addtst %clean rm -rf %{buildroot} %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post -n compat32-%{name} -p /sbin/ldconfig %postun -n compat32-%{name} -p /sbin/ldconfig %files %defattr(-,root,root,-) %license COPYRIGHT %doc ChangeLog MACHINES README %{_libdir}/libgsm.so.* %files tools %{_bindir}/tcat %{_bindir}/toast %{_bindir}/untoast %{_mandir}/man1/toast.1* %{_mandir}/man1/tcat.1.gz %{_mandir}/man1/untoast.1.gz %files devel %defattr(-,root,root,-) %dir %{_includedir}/gsm %{_includedir}/gsm/gsm.h %{_includedir}/gsm.h %{_libdir}/libgsm.so %{_mandir}/man3/* # compat32 %if %{build_compat32} %files -n compat32-%{name} %defattr(-,root,root,-) %{_libdir}/libgsm.so.* %files -n compat32-%{name}-devel %defattr(-,root,root,-) %{_libdir}/libgsm.so %endif %changelog * Sun Mar 29 2020 Tomohiro "Tomo-p" KATO 1.0.18-1 - new upstream release. - updated Patch0 and 1. - dropped Patch2. * Sun Apr 05 2015 Yoji TOYODA 1.0.14-1 - new upstream release - update Patch1 (%%{name}-1.0.14-warnings.patch) * Mon Jul 7 2014 Tomohiro "Tomo-p" KATO 1.0.13-1 - new upstream release. * Wed Aug 17 2011 Yoji TOYODA 1.0.12-3 - create compat32 sub package * Sat Apr 16 2011 Ryoichi INAGAKI 1.0.12-2 - rebuilt with current VineSeed * Fri Sep 26 2008 Daisuke SUZUKI 1.0.12-1 - initial build for Vine Linux * Mon Feb 11 2008 Jeffrey C. Ollie - 1.0.12-6 - Rebuild for GCC 4.3 * Sun Aug 26 2007 Dominik Mierzejewski 1.0.12-5 - install symlinks instead of binaries in -devel * Sat Aug 25 2007 Dominik Mierzejewski 1.0.12-4 - rebuild for BuildID - specfile cleanups * Sun May 13 2007 Dominik Mierzejewski 1.0.12-3 - fix parallel make * Fri May 11 2007 Dominik Mierzejewski 1.0.12-2 - fix some warnings - fix 64bit testsuite issue as described at gsm homepage - add compatibility header symlink - split off binaries into a separate package * Sun Apr 15 2007 Michael Schwendt 1.0.12-1 - Update to Release 1.0 Patchlevel 12. - Build with -fPIC not just for non-ix86. - Add check section to ensure proper library version. - Remove static library. * Fri Oct 06 2006 Thorsten Leemhuis 1.0.10-12 - rebuilt for unwind info generation, broken in gcc-4.1.1-21 * Tue Sep 26 2006 Thomas Vander Stichele - 1.0.10-11 - rebuild for FC6 * Thu Mar 09 2006 Andreas Bierfert - switch to new release field * Tue Feb 28 2006 Andreas Bierfert - add dist * Mon Jun 27 2005 David Woodhouse - 1.0.10-0.lvn.10: Clean up installation * Sat Jun 25 2005 Thorsten Leemhuis - 1.0.10-0.lvn.9: mv libgsm.a only when needed * Fri Dec 31 2004 Thorsten Leemhuis - 1.0.10-0.lvn.8: Use -fPIC on non ix86 * Tue Mar 02 2004 Thomas Vander Stichele - 1.0.10-0.lvn.7: moved to rpm.livna.org * Tue Mar 02 2004 Thomas Vander Stichele - 1.0.10-0.fdr.7: applied patch from Ville, remove epoch since it's allowed * Sat Sep 13 2003 Thomas Vander Stichele - 0:1.0.10-0.fdr.6: remove second makeinstall * Sun Sep 07 2003 Thomas Vander Stichele - 0:1.0.10-0.fdr.5 - added back epochs, I surrender - fix RPM_OPT_FLAGS hackery * Fri Jul 18 2003 Thomas Vander Stichele - 1.0.10-0.fdr.4: remove epoch mentions * Sat Jul 05 2003 Thomas Vander Stichele - 1.0.10-0.fdr.3 - pull in RPM_OPT_FLAGS in patch instead of using perl to wedge it in - fix group - -p'ize ldconfig * Tue Jun 10 2003 Thomas Vander Stichele - 1.0.10-0.fdr.2 - Fix libgsm.so.* being files instead of symlinks * Thu May 29 2003 Thomas Vander Stichele - 0:1.0.10-0.fdr.1: initial RPM release