Blob Blame History Raw

Name:           webrtc-audio-processing
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
# 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

BuildRequires: automake libtool

%description
%{name} is a library derived from Google WebRTC project that 
provides echo cancellation functionality. This library is used by for example
PulseAudio to provide echo cancellation.

%package        devel
Summary:        Development files for %{name}
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    devel
The %{name}-devel package contains libraries and header
files for developing applications that use %{name}.

%prep
%setup -q
%patch0 -p1 -b .typedef
%patch1 -p1 -b .neon
%patch4 -p1 -b .bigendian

# for patch1
autoreconf -fi


%build

%ifarch %{arm}
# disable neon support
# can't unconditionally enable neon, and --enable-neon=runtime is broken (WebRtc_GetCPUFeaturesARM is unimplemented)
%global neon --enable-neon=no
## 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 \
  %{?neon} \
  --disable-silent-rules \
  --disable-static

make %{?_smp_mflags}


%install
make install DESTDIR=%{buildroot} INSTALL="install -p"

## unpackaged files
rm -fv %{buildroot}%{_libdir}/lib*.la

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig


%files
%doc NEWS AUTHORS README.md
%license COPYING
%{_libdir}/libwebrtc_audio_processing.so.1*

%files devel
%{_libdir}/libwebrtc_audio_processing.so
%{_libdir}/pkgconfig/webrtc-audio-processing.pc
%{_includedir}/webrtc_audio_processing/


%changelog
* Mon Jul 18 2016 Rex Dieter <rdieter@fedoraproject.org> - 0.3-1
- 0.3

* Fri May 27 2016 Rex Dieter <rdieter@fedoraproject.org> - 0.2-7
- better/upstreamable x86_msse2.patch

* Fri May 27 2016 Rex Dieter <rdieter@fedoraproject.org> - 0.2-6
- simpler/upstreamable no_undefined.patch (fdo#96244)

* Wed May 25 2016 Than Ngo <than@redhat.com> - 0.2-5
- add url to upstream bug report

* Tue May 24 2016 Than Ngo <than@redhat.com> - 0.2-4
- add support big endian

* Mon May 16 2016 Rex Dieter <rdieter@fedoraproject.org> - 0.2-3
- ExclusiveArch primary archs, FTBFS on big endian arches (#1336466)

* Mon May 16 2016 Rex Dieter <rdieter@fedoraproject.org> - 0.2-2
- link w/ --no-undefined
- fix x86 sse2 runtime detection

* Thu May 12 2016 Rex Dieter <rdieter@fedoraproject.org> - 0.2-1
- webrtc-audio-processing-0.2 (#1335536)
- %%files: track ABI/API closer

* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 0.1-9
- Rebuilt for GCC 5 C++11 ABI change

* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Wed Feb 26 2014 Debarshi Ray <rishi@fedoraproject.org> - 0.1-5
- Fix FTBFS on non-x86/arm
  Resolves: #1068823

* Tue Jan 28 2014 Kyle McMartin <kyle@fedoraproject.org> - 0.1-6
- webrtc-fix-typedefs-on-other-arches.patch: fix ftbfs on non-x86/arm due to
  a build #error in typedefs.h, however, the defines are not used anywhere in
  the code. Fixes build on ppc{,64}, s390x, and aarch64.

* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.1-4
- Mass rebuild 2013-12-27

* Thu Jul 11 2013 Debarshi Ray <rishi@fedoraproject.org> 0.1-4
- Rebuilt to fix broken binary possibly caused by broken toolchain

* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Tue Oct 9 2012 Dan HorĂ¡k <dan[at]danny.cz> 0.1-2
- set ExclusiveArch x86 and ARM for now

* Fri Oct 5 2012 Christian Schaller <christian.schaller@gmail.com> 0.1-1
- Initial Fedora spec.