From 12e759d7fa2f10b7b32422630b93302ae106f330 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Nov 02 2019 23:07:58 +0000 Subject: import soundtouch-1.4.0-9.el7 --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b673458 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/soundtouch-1.4.0.tar.gz diff --git a/.soundtouch.metadata b/.soundtouch.metadata new file mode 100644 index 0000000..7993564 --- /dev/null +++ b/.soundtouch.metadata @@ -0,0 +1 @@ +c349476751dca48d1f330528d1126c7faa11d01e SOURCES/soundtouch-1.4.0.tar.gz diff --git a/SOURCES/soundtouch-1.4.0-mmx-sse-compile-fix.patch b/SOURCES/soundtouch-1.4.0-mmx-sse-compile-fix.patch new file mode 100644 index 0000000..4369b17 --- /dev/null +++ b/SOURCES/soundtouch-1.4.0-mmx-sse-compile-fix.patch @@ -0,0 +1,14 @@ +diff -up soundtouch/source/SoundTouch/Makefile.in~ soundtouch/source/SoundTouch/Makefile.in +--- soundtouch/source/SoundTouch/Makefile.in~ 2009-02-15 11:21:36.000000000 +0100 ++++ soundtouch/source/SoundTouch/Makefile.in 2009-02-15 11:23:30.000000000 +0100 +@@ -209,7 +209,9 @@ libSoundTouch_la_SOURCES = AAFilter.cpp + # Note by authore: '-msse2' might not work in non-X86 compilations. If someone can + # fix this script to automatically check for CPU architecture, please submit a patch + # to me. +-AM_CXXFLAGS = -O3 -msse2 -fcheck-new -I../../include ++AM_CXXFLAGS = -fcheck-new -I../../include ++mmx_optimized.lo : AM_CXXFLAGS = -mmmx -fcheck-new -I../../include ++sse_optimized.lo : AM_CXXFLAGS = -msse -fcheck-new -I../../include + all: all-am + + .SUFFIXES: diff --git a/SOURCES/soundtouch-1.4.0-x86_64-asm-broken.patch b/SOURCES/soundtouch-1.4.0-x86_64-asm-broken.patch new file mode 100644 index 0000000..4c777d6 --- /dev/null +++ b/SOURCES/soundtouch-1.4.0-x86_64-asm-broken.patch @@ -0,0 +1,12 @@ +diff -up soundtouch/include/STTypes.h~ soundtouch/include/STTypes.h +--- soundtouch/include/STTypes.h~ 2009-01-25 17:32:53.000000000 +0100 ++++ soundtouch/include/STTypes.h 2009-02-14 22:22:37.000000000 +0100 +@@ -87,7 +87,7 @@ namespace soundtouch + + #endif + +- #if (WIN32 || __i386__ || __x86_64__) ++ #if (WIN32 || __i386__) + /// Define this to allow X86-specific assembler/intrinsic optimizations. + /// Notice that library contains also usual C++ versions of each of these + /// these routines, so if you're having difficulties getting the optimized diff --git a/SPECS/soundtouch.spec b/SPECS/soundtouch.spec new file mode 100644 index 0000000..41653f9 --- /dev/null +++ b/SPECS/soundtouch.spec @@ -0,0 +1,181 @@ +Name: soundtouch +Version: 1.4.0 +Release: 9%{?dist} +Summary: Audio Processing library for changing Tempo, Pitch and Playback Rates +License: LGPLv2+ +Group: System Environment/Libraries +URL: http://www.surina.net/soundtouch/ +Source0: http://www.surina.net/soundtouch/%{name}-%{version}.tar.gz +Patch0: soundtouch-1.4.0-x86_64-asm-broken.patch +Patch1: soundtouch-1.4.0-mmx-sse-compile-fix.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: gcc-c++ + +%description +SoundTouch is a LGPL-licensed open-source audio processing library for +changing the Tempo, Pitch and Playback Rates of audio streams or +files. The SoundTouch library is suited for application developers +writing sound processing tools that require tempo/pitch control +functionality, or just for playing around with the sound effects. + +The SoundTouch library source kit includes an example utility +SoundStretch which allows processing .wav audio files from a +command-line interface. + + +%package devel +Summary: Libraries, includes, etc to develop soundtouch applications +Group: Development/Libraries +Requires: soundtouch = %{version}-%{release} +Requires: pkgconfig + +%description devel +Libraries, include files, etc you can use to develop soundtouch applications. + + +%prep +%setup -q -n %{name} +%patch0 -p1 +# soundtouch contains mmx / sse versions of the stretching algorithm. +# to compile these -msse / -mmmx is needed. In x86 we make sure with this patch +# the needed -msse / -mmmx only gets passed when compiling the relevant +# object files so that these instructions do not get used in other object +# files. On non x86 we simply sed the -msse2 out of the original makefiles +%ifarch %{ix86} +%patch1 -p1 +%else +sed -i 's|-O3 -msse2||' source/SoundTouch/Makefile.* +%endif +sed -i 's|-O3||' source/SoundStretch/Makefile.* +# set correct version for .so build +%define ltversion %(echo %{version} | tr '.' ':') +sed -i 's/-rpath $(libdir)/-rpath $(libdir) -version-number %{ltversion}/' \ + source/SoundTouch/Makefile.in +# cleanup a bit +chmod -x README.html source/SoundTouch/RateTransposer.cpp +sed -i 's|\r||g' README.html source/SoundTouch/RateTransposer.cpp + + +%build +%configure --disable-dependency-tracking --disable-static --enable-shared +# Don't use 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 +make install DESTDIR=$RPM_BUILD_ROOT +rm $RPM_BUILD_ROOT%{_libdir}/*.la + +# remove redundant installed docs +rm -rf $RPM_BUILD_ROOT%{_prefix}/doc/%{name} + +# pkgconfig compat links for compat with older (API compatible) releases +# dunno why upstream keeps changing the pkgconfig name +ln -s soundtouch-1.4.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libSoundTouch.pc +ln -s soundtouch-1.4.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/soundtouch-1.0.pc + +# soundtouch installs an autoheader generated header file which could very +# well conflict with other autoheader generated header files, so we override +# this with our own version which contains only the bare minimum: +echo '#define FLOAT_SAMPLES 1' \ + > $RPM_BUILD_ROOT%{_includedir}/soundtouch/soundtouch_config.h + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + + +%files +%defattr(-,root,root,-) +%doc COPYING.TXT README.html +%{_bindir}/soundstretch +%{_libdir}/lib*.so.* + +%files devel +%defattr(-,root,root,-) +%{_libdir}/lib*.so +%{_libdir}/pkgconfig/*.pc +%{_includedir}/%{name} +%{_datadir}/aclocal/%{name}.m4 + + +%changelog +* Fri Jan 24 2014 Daniel Mach - 1.4.0-9 +- Mass rebuild 2014-01-24 + +* Fri Dec 27 2013 Daniel Mach - 1.4.0-8 +- Mass rebuild 2013-12-27 + +* Fri Feb 15 2013 Fedora Release Engineering - 1.4.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Jul 21 2012 Fedora Release Engineering - 1.4.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sat Jan 14 2012 Fedora Release Engineering - 1.4.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Feb 09 2011 Fedora Release Engineering - 1.4.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Jul 26 2009 Fedora Release Engineering - 1.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Wed Feb 25 2009 Fedora Release Engineering - 1.4.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sat Feb 14 2009 Hans de Goede 1.4.0-1 +- New upstream release 1.4.0 + +* Sat Dec 20 2008 Hans de Goede 1.3.1-11 +- Fix compilation with libtool 2.x + +* Tue Feb 19 2008 Fedora Release Engineering - 1.3.1-10 +- Autorebuild for GCC 4.3 + +* Fri Jan 11 2008 Hans de Goede 1.3.1-9 +- Fix compilation with gcc 4.3 + +* Wed Aug 22 2007 Hans de Goede 1.3.1-8 +- Rebuild for buildId +- Update license tag for new license guidelines compliance + +* Mon Feb 19 2007 Hans de Goede 1.3.1-7 +- Fix building with automake-1.10 + +* Tue Aug 29 2006 Hans de Goede 1.3.1-6 +- FE6 Rebuild + +* Wed Aug 2 2006 Hans de Goede 1.3.1-5 +- Patch makefiles so that our RPM_OPT_FLAGS get used instead of the custom + upstream CFLAGS. + +* Mon Jul 31 2006 Hans de Goede 1.3.1-4 +- Add Requires: pkgconfig to -devel subpackage +- Replace installed autoheader generated header file with our own version + which contains only the nescesarry soundtouch specific defines, thus avoiding + possible conflicts with other autoheader generated headers. + +* Mon Jul 31 2006 Paul F. Johnson 1.3.1-3 +- Add BR libtool + +* Mon Jul 31 2006 Hans de Goede 1.3.1-2 +- Add BR: automake, because upstream uses symlinks to instead of copies of some + needed automake files. + +* Sat Jul 29 2006 Hans de Goede 1.3.1-1 +- New upstream version 1.3.1 +- Minor specfile cleanups for livna submission. +- Give the .so a proper version instead of 0.0.0 +- Don't use rpath in soundstretch binary + +* Thu Aug 26 2004 Fernando Lopez-Lezcano 1.2.1-1 +- initial build.