#TODO: Build with openjpeg
%define name	ffmpeg
%define version	0.5.3
#% define svndate	20090227
%define release	1%{?svndate:.%svndate}%{?_dist_release}

Summary:	Digital VCR and streaming server
Name:		%{name}
Version:	%{version}
Release:	%{release}
Source:		http://ffmpeg.org/releases/%{name}-%{version}.tar.bz2
#Source1:        %{name}-snapshot.sh

# For no texi2html
# these man files for ffmpeg-0.5 are genereted with texi2html
Source90:	ffmpeg.1.gz
Source91:	ffplay.1.gz
Source92:	ffserver.1.gz

# get rid of textrels on x86_64 in yasm code (from RPM Fusion)
Patch0:         %{name}-textrel.patch

Patch10:        ffmpeg-0.5-disable-texi2html.patch

License:	GPLv2+
Group:		Applications/Multimedia
URL:		http://ffmpeg.org/

BuildRequires:  bzip2-devel
BuildRequires:	zlib-devel 
BuildRequires:	SDL-devel
BuildRequires:	imlib2-devel
BuildRequires:  speex-devel
#BuildRequires:	texi2html
BuildRequires:	libogg-devel
BuildRequires:	libvorbis-devel
#BuildRequires:  openjpeg-devel
BuildRequires:	libtheora-devel 
BuildRequires:	gsm-devel
BuildRequires:	libdc1394-devel
BuildRequires:	libraw1394-devel
%ifarch %{ix86} x86_64
BuildRequires:	yasm
%endif
# *-devel packages provided by other self-build-* should only be listed
# in self-build-%{name}.spec as PreReq.
#BuildRequires: xvidcore-devel, faac-devel, lame-devel
#BuildRequires: x264-devel, libdca-devel, a52dec-devel
#BuildRequires: faad2-devel
%{?_with_amr:BuildRequires: amrnb-devel amrwb-devel}
BuildRoot:	%{_tmppath}/%{name}-%{version}-root

%description
FFMpeg is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.

%package libs
Group: System Environment/Libraries
Summary: Libraries for %{name}
Group: System Environment/Libraries
#Requires: a52dec, faad2

%description libs
FFMpeg is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.

This package contains the libraries for %{name}.

%package devel
Summary: Development package for %{name}
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
Requires: pkgconfig

%description devel
FFMpeg is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.

This package contains development files for %{name}.


%prep
#% setup -q -n %{name}-%{svndate}
%setup -q
%patch0 -p1 -b .textrel
%patch10 -p1 -b .texi2html

%build
%ifarch ppc
# compile with -mlongcall on ppc/ppc64 (rf804)
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -mlongcall"
%endif

./configure \
    --prefix=%{_prefix} \
    --incdir=%{_includedir}/%{name} \
    --shlibdir=%{_libdir} \
    --libdir=%{_libdir} \
    --mandir=%{_mandir} \
    --arch=%{_target_cpu} \
%ifarch %{ix86}
    --cpu=%{_target_cpu} \
%endif
%ifarch ppc
    --cpu=g3 \
%endif
    --enable-runtime-cpudetect \
    --extra-cflags="$RPM_OPT_FLAGS" \
    %{?_with_amr:--enable-libamr-nb --enable-libamr-wb --enable-nonfree} \
    --enable-bzlib \
    --enable-libdc1394 \
    --enable-libfaac --enable-nonfree \
    --enable-libfaad \
    --enable-libgsm \
    --enable-libmp3lame \
    %{?_with_openjpeg:--enable-libopenjpeg} \
    --enable-libtheora \
    --enable-libvorbis \
    --enable-libx264 \
    --enable-libxvid \
    --enable-x11grab \
    --enable-avfilter \
    --enable-avfilter-lavf \
    --enable-postproc \
    --enable-swscale \
    --enable-pthreads \
    --disable-static \
    --enable-shared \
    --enable-gpl \
    --disable-debug \
    --disable-stripping

#% {__make} %{?_smp_mflags}
%{__make}

