]> git.pld-linux.org Git - packages/avifile.git/blobdiff - avifile.spec
- more general ix86 %%ifarchs
[packages/avifile.git] / avifile.spec
index 4a6d49370b2b33f56eba100f375c02d8ea2c4c9a..593658c5b6299fa1cad739b53af7a334e31d9f11 100644 (file)
@@ -1,29 +1,40 @@
-# It's sick.
 #
 # Conditional build:
-# _without_qt          - disables QT support
-# _with_divx           - enables divx4linux support (proprietary, binary-only
-#                        lib)  note: if disabled, divx is decoded by ffmpeg
+%bcond_without qt      # don't build Qt-based utilities (incl. aviplay)
+%bcond_with    divx    # enables divx4linux support (proprietary, binary-only
+                       # lib)  note: if disabled, divx is decoded by ffmpeg
+%bcond_with    nas     # enable NAS support
 #
-%define                _snapver        20020913
-%define                _snap           %{_snapver}
 Summary:       Library for playing AVI files
 Summary(pl):   Biblioteka do odtwarzania plików AVI
 Summary(pt_BR):        Biblioteca para reproduzir formatos de áudio e vídeo usando binários win32
 Name:          avifile
-Version:       0.7.16
-Release:       0.%{_snap}.4%{?_with_divx:+divx}
+Version:       0.7.38
+Release:       4%{?with_divx:+divx}
 Epoch:         3
 License:       GPL
 Group:         X11/Libraries
-Source0:       http://avifile.sourceforge.net/%{name}-%{version}-%{_snap}.tgz
+Source0:       http://dl.sourceforge.net/%{name}/%{name}-0.7-%{version}.tar.gz
+# Source0-md5: db90c4bc0a8a8182b1ec084feca86bbb
 Source1:       %{name}.desktop
 Patch0:                %{name}-shareware.patch
-Patch1:                %{name}-no_libnsl.patch
-Patch2:                %{name}-vidix.patch
-Patch3:                %{name}-configure.patch
-Patch4:                %{name}-compilation.patch
-Patch5:                %{name}-fix-keys.patch
+Patch1:                %{name}-fix-keys.patch
+Patch2:                %{name}-etc_dir.patch
+Patch3:                %{name}-aviplay_h.patch
+Patch4:                %{name}-am18.patch
+Patch5:                %{name}-no_aux_dir.patch
+Patch6:                %{name}-link_shared.patch
+Patch7:                %{name}-avifile_config_fix.patch
+Patch8:                %{name}-no_libnsl.patch
+Patch9:                %{name}-system-libmad.patch
+Patch10:       %{name}-ffmpeg-alpha.patch
+Patch11:       %{name}-opt.patch
+Patch12:       %{name}-ffmpeg-ppc.patch
+Patch13:       %{name}-freetype-includes.patch
+Patch14:       %{name}-linux2.6.patch
+Patch15:       %{name}-xvid1.patch
+Patch16:       %{name}-opts.patch
+Patch17:       %{name}-mp3.patch
 URL:           http://avifile.sourceforge.net/
 BuildRequires: SDL-devel >= 1.2.0
 BuildRequires: XFree86-devel
@@ -31,24 +42,28 @@ BuildRequires:      a52dec-libs-devel
 BuildRequires: audiofile-devel
 BuildRequires: autoconf
 BuildRequires: automake
-%{?_with_divx:BuildRequires:   divx4linux-devel}
+%{?with_divx:BuildRequires:    divx4linux-devel}
+BuildRequires: faad2-devel
+%ifarch ppc
+# version with altivec support fixed
+BuildRequires: gcc >= 5:3.3.2-3
+%endif
 BuildRequires: lame-libs-devel
 BuildRequires: libjpeg-devel
+BuildRequires: libmad-devel
 BuildRequires: libogg-devel
-BuildRequires: libtool >= 0:1.4.2-9
+BuildRequires: libtool >= 1:1.4.3
 BuildRequires: libvorbis-devel >= 1:1.0
