diff --git a/.gitignore b/.gitignore index e5a7475..7514eb9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /webrtc-audio-processing-0.1.tar.xz /webrtc-audio-processing-0.2.tar.xz +/webrtc-audio-processing-0.3.tar.xz diff --git a/sources b/sources index cb5a0c7..7850909 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3af3e71d50b743eacadcf38f6e9db2f8 webrtc-audio-processing-0.2.tar.xz +336ae032f608e65808ac577cde0ab72c webrtc-audio-processing-0.3.tar.xz diff --git a/webrtc-audio-processing-0.2-no_undefined.patch b/webrtc-audio-processing-0.2-no_undefined.patch deleted file mode 100644 index dbdb518..0000000 --- a/webrtc-audio-processing-0.2-no_undefined.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am.no_undefined webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am ---- webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am.no_undefined 2015-11-19 06:41:44.000000000 -0600 -+++ webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am 2016-05-16 11:35:36.772987393 -0500 -@@ -166,8 +166,8 @@ libwebrtc_audio_processing_la_LIBADD = $ - $(top_builddir)/webrtc/base/libbase.la \ - $(top_builddir)/webrtc/system_wrappers/libsystem_wrappers.la \ - $(top_builddir)/webrtc/common_audio/libcommon_audio.la \ -- $(top_builddir)/webrtc/modules/audio_coding/libaudio_coding.la --libwebrtc_audio_processing_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBWEBRTC_AUDIO_PROCESSING_VERSION_INFO) -+ $(top_builddir)/webrtc/modules/audio_coding/libaudio_coding.la -lpthread -+libwebrtc_audio_processing_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -version-info $(LIBWEBRTC_AUDIO_PROCESSING_VERSION_INFO) - - # FIXME: The MIPS optimisations need to be hooked up once we have the - # autotools conditionals in place diff --git a/webrtc-audio-processing-0.2-x86_msse2.patch b/webrtc-audio-processing-0.2-x86_msse2.patch deleted file mode 100644 index 658ad51..0000000 --- a/webrtc-audio-processing-0.2-x86_msse2.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -up webrtc-audio-processing-0.2/webrtc/common_audio/Makefile.am.x86_msse2 webrtc-audio-processing-0.2/webrtc/common_audio/Makefile.am ---- webrtc-audio-processing-0.2/webrtc/common_audio/Makefile.am.x86_msse2 2015-10-19 01:18:38.000000000 -0500 -+++ webrtc-audio-processing-0.2/webrtc/common_audio/Makefile.am 2016-05-27 11:40:19.486145724 -0500 -@@ -93,10 +93,17 @@ libcommon_audio_la_SOURCES = resampler/i - window_generator.cc - - if HAVE_X86 --libcommon_audio_la_SOURCES += \ -+noinst_LTLIBRARIES += libcommon_audio_sse2.la -+libcommon_audio_sse2_la_SOURCES = \ - resampler/sinc_resampler_sse.cc \ - fir_filter_sse.cc \ - fir_filter_sse.h -+ -+libcommon_audio_sse2_la_CFLAGS = $(AM_CFLAGS) $(COMMON_CFLAGS) -msse2 -+libcommon_audio_sse2_la_CXXFLAGS = $(AM_CXXFLAGS) $(COMMON_CXXFLAGS) -msse2 -+libcommon_audio_sse2_la_LDFLAGS = $(AM_LDFLAGS) -+ -+libcommon_audio_la_LIBADD = libcommon_audio_sse2.la - endif - - if HAVE_ARM -diff -up webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am.x86_msse2 webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am ---- webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am.x86_msse2 2016-05-27 11:40:19.484145715 -0500 -+++ webrtc-audio-processing-0.2/webrtc/modules/audio_processing/Makefile.am 2016-05-27 11:40:45.627270507 -0500 -@@ -147,9 +147,14 @@ libwebrtc_audio_processing_la_SOURCES += - endif - - if HAVE_X86 --libwebrtc_audio_processing_la_SOURCES += \ -+noinst_LTLIBRARIES = libwebrtc_audio_processing_privatearch.la -+LIBWEBRTC_PRIVATEARCH=libwebrtc_audio_processing_privatearch.la -+libwebrtc_audio_processing_privatearch_la_SOURCES = \ - aec/aec_core_sse2.c \ - aec/aec_rdft_sse2.c -+libwebrtc_audio_processing_privatearch_la_CFLAGS = $(AM_CFLAGS) $(COMMON_CFLAGS) -msse2 -+libwebrtc_audio_processing_privatearch_la_CXXFLAGS = $(AM_CXXFLAGS) $(COMMON_CXXFLAGS) -msse2 -+libwebrtc_audio_processing_privatearch_la_LDFLAGS = $(AM_LDFLAGS) - endif - - if HAVE_NEON -@@ -166,7 +171,8 @@ libwebrtc_audio_processing_la_LIBADD = $ - $(top_builddir)/webrtc/base/libbase.la \ - $(top_builddir)/webrtc/system_wrappers/libsystem_wrappers.la \ - $(top_builddir)/webrtc/common_audio/libcommon_audio.la \ -- $(top_builddir)/webrtc/modules/audio_coding/libaudio_coding.la -lpthread -+ $(top_builddir)/webrtc/modules/audio_coding/libaudio_coding.la -lpthread \ -+ $(LIBWEBRTC_PRIVATEARCH) - libwebrtc_audio_processing_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -version-info $(LIBWEBRTC_AUDIO_PROCESSING_VERSION_INFO) - - # FIXME: The MIPS optimisations need to be hooked up once we have the diff --git a/webrtc-audio-processing.spec b/webrtc-audio-processing.spec index 7e93e3c..a509cd4 100644 --- a/webrtc-audio-processing.spec +++ b/webrtc-audio-processing.spec @@ -1,16 +1,17 @@ Name: webrtc-audio-processing -Version: 0.2 -Release: 7%{?dist} +Version: 0.3 +Release: 1%{?dist} Summary: Library for echo cancellation License: BSD URL: http://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing/ Source0: http://freedesktop.org/software/pulseaudio/webrtc-audio-processing/%{name}-%{version}.tar.xz + Patch0: webrtc-fix-typedefs-on-other-arches.patch -# https://bugs.freedesktop.org/show_bug.cgi?id=96244 -Patch1: webrtc-audio-processing-0.2-no_undefined.patch -Patch2: webrtc-audio-processing-0.2-x86_msse2.patch +# WIP to only explicitly add -mfpu=neon where needed for neon runtime detection +# currently doesn't work due to %%configure injecting incompatible CFLAGS atm, see below +Patch1: webrtc-audio-processing-0.3-neon.patch # bz#1336466, https://bugs.freedesktop.org/show_bug.cgi?id=95738 Patch4: webrtc-audio-processing-0.2-big-endian.patch @@ -32,11 +33,10 @@ files for developing applications that use %{name}. %prep %setup -q %patch0 -p1 -b .typedef -%patch1 -p1 -b .no_undefined -%patch2 -p1 -b .x86_msse2 +%patch1 -p1 -b .neon %patch4 -p1 -b .bigendian -# for patch1/patch2 +# for patch1 autoreconf -fi @@ -49,6 +49,9 @@ autoreconf -fi ## hack to ensure -mfpu=neon flag appears last when using --enable-neon=yes|runtime #export CFLAGS="%{optflags} -mfpu=neon" #export CXXFLAGS="%{optflags} -mfpu=neon" +## except that enables it for *all* objects, not just the ones we want (see patch1), +## seems CFLAGS always trumps project flags, see also: +## http://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html %endif %configure \ @@ -58,6 +61,7 @@ autoreconf -fi make %{?_smp_mflags} + %install make install DESTDIR=%{buildroot} INSTALL="install -p" @@ -67,6 +71,7 @@ rm -fv %{buildroot}%{_libdir}/lib*.la %post -p /sbin/ldconfig %postun -p /sbin/ldconfig + %files %doc NEWS AUTHORS README.md %license COPYING @@ -79,6 +84,9 @@ rm -fv %{buildroot}%{_libdir}/lib*.la %changelog +* Mon Jul 18 2016 Rex Dieter - 0.3-1 +- 0.3 + * Fri May 27 2016 Rex Dieter - 0.2-7 - better/upstreamable x86_msse2.patch