#
# Conditional build:
-%bcond_without xmms # without XMMS plugin
-#
-%define _rc rc3
+%bcond_without static_libs # static libraries
+
Summary: Freeware Advanced Audio Decoder 2
-Summary(pl): Darmowy zaawansowany dekoder audio
+Summary(pl.UTF-8): Darmowy zaawansowany dekoder audio
Name: faad2
-Version: 2.0
+Version: 2.11.1
Release: 1
-License: GPL
-Group: Libraries
-Source0: http://dl.sourceforge.net/faac/%{name}-%{version}-%{_rc}.tar.gz
-# Source0-md5: 0080076438655ed7facf1089a9805aff
-URL: http://www.audiocoding.com/
-BuildRequires: autoconf
-BuildRequires: automake
-%{?with_xmms:BuildRequires: id3lib-devel >= 3.8.2 }
-BuildRequires: libsndfile-devel >= 1.0.4
-BuildRequires: libtool
-%{?with_xmms:Buildrequires: rpmbuild(macros) >= 1.125}
-%{?with_xmms:BuildRequires: xmms-devel}
+License: GPL v2+
+Group: Applications/Sound
+#Source0: http://downloads.sourceforge.net/faac/%{name}-%{version}.tar.gz
+#Source0Download: https://github.com/knik0/faad2/releases
+Source0: https://github.com/knik0/faad2/archive/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: f85b2514c4fb2f87d22a3bc879d83277
+Patch0: %{name}-backward_compat.patch
+URL: https://github.com/knik0/faad2
+BuildRequires: cmake >= 3.15
+BuildRequires: rpmbuild(macros) >= 1.721
+Requires: %{name}-libs = %{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
FAAD 2 is a LC, MAIN and LTP profile, MPEG2 and MPEG-4 AAC decoder,
completely written from scratch.
-%description -l pl
-FAAD 2 to napisany ca³kowicie od pocz±tku dekoder MPEG2 i MPEG-4
-obs³uguj±cy profile LC, MAIN i LTP.
+%description -l pl.UTF-8
+FAAD 2 to napisany całkowicie od początku dekoder MPEG2 i MPEG-4
+obsługujący profile LC, MAIN i LTP.
+
+%package libs
+Summary: FAAD 2 libraries
+Summary(pl.UTF-8): Biblioteki FAAD 2
+Group: Libraries
+%if 0%{?_soname_prov:1}
+Provides: %{_soname_prov libfaad.so.0}
+%endif
+Conflicts: faad2 < 2.0-3
+
+%description libs
+FAAD 2 is a LC, MAIN and LTP profile, MPEG2 and MPEG-4 AAC decoder,
+completely written from scratch. This package contains base FAAD 2
+libraries: libfaad and libfaad_drm.
+
+%description libs -l pl.UTF-8
+FAAD 2 to napisany całkowicie od początku dekoder MPEG2 i MPEG-4
+obsługujący profile LC, MAIN i LTP. Ten pakiet zawiera podstawowe
+biblioteki FAAD 2: libfaad i libfaad_drm.
%package devel
-Summary: Devel files for faad2
-Summary(pl): Pliki nag³ówkowe faad2
+Summary: Header files for faad2
+Summary(pl.UTF-8): Pliki nagłówkowe faad2
Group: Development/Libraries
-Requires: %{name} = %{version}
+Requires: %{name}-libs = %{version}-%{release}
%description devel
-Devel files for faad2.
+Header files for faad2.
-%description devel -l pl
-Pliki nag³ówkowe faad2.
+%description devel -l pl.UTF-8
+Pliki nagłówkowe faad2.
%package static
Summary: Static faad2 library
-Summary(pl): Statyczna biblioteka faad2
+Summary(pl.UTF-8): Statyczna biblioteka faad2
Group: Development/Libraries
-Requires: %{name}-devel = %{version}
+Requires: %{name}-devel = %{version}-%{release}
%description static
Static faad2 library.
-%description static -l pl
+%description static -l pl.UTF-8
Statyczna biblioteka faad2.
-%package -n xmms-input-faad2
-Summary: XMMS plugin for AAC files
-Summary(pl): Wtyczka XMMS do plików AAC
-Group: X11/Applications/Sound
-Requires: %{name} = %{version}
-Requires: xmms
-
-%description -n xmms-input-faad2
-XMMS plugin for AAC files.
-
-%description -n xmms-input-faad2 -l pl
-Wtyczka XMMS do plików AAC.
-
%prep
-%setup -q -n %{name}
+%setup -q
+%patch0 -p1
%build
-sh ./bootstrap
-%configure \
- --with-mp4v2
+%if %{with static_libs}
+%cmake -B build-static \
+ -DBUILD_SHARED_LIBS=OFF
-%{__make}
-
-%if %{with xmms}
-%{__make} -C plugins/xmms \
- GTK_CONFIG=gtk-config
+%{__make} -C build-static
%endif
+%cmake -B build
+
+%{__make} -C build
+
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
+%if %{with static_libs}
+%{__make} -C build-static install \
DESTDIR=$RPM_BUILD_ROOT
-%if %{with xmms}
-%{__make} \
- -C plugins/xmms \
- install \
- GTK_CONFIG=gtk-config \
- DESTDIR=$RPM_BUILD_ROOT
+# ensure files from shared build are packaged
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/faad
+%{__rm} $RPM_BUILD_ROOT%{_pkgconfigdir}/faad2.pc
%endif
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+# for compatibility with apps using dlopen("libfaad.so.0")
+ln -sf $(basename $RPM_BUILD_ROOT%{_libdir}/libfaad.so.2.*.*) $RPM_BUILD_ROOT%{_libdir}/libfaad.so.0
+
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog NEWS README TODO
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
+%attr(755,root,root) %{_bindir}/faad
+%{_mandir}/man1/faad.1*
-%files devel
+%files libs
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so
-%{_libdir}/lib*.la
-%{_includedir}/*.h
+%doc AUTHORS ChangeLog README
+%attr(755,root,root) %{_libdir}/libfaad.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfaad.so.2
+# compat symlink
+%attr(755,root,root) %{_libdir}/libfaad.so.0
+%attr(755,root,root) %{_libdir}/libfaad_drm.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfaad_drm.so.2
-%files static
+%files devel
%defattr(644,root,root,755)
-%{_libdir}/lib*.a
+%attr(755,root,root) %{_libdir}/libfaad.so
+%attr(755,root,root) %{_libdir}/libfaad_drm.so
+%{_includedir}/faad.h
+%{_includedir}/neaacdec.h
+%{_pkgconfigdir}/faad2.pc
-%if %{with xmms}
-%files -n xmms-input-faad2
+%if %{with static_libs}
+%files static
%defattr(644,root,root,755)
-%attr(755,root,root) %{xmms_input_plugindir}/*.so
+%{_libdir}/libfaad.a
+%{_libdir}/libfaad_drm.a
%endif