From f36e9b61da8f50bdd7ea13e271459226eaa691c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 12 Nov 2011 11:21:17 +0200 Subject: [PATCH] Patch to use system libgsm instead of a bundled copy. Make main package dep in -devel ISA qualified. Drop -octave Provides (not actually built with octave > 3.0). Don't build throwaway static lib. Run test suite during build. --- libsndfile-1.0.25-system-gsm.patch | 56 ++++++++++++++++++++++++++++++ libsndfile.spec | 30 +++++++++++----- 2 files changed, 77 insertions(+), 9 deletions(-) create mode 100644 libsndfile-1.0.25-system-gsm.patch diff --git a/libsndfile-1.0.25-system-gsm.patch b/libsndfile-1.0.25-system-gsm.patch new file mode 100644 index 0000000..f9dd9e2 --- /dev/null +++ b/libsndfile-1.0.25-system-gsm.patch @@ -0,0 +1,56 @@ +diff -up libsndfile-1.0.25/src/gsm610.c~ libsndfile-1.0.25/src/gsm610.c +--- libsndfile-1.0.25/src/gsm610.c~ 2011-01-19 12:12:14.000000000 +0200 ++++ libsndfile-1.0.25/src/gsm610.c 2011-11-12 02:05:23.385054757 +0200 +@@ -27,7 +27,7 @@ + #include "sfendian.h" + #include "common.h" + #include "wav_w64.h" +-#include "GSM610/gsm.h" ++#include + + #define GSM610_BLOCKSIZE 33 + #define GSM610_SAMPLES 160 +@@ -388,7 +388,8 @@ gsm610_seek (SF_PRIVATE *psf, int UNUSED + psf_fseek (psf, psf->dataoffset, SEEK_SET) ; + pgsm610->blockcount = 0 ; + +- gsm_init (pgsm610->gsm_data) ; ++ gsm_destroy (pgsm610->gsm_data) ; ++ pgsm610->gsm_data = gsm_create () ; + if ((SF_CONTAINER (psf->sf.format)) == SF_FORMAT_WAV || + (SF_CONTAINER (psf->sf.format)) == SF_FORMAT_W64) + gsm_option (pgsm610->gsm_data, GSM_OPT_WAV49, &true_flag) ; +diff -up libsndfile-1.0.25/src/Makefile.am~ libsndfile-1.0.25/src/Makefile.am +--- libsndfile-1.0.25/src/Makefile.am~ 2011-07-07 12:40:25.000000000 +0300 ++++ libsndfile-1.0.25/src/Makefile.am 2011-11-12 01:46:19.760807068 +0200 +@@ -8,7 +8,7 @@ lib_LTLIBRARIES = libsndfile.la + include_HEADERS = sndfile.hh + nodist_include_HEADERS = sndfile.h + +-noinst_LTLIBRARIES = GSM610/libgsm.la G72x/libg72x.la libcommon.la ++noinst_LTLIBRARIES = G72x/libg72x.la libcommon.la + + OS_SPECIFIC_CFLAGS = @OS_SPECIFIC_CFLAGS@ + OS_SPECIFIC_LINKS = @OS_SPECIFIC_LINKS@ +@@ -49,7 +49,7 @@ endif + libsndfile_la_LDFLAGS = -no-undefined -version-info @SHARED_VERSION_INFO@ @SHLIB_VERSION_ARG@ + libsndfile_la_SOURCES = $(FILESPECIFIC) $(noinst_HEADERS) + nodist_libsndfile_la_SOURCES = $(nodist_include_HEADERS) +-libsndfile_la_LIBADD = libcommon.la GSM610/libgsm.la G72x/libg72x.la \ ++libsndfile_la_LIBADD = libcommon.la -lgsm G72x/libg72x.la \ + @EXTERNAL_LIBS@ -lm + + libcommon_la_SOURCES = $(COMMON) +@@ -57,12 +57,6 @@ libcommon_la_SOURCES = $(COMMON) + #====================================================================== + # Subdir libraries. + +-GSM610_libgsm_la_SOURCES = GSM610/config.h GSM610/gsm.h GSM610/gsm610_priv.h \ +- GSM610/add.c GSM610/code.c GSM610/decode.c GSM610/gsm_create.c \ +- GSM610/gsm_decode.c GSM610/gsm_destroy.c GSM610/gsm_encode.c \ +- GSM610/gsm_option.c GSM610/long_term.c GSM610/lpc.c GSM610/preprocess.c \ +- GSM610/rpe.c GSM610/short_term.c GSM610/table.c +- + G72x_libg72x_la_SOURCES = $(COMMON)G72x/g72x.h G72x/g72x_priv.h \ + G72x/g721.c G72x/g723_16.c G72x/g723_24.c G72x/g723_40.c G72x/g72x.c + diff --git a/libsndfile.spec b/libsndfile.spec index c6933c5..c7e050e 100644 --- a/libsndfile.spec +++ b/libsndfile.spec @@ -1,11 +1,12 @@ Summary: Library for reading and writing sound files Name: libsndfile Version: 1.0.25 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPLv2+ and GPLv2+ and BSD Group: System Environment/Libraries URL: http://www.mega-nerd.com/libsndfile/ Source0: http://www.mega-nerd.com/libsndfile/files/libsndfile-%{version}.tar.gz +Patch0: %{name}-1.0.25-system-gsm.patch BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildRequires: alsa-lib-devel @@ -14,8 +15,8 @@ BuildRequires: libogg-devel BuildRequires: libvorbis-devel BuildRequires: pkgconfig BuildRequires: sqlite-devel - -Provides: %{name}-octave = %{version}-%{release} +BuildRequires: gsm-devel +BuildRequires: libtool %description @@ -29,7 +30,7 @@ compiles and runs on *nix, MacOS, and Win32. %package devel Summary: Development files for libsndfile Group: Development/Libraries -Requires: %{name} = %{version}-%{release} pkgconfig +Requires: %{name}%{?_isa} = %{version}-%{release} pkgconfig %description devel @@ -53,6 +54,8 @@ This package contains command line utilities for libsndfile. %prep %setup -q +%patch0 -p1 +rm -r src/GSM610 ; autoreconf -I M4 # for system-gsm patch %build @@ -61,7 +64,7 @@ This package contains command line utilities for libsndfile. --enable-sqlite \ --enable-alsa \ --enable-largefile \ - --enable-shave=no + --disable-static # Get rid of rpath sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool @@ -102,8 +105,10 @@ EOF rm -f %{buildroot}%{_bindir}/sndfile-jackplay %endif -# remove static lib (RHBZ#556074) -rm -f %{buildroot}%{_libdir}/%{name}.a + +%check +LD_LIBRARY_PATH=$PWD/src/.libs make check + %clean rm -rf $RPM_BUILD_ROOT @@ -155,6 +160,13 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Nov 12 2011 Ville Skyttä - 1.0.25-2 +- Patch to use system libgsm instead of a bundled copy. +- Make main package dep in -devel ISA qualified. +- Drop -octave Provides (not actually built with octave > 3.0). +- Don't build throwaway static lib. +- Run test suite during build. + * Thu Jul 14 2011 Michal Hlavinka - 1.0.25-1 - Update to 1.0.25 - fixes integer overflow by processing certain PAF audio files (#721240) @@ -242,10 +254,10 @@ rm -rf $RPM_BUILD_ROOT - Fix format string bug (#149863). - Drop explicit Epoch 0. -* Sat Dec 4 2004 Ville Skyttä - 0:1.0.11-0.fdr.1 +* Sat Dec 4 2004 Ville Skyttä - 0:1.0.11-0.fdr.1 - Update to 1.0.11. -* Wed Oct 13 2004 Ville Skyttä - 0:1.0.10-0.fdr.1 +* Wed Oct 13 2004 Ville Skyttä - 0:1.0.10-0.fdr.1 - Update to 1.0.10, update URLs, include ALSA support. - Disable dependency tracking to speed up the build. - Add missing ldconfig invocations.