-BuildRequires: nas-devel
-%{?!_without_qt:BuildRequires: qt-devel >= 2.0.0}
+%{?with_nas:BuildRequires:     nas-devel}
+BuildRequires: pkgconfig
+%{?with_qt:BuildRequires:      qt-devel >= 2.0.0}
 BuildRequires: unzip
-%ifarch %{ix86} ppc
-BuildRequires: xvid-devel
-%endif
+BuildRequires: xft-devel
+BuildRequires: xvid-devel >= 1:1.0.0
 BuildConflicts:        wine-devel
+Obsoletes:     avifile-vidix-nvidia
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _prefix         /usr/X11R6
-%define                _mandir         %{_prefix}/man
-
 %description
 Avifile is a library that allow programs to read and write compressed
 AVI files (Indeo Video, DivX :-), etc.) under x86 Linux.
@@ -70,8 +85,10 @@ Summary:     Header file required to build programs using libavifile
 Summary(pl):   Pliki nag³ówkowe wymagane przez programy u¿ywaj±ce libavifile
 Summary(pt_BR):        Componentes para desenvolvimento com a avifile
 Group:         X11/Development/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      XFree86-devel
-Requires:      %{name} = %{version}
+Requires:      xft-devel
+Requires:      zlib-devel
 
 %description devel
 Header files required to build programs using libavifile.
@@ -83,11 +100,23 @@ libavifile.
 %description devel -l pt_BR
 Componentes para desenvolvimento com a avifile.
 
+%package qt
+Summary:       Qt-based AVI utilities
+Summary(pl):   Oparte na bibliotece Qt narzêdzia do plików AVI
+Group:         X11/Applications/Multimedia
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description qt
+Qt-based AVI utilities.
+
+%description qt -l pl
+Oparte na bibliotece Qt narzêdzia do plików AVI.
+
 %package aviplay
 Summary:       Player for AVI/ASF/WMF files
 Summary(pl):   Odtwarzacz plików AVI/ASF/WMF
 Group:         X11/Applications/Multimedia
-Requires:      %{name} = %{version}
+Requires:      %{name}-qt = %{epoch}:%{version}-%{release}
 
 %description aviplay
 Sample player for AVI, ASF, WFM (with straming support) files.
@@ -100,7 +129,7 @@ odtwarzania z sieci.)
 Summary:       Sample programs using the avifile library
 Summary(pl):   Przyk³adowe programy u¿ywaj±ce biblioteki avifile
 Group:         X11/Applications/Multimedia
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 
 %description utils
 Qt-based AVI utilities with few other useful supporting tools for TV
@@ -117,7 +146,7 @@ s
 Summary:       Win32 audio/video plugin
 Summary(pl):   Plugin audio/video win32
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      w32codec
 
 %description win32
@@ -132,7 +161,7 @@ bibliotek DLL Win32.
 Summary:       GPL MPEG4 codec
 Summary(pl):   Kodek MPEG4 na licencji GPL
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 
 %description ffmpeg
 ffmpeg is a hyper fast realtime audio/video encoder, a streaming
@@ -156,7 +185,7 @@ kompatybilnego z AC3 strumienia.
 Summary:       Fast MPEG4 codec
 Summary(pl):   Szybki kodek MPEG4
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      divx4linux
 Obsoletes:     avifile-divx4
 
@@ -170,7 +199,7 @@ Dekoder i koder MPEG-4 DivX.
 Summary:       Vorbis audio plugin
 Summary(pl):   Plugin vorbis audio
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 
 %description vorbis
 Plugin for decompression of Vorbis audio streams.
@@ -182,7 +211,7 @@ Plugin do dekompresji strumieni audio Vorbis.
 Summary:       MAD - MPEG audio plugin
 Summary(pl):   MAD - plugin MPEG audio
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 
 %description mad
 Plugin for decompression of MPEG-1 Layer I/II/III audio streams.