%install
%__make install DESTDIR=$RPM_BUILD_ROOT

## install man
%__mkdir_p $RPM_BUILD_ROOT%{_mandir}/man1
%__install %{SOURCE90} %{SOURCE91} %{SOURCE92} $RPM_BUILD_ROOT%{_mandir}/man1/
    

%clean
%{__rm} -rf $RPM_BUILD_ROOT

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


%files
%defattr(-,root,root,-)
%doc COPYING.GPL CREDITS Changelog README RELEASE doc/*.*
%{_prefix}/bin/ffmpeg
%{_prefix}/bin/ffplay
%{_prefix}/bin/ffserver
%{_mandir}/man1/ffmpeg.1*
%{_mandir}/man1/ffplay.1*
%{_mandir}/man1/ffserver.1*
%{_datadir}/ffmpeg
%{?_with_amr:%{_datadir}/%{name}}

%files libs
%defattr(-,root,root,-)
%{_libdir}/lib*.so.*
%{_libdir}/vhook/

%files devel
%defattr(-,root,root,-)
%{_includedir}/ffmpeg
%{_libdir}/pkgconfig/lib*.pc
%{_libdir}/lib*.so


%changelog
* Sat Oct 30 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5.3-1
- new upstream release

* Sat Jul 17 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5.2-2
- change release to sync with self-build-ffmpeg

* Thu Jun 03 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5.2-1
- new upstream release

* Sun Apr 18 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5.1-1
- new upstream release

* Sat Jun 06 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-6
- applied ffmpeg-0.5-disable-texi2html.patch, return
  (in face, no ffmpeg-0.5-disable-texi2html.patch applied for 0.5-4)
- added ffmpeg.1, ffplay.1, ffserver.1

* Tue May 26 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-5
- change release to sync with self-build-ffmpeg

* Wed May 13 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-4
- applied ffmpeg-0.5-disable-texi2html.patch
  - dropped BuildRequires: texi2html

* Thu Mar 12 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-3
- change release to sync with self-build-ffmpeg

* Wed Mar 11 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-2
- corrected release number

* Wed Mar 11 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-1
- new upstream release
- added BuildRequires: 
  - speex-devel
  - bzip2-devel

* Sat Feb 28 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090227.8
- 20090227 snapshot

* Tue Feb 24 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090202.7
- added %%{?_with_amr:%%{_datadir}/%%{name}} in %%files

* Sun Feb 08 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090202.6
- changed to PreReq:  self-build-faad2 >= 2.0 from faad2-devel
- dropped Requires: a52dec, faad2 in ffmpeg-libs

* Wed Feb 04 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090202.5
- 20090202 snapshot

* Sun Jan 11 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090110.4
- 20090110 snapshot
- dropped some patches

* Thu Nov 13 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-15488.1
- source updated (r15488)
- fixed License: GPLv2+
- added BuildRequires: gsm-devel libdc1394-devel libraw1394-devel
- added BuildRequires: yasm (only %%ix86)
- applied ffmpeg-cpu.patch (merged from RPM Fusion)

* Sun Nov 02 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-11662.3vl4
- spec in utf8

* Tue May 20 2008 Kazutaka HARADA <kazutaka@dc4.so-net.ne.jp> 0.4.9-11662.2vl4
- change release to sync with self-build-ffmpeg

* Wed Apr 16 2008 Atsushi SHICHI <ats777@gmail.com> 0.4.9-11662.1vl4
- drop "Patch100: ffmpeg-vine.patch".

* Mon Apr 7 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-0.20080128.1vl4
- build with new versioning policy
- change to use svn export from svn checkout on post install
- fix ffmpeg-vine.patch for libswscale/swscale.c.rej

* Thu Mar 13 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-0.20080128vl2
- [self-build-ffmpeg.spec]
  For all pre-required package that is provied by self-build,  
  changed to its self-build package

* Sun Mar 9 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-0.20080128vl1
- initial build for Vine Linux 4.2
- snapshot 2008/01/28 + some Rev.11662 2008/01/29

### end of file
