%define major 1 %define libname %mklibname sndfile %{major} %define develname %mklibname sndfile -d %define staticname %mklibname sndfile -d -s %define build_octave 0 %define bootstrap 1 %{?_without_bootstrap: %global bootstrap 0} %{?_with_bootstrap: %global bootstrap 1} Summary: A library to handle various audio file formats Name: libsndfile Version: 1.0.25 %define subrel 1 Release: %mkrel 9 License: LGPLv2+ Group: System/Libraries URL: http://www.mega-nerd.com/libsndfile/ Source0: http://www.mega-nerd.com/libsndfile/files/%{name}-%{version}.tar.gz Source1: http://www.mega-nerd.com/libsndfile/files/%{name}-%{version}.tar.gz.asc Patch0: libsndfile-1.0.25-linking.patch Patch1: libsndfile-1.0.25-divide-by-zero.patch Patch2: libsndfile-1.0.25-buffer-overreads.patch Patch3: libsndfile-src-common.c-Fix-a-header-parsing-bug.patch Patch4: libsndfile-fix-header-read-CVE-2015-7805.patch Patch5: libsndfile-psf_strlcpy_crlf-fix-CVE-2015-8075.patch BuildRequires: libogg-devel BuildRequires: libvorbis-devel BuildRequires: sqlite3-devel BuildRequires: libflac-devel BuildRequires: libalsa-devel %if !%{bootstrap} %ifarch %{ix86} x86_64 BuildRequires: nasm %endif BuildRequires: libjack-devel BuildRequires: libsamplerate-devel %endif BuildRequires: celt-devel BuildRequires: autogen %description libsndfile is a C library for reading and writing sound files such as AIFF, AU and WAV files through one standard interface. It can currently read/write 8, 16, 24 and 32-bit PCM files as well as 32-bit floating point WAV files and a number of compressed formats. %package -n %{libname} Summary: Shared library of sndfile Group: System/Libraries %description -n %{libname} libsndfile is a C library for reading and writing sound files such as AIFF, AU and WAV files through one standard interface. It can currently read/write 8, 16, 24 and 32-bit PCM files as well as 32-bit floating point WAV files and a number of compressed formats. This package contains the shared library to run applications based on libsndfile. %package -n %{develname} Summary: Libraries, includes, etc to develop libsndfile applications Group: Development/C Requires: %{libname} = %{version}-%{release} Requires: libflac-devel Provides: sndfile-devel = %{version}-%{release} Provides: %{name}-devel = %{version}-%{release} Obsoletes: %mklibname sndfile 1 -d %description -n %{develname} Libraries, include files, etc you can use to develop libsndfile applications. %package -n %{staticname} Summary: Static Library for developing libsndfile applications Group: Development/C Requires: %{develname} = %{version}-%{release} Provides: %{name}-static-devel = %{version}-%{release} Obsoletes: %mklibname sndfile 1 -d -s %description -n %{staticname} This contains the static library of libsndfile needed for building apps that link statically to libsndfile. %package progs Summary: Example progs based on libsndfile Group: Sound/Utilities %description progs This contains sndfile-info for printing information about a sound file and sndfile-play for playing a sound file. %if %{build_octave} %package octave Summary: Octave modules based on libsndfile Group: Sound Conflicts: libsndfile-progs < 1.0.18-0.pre17.1mdv BuildRequires: octave3-devel %description octave This contains octave modules based on libsndfile for reading, writing and playing audio files. %endif %prep %setup -qn %{name}-%{version} %apply_patches %build autoreconf -vfi %configure2_5x %make %install %makeinstall_std rm -rf %{buildroot}%{_includedir}/FLAC %{buildroot}%{_libdir}/*.la %multiarch_includes %{buildroot}%{_includedir}/sndfile.h %files -n %{libname} %doc AUTHORS NEWS README %{_libdir}/libsndfile.so.%{major}* %files -n %{develname} %doc %{_docdir}/libsndfile1-dev %doc ChangeLog %{_libdir}/libsndfile.so %multiarch %{_includedir}/multiarch-*/sndfile.h %{_includedir}/sndfile.h %{_includedir}/sndfile.hh %{_libdir}/pkgconfig/sndfile.pc %files -n %{staticname} %{_libdir}/libsndfile.a %files progs %{_bindir}/sndfile-* %{_mandir}/man1/* %if %{build_octave} %files octave %{_datadir}/octave/ %{_libdir}/octave/*/site/oct/*/*.oct %endif %changelog * Tue Nov 17 2015 luigiwalser <luigiwalser> 1.0.25-9.1.mga5 + Revision: 903904 - add patches from opensuse to fix CVE-2015-7805 and CVE-2015-8075 * Thu Dec 25 2014 luigiwalser <luigiwalser> 1.0.25-9.mga5 + Revision: 805967 - rediff upstream patch to fix buffer overreads * Wed Dec 24 2014 luigiwalser <luigiwalser> 1.0.25-8.mga5 + Revision: 805445 - add upstream patch to fix potential divide-by-zero * Wed Oct 15 2014 umeabot <umeabot> 1.0.25-7.mga5 + Revision: 748210 - Second Mageia 5 Mass Rebuild * Thu Sep 18 2014 pterjan <pterjan> 1.0.25-6.mga5 + Revision: 694914 - Rebuild to fix dependencies * Tue Sep 16 2014 umeabot <umeabot> 1.0.25-5.mga5 + Revision: 681789 - Mageia 5 Mass Rebuild * Sun Jul 06 2014 wally <wally> 1.0.25-4.mga5 + Revision: 647092 - add patch to fix linking * Fri Oct 18 2013 umeabot <umeabot> 1.0.25-3.mga4 + Revision: 507338 - Mageia 4 Mass Rebuild * Sat Jan 12 2013 umeabot <umeabot> 1.0.25-2.mga3 + Revision: 358180 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Fri Nov 30 2012 ovitters <ovitters> 1.0.25-1.mga3 + Revision: 323454 - clean spec - fix rpm group * Mon Jul 18 2011 fwang <fwang> 1.0.25-1.mga2 + Revision: 125599 - new version 1.0.25 * Mon Jul 04 2011 ahmad <ahmad> 1.0.24-1.mga2 + Revision: 117985 - Update to 1.0.24 - Add .tar.gz.asc Source * Sun Mar 27 2011 colin <colin> 1.0.23-2.mga1 + Revision: 78002 - Rebuild against new flac to get rid of 64 bit libdir path error + dmorgan <dmorgan> - Remove mdv macros Bootstrap libsndfile - imported package libsndfile