@@ -194,7 +223,10 @@ Plugin do dekompresji strumieni d
 Summary:       MP3 audio encoder plugin
 Summary(pl):   Plugin enkoduj±cy d¼wiêk w formacie MP3
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+# this library is dlopened
+Requires:      libmp3lame.so.0
+Requires:      lame-libs
 
 %description lame_audioenc
 Plugin for mp3 encoding capability of avirecompress tool.
@@ -206,7 +238,7 @@ Plugin umo
 Summary:       XVID codec
 Summary(pl):   Kodek XVID
 Group:         X11/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      xvid
 
 %description xvid
@@ -215,155 +247,290 @@ XVID decoder and encoder.
 %description xvid -l pl
 Dekoder i koder XVID.
 
+%package vidix-driver-fb
+Summary:       VIDIX driver for generic FrameBuffer
+Summary(pl):   Sterownik VIDIX dla zwyk³ego FrameBuffera
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-fb
+VIDIX driver for generic FrameBuffer.
+
+%description vidix-driver-fb -l pl
+Sterownik VIDIX dla zwyk³ego FrameBuffera.
+
+%package vidix-driver-mach64
+Summary:       VIDIX driver for ATI Mach64 video adapters
+Summary(pl):   Sterownik VIDIX dla kart graficznych ATI Mach64
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-mach64
+VIDIX driver for ATI Mach64 adapters.
+
+%description vidix-driver-mach64 -l pl
+Sterownik vidix dla kart graficznych ATI Mach64.
+
+%package vidix-driver-rage128
+Summary:       VIDIX driver for ATI Rage128 video adapters
+Summary(pl):   Sterownik VIDIX dla kart graficznych ATI Rage128
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-rage128
+VIDIX driver for ATI Rage128 video adapters.
+
+%description vidix-driver-rage128 -l pl
+Sterownik VIDIX dla kart graficznych ATI Rage128.
+
+%package vidix-driver-radeon
+Summary:       VIDIX driver for ATI Radeon video adapters
+Summary(pl):   Sterownik VIDIX dla kart graficznych ATI Radeon
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-radeon
+VIDIX driver for ATI Radeon video adapters.
+
+%description vidix-driver-radeon -l pl
+Sterownik VIDIX dla kart graficznych ATI Radeon.
+
+%package vidix-driver-mga
+Summary:       VIDIX driver for MGA (Matrox) video adapters
+Summary(pl):   Sterownik VIDIX dla kart graficznych MGA (Matrox)
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-mga
+VIDIX driver for MGA (Matrox) video adapters.
+
+%description vidix-driver-mga -l pl
+Sterownik VIDIX dla kart graficznych MGA (Matrox).
+
+%package vidix-driver-nvidia
+Summary:       VIDIX driver for NVidia video adapters
+Summary(pl):   Sterownik VIDIX dla kart graficznych NVidia
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-nvidia
+VIDIX driver for NVidia video adapters.
+
+%description vidix-driver-nvidia -l pl
+Sterownik VIDIX dla kart graficznych NVidia.
+
+%package vidix-driver-permedia
+Summary:       VIDIX driver for Permedia video adapters
+Summary(pl):   Sterownik VIDIX dla kart graficznych Permedia
+Group:         X11/Libraries
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description vidix-driver-permedia
+VIDIX driver for Permedia video adapters.
+
+%description vidix-driver-permedia -l pl
+Sterownik VIDIX dla kart graficznych Permedia.
+
 %prep
-%setup -q -n avifile0.7-%{version}
+%setup -q -n %{name}-0.7-%{version}
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -p0
+%patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p1
+%patch16 -p1
+%patch17 -p1
+
+# unwanted hack
+rm -f m4/as.m4
+# original file contains only m4/*.m4; must exist because of AC_INIT parameter
+> acinclude.m4
 
 %build
-rm -f missing aclocal.m4
 %{__libtoolize}
