From a35e4d6ee5afe8b4ff378caed9afd609d78665bd Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Fri, 25 Jul 2008 19:08:52 +0000 Subject: [PATCH] initial mjpegtools import --- .gitignore | 1 + mjpegtools-1.9.0_rc3-gcc43.patch | 147 ++++++++++ mjpegtools-1.9.0rc1-anytovcd-ffmpegver.patch | 11 + mjpegtools.spec | 272 +++++++++++++++++++ sources | 1 + 5 files changed, 432 insertions(+) create mode 100644 mjpegtools-1.9.0_rc3-gcc43.patch create mode 100644 mjpegtools-1.9.0rc1-anytovcd-ffmpegver.patch create mode 100644 mjpegtools.spec diff --git a/.gitignore b/.gitignore index e69de29..e9e3e2a 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +mjpegtools-1.9.0rc3.tar.gz diff --git a/mjpegtools-1.9.0_rc3-gcc43.patch b/mjpegtools-1.9.0_rc3-gcc43.patch new file mode 100644 index 0000000..ae3fc90 --- /dev/null +++ b/mjpegtools-1.9.0_rc3-gcc43.patch @@ -0,0 +1,147 @@ +http://bugs.gentoo.org/200767 +http://sourceforge.net/tracker/index.php?func=detail&aid=1947059&group_id=5776&atid=305776 + +--- mjpegtools-1.9.0rc3/mpeg2enc/encodertypes.h ++++ mjpegtools-1.9.0rc3/mpeg2enc/encodertypes.h +@@ -25,6 +25,8 @@ + */ + + ++#include ++ + class Parity + { + public: +--- mjpegtools-1.9.0rc3/mpeg2enc/macroblock.cc ++++ mjpegtools-1.9.0rc3/mpeg2enc/macroblock.cc +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + #include "macroblock.hh" + #include "mpeg2syntaxcodes.h" +--- mjpegtools-1.9.0rc3/mpeg2enc/picturereader.cc ++++ mjpegtools-1.9.0rc3/mpeg2enc/picturereader.cc +@@ -23,6 +23,7 @@ + #include "picturereader.hh" + #include "mpeg2encoder.hh" + #include "imageplanes.hh" ++#include + //#include + //#include + //#include +--- mjpegtools-1.9.0rc3/mplex/inputstrm.cpp ++++ mjpegtools-1.9.0rc3/mplex/inputstrm.cpp +@@ -23,6 +23,7 @@ + + #include + #include ++#include + + #include "mjpeg_types.h" + #include "inputstrm.hpp" +--- mjpegtools-1.9.0rc3/mplex/padstrm.cpp ++++ mjpegtools-1.9.0rc3/mplex/padstrm.cpp +@@ -24,6 +24,7 @@ + #include "config.h" + #endif + ++#include + #include "padstrm.hpp" + + +--- mjpegtools-1.9.0rc3/mplex/multiplexor.cpp ++++ mjpegtools-1.9.0rc3/mplex/multiplexor.cpp +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + #include + #include +--- mjpegtools-1.9.0rc3/mplex/main.cpp ++++ mjpegtools-1.9.0rc3/mplex/main.cpp +@@ -31,6 +31,7 @@ + #include + #endif + #include ++#include + #include + #include + #ifndef _WIN32 +--- mjpegtools-1.9.0rc3/y4mdenoise/Set.hh ++++ mjpegtools-1.9.0rc3/y4mdenoise/Set.hh +@@ -23,7 +23,7 @@ + // How we implement ourselves. + + public: +- typedef typename Imp::Allocator Allocator; ++ typedef typename Imp::Allocator_t Allocator; + // The type of allocator to use to allocate items in the set. + + Set (const PRED &a_rPred = PRED(), +--- mjpegtools-1.9.0rc3/y4mdenoise/SkipList.hh ++++ mjpegtools-1.9.0rc3/y4mdenoise/SkipList.hh +@@ -57,19 +57,19 @@ + // Will give good sorting for up to e^10 items. + + public: +- typedef Allocator Allocator; ++ typedef Allocator Allocator_t; + // The type of node allocator to use. + +- static Allocator sm_oNodeAllocator; ++ static Allocator_t sm_oNodeAllocator; + // The default node allocator. + + SkipList (const PRED &a_rPred = PRED(), +- Allocator &a_rAlloc = sm_oNodeAllocator); ++ Allocator_t &a_rAlloc = sm_oNodeAllocator); + // Default constructor. Must be followed by Init(). + + SkipList (Status_t &a_reStatus, bool a_bAllowDuplicates, + uint32_t a_nRandSeed, const PRED &a_rPred = PRED(), +- Allocator &a_rAlloc = sm_oNodeAllocator); ++ Allocator_t &a_rAlloc = sm_oNodeAllocator); + // Constructor. Specify whether or not duplicates are allowed, + // and provide a random number seed. + +@@ -255,7 +255,7 @@ + + private: + +- Allocator &m_rNodeAllocator; ++ Allocator_t &m_rNodeAllocator; + // Where we get memory to allocate nodes. + + bool m_bAllowDuplicates; +@@ -337,7 +337,7 @@ + + // The default node allocator. Allocates 64K at a time. + template +-typename SkipList::Allocator ++typename SkipList::Allocator_t + SkipList::sm_oNodeAllocator (65536); + + +@@ -345,7 +345,7 @@ + // Default constructor. Must be followed by Init(). + template + SkipList::SkipList (const PRED &a_rPred, +- Allocator &a_rAlloc) ++ Allocator_t &a_rAlloc) + : m_rNodeAllocator (a_rAlloc), m_oPred (a_rPred) + { + // Set up some defaults. +@@ -371,7 +371,7 @@ + template + SkipList::SkipList (Status_t &a_reStatus, + bool a_bAllowDuplicates, uint32_t a_nRandSeed, +- const PRED &a_rPred, Allocator &a_rAlloc) ++ const PRED &a_rPred, Allocator_t &a_rAlloc) + : m_rNodeAllocator (a_rAlloc), m_oPred (a_rPred) + { + // Make sure they didn't start us off with an error. diff --git a/mjpegtools-1.9.0rc1-anytovcd-ffmpegver.patch b/mjpegtools-1.9.0rc1-anytovcd-ffmpegver.patch new file mode 100644 index 0000000..069cef6 --- /dev/null +++ b/mjpegtools-1.9.0rc1-anytovcd-ffmpegver.patch @@ -0,0 +1,11 @@ +--- mjpegtools-1.9.0rc1/scripts/anytovcd.sh~ 2006-02-16 19:58:24.000000000 +0200 ++++ mjpegtools-1.9.0rc1/scripts/anytovcd.sh 2007-02-24 22:28:52.000000000 +0200 +@@ -206,7 +206,7 @@ + + fi + +-FFMPEG_VERSION="`${FFMPEG} 2>&1 | awk '$4 == "build" {print $5}' | sed s/,// | head -1`" ++FFMPEG_VERSION="`${FFMPEG} -version 2>&1 | awk '$1 == "ffmpeg" {print $2}' | sed s/SVN-r// | head -n 1`" + + AUD_TRACK="`range_check ${AUD_TRACK} 1 99`" + FFMPEG_AUD_TRACK="`${FFMPEG} -i \"${AUDIO_SRC}\" 2>&1 | awk '/Audio:/ {sub("^#","",$2); print $2}' | awk -F[ '{print $1}' | head -${AUD_TRACK} | tail -1`" diff --git a/mjpegtools.spec b/mjpegtools.spec new file mode 100644 index 0000000..7139db5 --- /dev/null +++ b/mjpegtools.spec @@ -0,0 +1,272 @@ +Name: mjpegtools +Version: 1.9.0 +Release: 0.5.rc3%{?dist} +Summary: Tools to manipulate MPEG data + +Group: Applications/Multimedia +License: GPLv2 +URL: http://mjpeg.sourceforge.net/ +Source0: http://downloads.sourceforge.net/mjpeg/%{name}-%{version}rc3.tar.gz +Patch0: %{name}-1.9.0rc1-anytovcd-ffmpegver.patch +Patch1: http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/media-video/mjpegtools/files/mjpegtools-1.9.0_rc3-gcc43.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: libjpeg-devel +BuildRequires: nasm +BuildRequires: libdv-devel +BuildRequires: SDL-devel >= 1.1.3 +BuildRequires: SDL_gfx-devel +BuildRequires: libquicktime-devel >= 0.9.8 +BuildRequires: libpng-devel +BuildRequires: gtk2-devel >= 2.4.0 +Requires: %{name}-libs = %{version}-%{release} +# mencoder for lav2avi.sh +Requires: mencoder +# ffmpeg main package, y4mscaler and which for anytovcd.sh +Requires: ffmpeg +Requires: y4mscaler +Requires: which +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description +The mjpeg programs are a set of tools that can do recording of videos +and playback, simple cut-and-paste editing and the MPEG compression of +audio and video under Linux. This package contains mjpegtools console +utilities. + +%package gui +Summary: GUI tools to manipulate MPEG data +Group: Applications/Multimedia +Requires: %{name} = %{version}-%{release} + +%description gui +The mjpeg programs are a set of tools that can do recording of videos +and playback, simple cut-and-paste editing and the MPEG compression of +audio and video under Linux. This package contains mjpegtools GUI +utilities. + +%package libs +Summary: Libraries used by mjpegtools +Group: System Environment/Libraries +Requires: libquicktime >= 0.9.8 + +%description libs +The mjpeg programs are a set of tools that can do recording of videos +and playback, simple cut-and-paste editing and the MPEG compression of +audio and video under Linux. This package contains libraries used by +mjpegtools. + +%package devel +Summary: Development files for mjpegtools libraries +Group: Development/Libraries +Requires: %{name}-libs = %{version}-%{release} +Requires: pkgconfig + +%description devel +The mjpeg programs are a set of tools that can do recording of videos +and playback, simple cut-and-paste editing and the MPEG compression of +audio and video under Linux. This package contains development files +for building applications that use mjpegtools libraries. + + +%prep +%setup -q -n %{name}-%{version}rc3 +find . -type d -name CVS -print0 | xargs -0 rm -rf +%patch0 -p1 +%patch1 -p1 +sed -i -e 's/ARCHFLAGS=.*/ARCHFLAGS=/' configure* +sed -i -e 's|/lib /usr/lib|/%{_lib} %{_libdir}|' configure # lib64 rpaths +for f in docs/yuvfps.1 ; do + iconv -f iso-8859-1 -t utf-8 $f > $f.utf8 ; mv $f.utf8 $f +done + + +%build +%configure --disable-dependency-tracking --disable-static +make # %{?_smp_mflags} + + +%install +rm -rf $RPM_BUILD_ROOT +make install DESTDIR=$RPM_BUILD_ROOT +rm -f $RPM_BUILD_ROOT{%{_infodir}/dir,%{_libdir}/lib*.la} +# too broken/outdated to be useful in 1.[89].0 (and would come with dep chain) +rm -f $RPM_BUILD_ROOT%{_bindir}/mpegtranscode + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%post libs -p /sbin/ldconfig + +%postun libs -p /sbin/ldconfig + +%post +/sbin/install-info %{_infodir}/mjpeg-howto.info %{_infodir}/dir || : + +%preun +[ $1 -eq 0 ] && \ +/sbin/install-info --delete %{_infodir}/mjpeg-howto.info %{_infodir}/dir || : + + +%files +%defattr(-,root,root,-) +%doc COPYING CHANGES ChangeLog AUTHORS BUGS README.lavpipe NEWS TODO +%{_bindir}/* +%exclude %{_bindir}/glav +%exclude %{_bindir}/lavplay +%exclude %{_bindir}/y4mhist +%exclude %{_bindir}/yuvplay +%{_mandir}/man1/*.1* +%exclude %{_mandir}/man1/lavplay.1* +%exclude %{_mandir}/man1/yuvplay.1* +%{_mandir}/man5/yuv4mpeg.5* +%{_infodir}/mjpeg-howto.info* + +%files gui +%defattr(-,root,root,-) +%doc README.glav +%{_bindir}/glav +# lavplay and yuvplay won't save -libs/console util users from X11 and SDL +# dependencies as long as liblavplay is in -libs, but they're inherently +# GUI tools -> include them here +%{_bindir}/lavplay +%{_bindir}/y4mhist +%{_bindir}/yuvplay +%{_mandir}/man1/lavplay.1* +%{_mandir}/man1/yuvplay.1* + +%files libs +%defattr(-,root,root,-) +%doc COPYING +%{_libdir}/lib*.so.* + +%files devel +%defattr(-,root,root,-) +%{_includedir}/%{name} +%{_libdir}/lib*.so +%{_libdir}/pkgconfig/%{name}.pc + + +%changelog +* Tue Apr 22 2008 Ville Skyttä - 1.9.0-0.5.rc3 +- Apply patch from Gentoo to fix build with GCC 4.3 (#1941). + +* Tue Dec 4 2007 Ville Skyttä - 1.9.0-0.4.rc3 +- 1.9.0rc3. + +* Sat Sep 29 2007 Ville Skyttä - 1.9.0-0.4.rc2 +- Requires: which + +* Wed Aug 22 2007 Ville Skyttä - 1.9.0-0.3.rc2 +- License: GPLv2 + +* Thu Jun 21 2007 Ville Skyttä - 1.9.0-0.2.rc2 +- Rebuild. + +* Fri Jun 8 2007 Ville Skyttä - 1.9.0-0.1.rc2 +- 1.9.0rc2. + +* Sat Nov 25 2006 Ville Skyttä - 1.8.0-7 +- Split GUI utilities into -gui subpackage. +- Don't ship mpegtranscode, it's broken/outdated. +- Require mencoder for lav2avi.sh. + +* Fri Oct 06 2006 Thorsten Leemhuis 1.8.0-6 +- rebuilt for unwind info generation, broken in gcc-4.1.1-21 + +* Sun Sep 24 2006 Ville Skyttä - 1.8.0-5 +- Specfile cleanup. + +* Sun Jun 4 2006 Ville Skyttä - 1.8.0-4 +- Get rid of undefined non-weak symbols in liblav*. +- Apply upstream fix for compiling with libquicktime 0.9.8. + +* Thu Mar 09 2006 Andreas Bierfert +- switch to new release field + +* Tue Feb 28 2006 Andreas Bierfert +- add dist + +* Sat Jan 21 2006 Ville Skyttä - 1.8.0-0.lvn.3 +- Include license text in -libs, it can be installed without the main package. +- Convert yuvfps man page to UTF-8. +- Fix -devel Group tag. + +* Thu Jan 19 2006 Adrian Reber - 1.8.0-0.lvn.2 +- Added patch to compile with gcc 4.1 +- Dropped 0 Epoch + +* Mon Sep 19 2005 Ville Skyttä - 0:1.8.0-0.lvn.1 +- 1.8.0. + +* Sat Aug 27 2005 Ville Skyttä - 0:1.6.3-0.lvn.0.1.rc3 +- 1.6.3-rc3, Altivec fixes applied upstream. + +* Fri Aug 12 2005 Ville Skyttä - 0:1.6.3-0.lvn.0.1.rc2 +- 1.6.3-rc2, clean up obsolete pre-FC2 stuff. +- Fix Altivec build, kudos to upstream. + +* Thu May 26 2005 Ville Skyttä - 0:1.6,3-0.lvn.0.1.rc1 +- 1.6.3-rc1 (1.7.0 snapshot package not released, so no Epoch bump). + +* Sun May 22 2005 Ville Skyttä - 0:1.7.0-0.lvn.0.2.cvs20050521 +- PPC: disable Altivec due to gcc4 build failure, honor $RPM_OPT_FLAGS. + +* Sat May 21 2005 Ville Skyttä - 0:1.7.0-0.lvn.0.1.cvs20050521 +- Pre-1.7.0 snapshot as of today, all patches applied or obsoleted upstream. +- Require pkgconfig in -devel. + +* Wed Feb 2 2005 Ville Skyttä - 0:1.6.2-0.lvn.7 +- Add corrected -fPIC tweak from Thorsten. + +* Mon Jan 31 2005 Ville Skyttä - 0:1.6.2-0.lvn.6 +- Include PNG input support. +- Remove no-op $RPM_OPT_FLAGS setting from %%build. +- Remove bogus optimization settings from configure script. + +* Fri Dec 31 2004 Thorsten Leemhuis - 0:1.6.2-0.lvn.5 +- CFLAGS="$CFLAGS -fPIC" on non x86; Fixes build error on x86_64; The + option --with-pic is not enough + +* Sat Dec 18 2004 Dams - 0:1.6.2-0.lvn.4 +- Disabling static libraries building + +* Tue Dec 14 2004 Ville Skyttä - 0:1.6.2-0.lvn.3 +- Include quicktime support. +- Apply patch from ALT Linux to fix info pages, fix typo in %%post. +- Require /sbin/install-info. +- Add "--without static" rpmbuild option to work around an issue with FC3 strip +- Always enable SIMD accelerations, CPU capabilities detected at runtime. +- Always disable use of cmov. + +* Thu Nov 11 2004 Dams 0:1.6.2-0.lvn.2 +- Added patch to fix gcc3.4 build +- Detected race condition in Makefiles (disabling _smp_mflags use) +- Added info files & scriptlets +- Dropped patch0 and patch1 + +* Tue Jun 8 2004 Dams 0:1.6.2-0.lvn.1 +- Updated to 1.6.2 + +* Sun Sep 28 2003 Dams 0:1.6.1-0.fdr.6 +- Removed comment after scriptlets + +* Fri Aug 22 2003 Dams 0:1.6.1-0.fdr.5 +- buildroot -> RPM_BUILD_ROOT + +* Sun Aug 10 2003 Dams 0:1.6.1-0.fdr.4 +- Applied upstream patches to fix build on gcc3.3 systems + +* Tue Apr 29 2003 Dams 0:1.6.1-0.fdr.3 +- Now test arch for configure options (from Ville) +- Removed ImageMagick-devel BuildRequires + +* Sun Apr 27 2003 Dams 0:1.6.1-0.fdr.2 +- Added missing BuildRequires +- Added post/postun scriplets for libs package + +* Wed Apr 23 2003 Dams +- Initial build. diff --git a/sources b/sources index e69de29..29c0a05 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +d38dad44333e3236ccc0dc1efdb27910 mjpegtools-1.9.0rc3.tar.gz