-%{__aclocal}
-%{__autoheader}
+%{__aclocal} -I m4
 %{__autoconf}
+%{__autoheader}
 %{__automake}
 
-cd plugins/libmad/libmad
-%{__autoconf}
-cd ../../..
-
-cd libmmxnow
-%{__autoconf}
-cd ..
-
-# This is The WRONG Way (tm)
-%if %{!?_without_qt:1}%{?_without_qt:0}
-GEN_MOC="`grep -Rl '^ *Q_OBJECT$' *`"
-for f in $GEN_MOC; do moc -o "${f%.[!.]*}.moc" "$f"; done
-%endif
-
 %configure \
-       CPPFLAGS="-I/usr/include/divx -I/usr/include/xvid" AS="%{__cc}" \
-       FFMPEG_CFLAGS="%{rpmcflags} -ffast-math %{!?debug:-fomit-frame-pointer}" \
+       CPPFLAGS="-I/usr/include/divx" \
        --with-qt-includes=%{_includedir}/qt \
        --with-qt-libraries=%{_libdir} \
        --enable-a52 \
-       --enable-release \
+       %{?with_divx:--enable-divx4} \
        --enable-ffmpeg \
        --enable-ffmpeg-a52 \
-       %{?_with_divx:--enable-divx4} \
-%ifarch i586 i686 athlon
+       --enable-lamebin \
+       --disable-lame \
+       --enable-libmad \
+       --enable-release \
+%ifarch %{ix86}
+%ifnarch i386 i486
        --enable-x86opt \
+%endif
 %else
        --disable-x86opt \
 %endif
-       %{?_without_qt:--without-qt} \
-       %{?_without_qt:--disable-samples}
+       %{!?with_qt:--without-qt} \
+       %{!?with_qt:--disable-samples}
 
 touch lib/dummy.cpp
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},/usr/lib/win32,%{_pixmapsdir},%{_applnkdir}/Multimedia}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir}/%{name},%{_libdir},/usr/lib/win32,%{_pixmapsdir},%{_desktopdir}}
 
 %{__make} install \
-       DESTDIR="$RPM_BUILD_ROOT" \
+       DESTDIR=$RPM_BUILD_ROOT \
        m4datadir="%{_aclocaldir}"
 
-cp -f include/fourcc.h $RPM_BUILD_ROOT/%{_includedir}/%{name}
+cp -f include/fourcc.h $RPM_BUILD_ROOT%{_includedir}/%{name}
+
+mv -f $RPM_BUILD_ROOT%{_includedir}/%{name}-0.7/* $RPM_BUILD_ROOT%{_includedir}/%{name}
 
-install %{SOURCE1} $RPM_BUILD_ROOT%{_applnkdir}/Multimedia
+install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
 install bin/test.png $RPM_BUILD_ROOT%{_pixmapsdir}/avifile.png
 
+# avifile dlopens *.so
+rm -f $RPM_BUILD_ROOT%{_libdir}/avifile*/{,vidix/}*.la
+# API not exported
+rm -f $RPM_BUILD_ROOT%{_libdir}/libqavm*.{so,la}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post  -p /sbin/ldconfig
 %postun        -p /sbin/ldconfig
 
+%post  qt -p /sbin/ldconfig
+%postun        qt -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %doc README doc/{CREDITS,EXCEPTIONS,KNOWN_BUGS,LICENSING}
 %doc doc/{README-DEVEL,TODO,VIDEO-PERFORMANCE,WARNINGS}
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
+%attr(755,root,root) %{_libdir}/libaviplay*.so.*.*
 %dir %{_libdir}/avifile*
 %attr(755,root,root) %{_libdir}/avifile*/audiodec.so*
-%{_libdir}/avifile*/audiodec.la
 %attr(755,root,root) %{_libdir}/avifile*/mpeg_audiodec.so*
-%{_libdir}/avifile*/mpeg_audiodec.la
 %attr(755,root,root) %{_libdir}/avifile*/ac3pass.so*
-%{_libdir}/avifile*/ac3pass.la
 %attr(755,root,root) %{_libdir}/avifile*/mjpeg.so*
-%{_libdir}/avifile*/mjpeg.la
+%ifarch %{ix86}
+%dir %{_libdir}/avifile*/vidix
+%endif
 
 %files devel
 %defattr(644,root,root,755)
 %doc doc/README-DEVEL*
 %attr(755,root,root) %{_bindir}/avifile-config
-%attr(755,root,root) %{_bindir}/mmxnow-config
+%attr(755,root,root) %{_libdir}/libaviplay*.so
 %{_libdir}/lib*.la
-%{_libdir}/lib*.so
 %{_includedir}/%{name}
-%{_includedir}/*.h
 %{_aclocaldir}/*.m4
+%{_pkgconfigdir}/%{name}.pc
+%{_mandir}/man1/avifile-config.1*
+
+%if %{with qt}
+%files qt
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/avicap
+%attr(755,root,root) %{_bindir}/avirecompress
+%attr(755,root,root) %{_libdir}/libqavm*.so.*.*
+%{_mandir}/man1/avicap.1*
+%{_mandir}/man1/avirecompress.1*
 
-%if %{?_without_qt:0}%{!?_without_qt:1}
 %files aviplay
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/aviplay
 %{_mandir}/man1/aviplay.1*
 %{_datadir}/%{name}*
-%{_applnkdir}/Multimedia/*
+%{_desktopdir}/*
 %{_pixmapsdir}/*
+%endif
 
 %files utils
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/avi[bcmrt]*
+%attr(755,root,root) %{_bindir}/avibench
+%attr(755,root,root) %{_bindir}/avicat
+%attr(755,root,root) %{_bindir}/avimake
+%attr(755,root,root) %{_bindir}/avirec
+%attr(755,root,root) %{_bindir}/avitype
 %attr(755,root,root) %{_bindir}/kv4lsetup
-%endif
+%{_mandir}/man1/avibench.1*
+%{_mandir}/man1/avicat.1*
+%{_mandir}/man1/avimake.1*
+%{_mandir}/man1/avirec.1*
+%{_mandir}/man1/avitype.1*
+%{_mandir}/man1/kv4lsetup.1*
 
 %ifarch %{ix86}
 %files win32
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/win32.so*
-%{_libdir}/avifile*/win32.la
 %endif
 
 %files ffmpeg
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/ffmpeg.so*
-%{_libdir}/avifile*/ffmpeg.la
 
-%if %{?_with_divx:1}%{!?_with_divx:0}
+%if %{with divx}
 %files divx
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/divx*.so*
-%{_libdir}/avifile*/divx*.la
 %endif
 
 %files vorbis
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/vorbis*.so*
-%{_libdir}/avifile*/vorbis*.la
 
 %files mad
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/mad*.so*
-%{_libdir}/avifile*/mad*.la
 
 %files lame_audioenc
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/mp3lamebin_audioenc.so*
-%{_libdir}/avifile*/mp3lamebin_audioenc.la
+#%attr(755,root,root) %{_libdir}/avifile*/mp3lame_audioenc.so*
 
-%ifarch %{ix86} ppc
 %files xvid
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/avifile*/xvid.so*
-%{_libdir}/avifile*/xvid.la
+
+%ifarch %{ix86}
+%files vidix-driver-fb
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/avifile*/vidix/libgenfb.so*
+
+%files vidix-driver-mach64
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/avifile*/vidix/libmach64.so*
+
+%files vidix-driver-rage128
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/avifile*/vidix/librage128.so*
+
+%files vidix-driver-radeon
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/avifile*/vidix/libradeon.so*
+
+%files vidix-driver-mga
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/avifile*/vidix/libmga*.so*
+
+%files vidix-driver-permedia
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/avifile*/vidix/libpm3.so*
 %endif
This page took 0.053765 seconds and 4 git commands to generate.