From d56c4ac4455ec1cba830eccc6d8b3bae5c865b89 Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Sat, 8 Nov 2008 14:51:47 -0600
Subject: bump mjpegtools to 1.9 See FSbug #2

---
 abs/extra-testing/mjpegtools/1.9.patch             | 147 +++++++++++++++++++++
 abs/extra-testing/mjpegtools/PKGBUILD              |  14 +-
 .../mjpegtools/mjpegtools-1.8.0-gcc41.patch        | 120 +++++++++++++++++
 3 files changed, 275 insertions(+), 6 deletions(-)
 create mode 100644 abs/extra-testing/mjpegtools/1.9.patch

diff --git a/abs/extra-testing/mjpegtools/1.9.patch b/abs/extra-testing/mjpegtools/1.9.patch
new file mode 100644
index 0000000..ae3fc90
--- /dev/null
+++ b/abs/extra-testing/mjpegtools/1.9.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 <stdlib.h>
++
+ class Parity
+ {
+ public:
+--- mjpegtools-1.9.0rc3/mpeg2enc/macroblock.cc
++++ mjpegtools-1.9.0rc3/mpeg2enc/macroblock.cc
+@@ -21,6 +21,7 @@
+ 
+ #include <stdio.h>
+ #include <cassert>
++#include <limits.h>
+ 
+ #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 <limits.h>
+ //#include <stdio.h>
+ //#include <stdlib.h>
+ //#include <unistd.h>
+--- mjpegtools-1.9.0rc3/mplex/inputstrm.cpp
++++ mjpegtools-1.9.0rc3/mplex/inputstrm.cpp
+@@ -23,6 +23,7 @@
+ 
+ #include <config.h>
+ #include <assert.h>
++#include <limits.h>
+ 
+ #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 <string.h>
+ #include "padstrm.hpp"
+ 
+ 
+--- mjpegtools-1.9.0rc3/mplex/multiplexor.cpp
++++ mjpegtools-1.9.0rc3/mplex/multiplexor.cpp
+@@ -22,6 +22,7 @@
+ #include <config.h>
+ #include <math.h>
+ #include <stdlib.h>
++#include <string.h>
+ 
+ #include <mjpeg_types.h>
+ #include <mjpeg_logging.h>
+--- mjpegtools-1.9.0rc3/mplex/main.cpp
++++ mjpegtools-1.9.0rc3/mplex/main.cpp
+@@ -31,6 +31,7 @@
+ #include <getopt.h>
+ #endif
+ #include <string>
++#include <string.h>
+ #include <memory>
+ #include <sys/stat.h>
+ #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<Node,HEADERCHUNK> Allocator;
++	typedef Allocator<Node,HEADERCHUNK> 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 <class KEY, class VALUE, class KEYFN, class PRED>
+-typename SkipList<KEY,VALUE,KEYFN,PRED>::Allocator
++typename SkipList<KEY,VALUE,KEYFN,PRED>::Allocator_t
+ 	SkipList<KEY,VALUE,KEYFN,PRED>::sm_oNodeAllocator (65536);
+ 
+ 
+@@ -345,7 +345,7 @@
+ // Default constructor.  Must be followed by Init().
+ template <class KEY, class VALUE, class KEYFN, class PRED>
+ SkipList<KEY,VALUE,KEYFN,PRED>::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 <class KEY, class VALUE, class KEYFN, class PRED>
+ SkipList<KEY,VALUE,KEYFN,PRED>::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/abs/extra-testing/mjpegtools/PKGBUILD b/abs/extra-testing/mjpegtools/PKGBUILD
index 663e839..340b25b 100644
--- a/abs/extra-testing/mjpegtools/PKGBUILD
+++ b/abs/extra-testing/mjpegtools/PKGBUILD
@@ -1,21 +1,23 @@
 pkgname=mjpegtools
-pkgver=1.8.0
+pkgver=1.9.0
 pkgrel=1
 pkgdesc="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. "
 arch=(i686 x86_64)
 license=('GPL')
 url="http://mjpeg.sourceforge.net/"
-depends=('libjpeg' 'libpng' 'sdl' 'gcc' 'libdv')
+#depends=('libjpeg' 'libpng' 'sdl' 'gcc' 'libdv')
+depends=('libjpeg' 'libpng'  'gcc-libs' 'libdv')
 makedepends=('gtk2')
 options=('!makeflags' '!libtool')
-source=(http://downloads.sourceforge.net/sourceforge/mjpeg/${pkgname}-${pkgver}.tar.gz
-	mjpegtools-1.8.0-gcc41.patch  mjpegtools-1.8.0-libc.patch)
+source=(http://downloads.sourceforge.net/sourceforge/mjpeg/${pkgname}-${pkgver}rc3.tar.gz
+	mjpegtools-1.8.0-gcc41.patch  mjpegtools-1.8.0-libc.patch 1.9.patch)
 #md5sums=('6fd98362310480bdaf7171e9659f165f' '803eccd889c60a442ee23ba65951fadc')
 
 build() {
-  cd ${startdir}/src/${pkgname}-${pkgver}
+  cd ${startdir}/src/${pkgname}-${pkgver}rc3
 #  patch -Np1 -i ${startdir}/src/mjpegtools-1.8.0-gcc41.patch || return 1
-  patch -Np1 -i ${startdir}/src/mjpegtools-1.8.0-libc.patch || return 1
+#  patch -Np1 -i ${startdir}/src/mjpegtools-1.8.0-libc.patch || return 1
+  patch -Np1 -i ${startdir}/src/1.9.patch || return 1
   ./configure --prefix=/usr
   find -name Makefile -exec sed -i -e 's:-march=k8 -mtune=k8::' -e 's:-march=pentium3 -mtune=pentium3::' {} \;
 
diff --git a/abs/extra-testing/mjpegtools/mjpegtools-1.8.0-gcc41.patch b/abs/extra-testing/mjpegtools/mjpegtools-1.8.0-gcc41.patch
index 77d556f..e04db90 100644
--- a/abs/extra-testing/mjpegtools/mjpegtools-1.8.0-gcc41.patch
+++ b/abs/extra-testing/mjpegtools/mjpegtools-1.8.0-gcc41.patch
@@ -10,3 +10,123 @@ diff -ur mjpegtools-1.8.0-orig/y4mdenoise/Region2D.hh mjpegtools-1.8.0/y4mdenois
  
  
  // The 2-dimensional region class.  Parameterized by the numeric type
+
+
+diff -ur mjpegtools-1.8.0.old/mpeg2enc/encodertypes.h mjpegtools-1.8.0/mpeg2enc/encodertypes.h
+--- mjpegtools-1.8.0.old/mpeg2enc/encodertypes.h	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mpeg2enc/encodertypes.h	2008-10-28 13:34:41.000000000 -0500
+@@ -23,7 +23,9 @@
+  * 02111-1307, USA.
+  *
+  */
+-
++
++#include <cstdlib>
++
+ #include "config.h"
+
+
+diff -ur mjpegtools-1.8.0.old/mpeg2enc/macroblock.cc mjpegtools-1.8.0/mpeg2enc/macroblock.cc
+--- mjpegtools-1.8.0.old/mpeg2enc/macroblock.cc	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mpeg2enc/macroblock.cc	2008-10-28 13:32:54.000000000 -0500
+@@ -19,6 +19,9 @@
+  *
+  */
+ 
++
++#include <limits>
++
+ #include <stdio.h>
+ 
+ #include "macroblock.hh"
+@@ -49,7 +52,7 @@
+ {
+     vector<MotionEst>::iterator i;
+     vector<MotionEst>::iterator min_me;
+-    int best_score = INT_MAX;
++    int best_score = std::numeric_limits<int>::max();
+     int cur_score;
+ 
+     //
+
+diff -ur mjpegtools-1.8.0.old/mpeg2enc/picturereader.cc mjpegtools-1.8.0/mpeg2enc/picturereader.cc
+--- mjpegtools-1.8.0.old/mpeg2enc/picturereader.cc	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mpeg2enc/picturereader.cc	2008-10-28 13:36:50.000000000 -0500
+@@ -20,6 +20,8 @@
+  */
+ 
+ 
++#include <limits>
++
+ #include "picturereader.hh"
+ #include <stdio.h>
+ #include <stdlib.h>
+@@ -37,7 +39,7 @@
+ 	frames_read = 0;
+ 	last_frame = -1;
+     lum_mean = 0;
+-    istrm_nframes = INT_MAX;
++    istrm_nframes = std::numeric_limits<int>::max();
+ }
+ 
+
+
+diff -ur mjpegtools-1.8.0.old/mplex/inputstrm.cpp mjpegtools-1.8.0/mplex/inputstrm.cpp
+--- mjpegtools-1.8.0.old/mplex/inputstrm.cpp	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mplex/inputstrm.cpp	2008-10-28 13:56:15.000000000 -0500
+@@ -21,6 +21,8 @@
+  */
+ 
+ 
++#include <limits>
++
+ #include <config.h>
+ #include <assert.h>
+ 
+@@ -72,7 +74,7 @@
+     au(0),
+ 	muxinto( into ),
+ 	kind(_kind),
+-    buffer_min(INT_MAX),
++    buffer_min(std::numeric_limits<int>::max()),
+     buffer_max(1)
+ {
+ }
+
+diff -ur mjpegtools-1.8.0.old/mplex/multiplexor.cpp mjpegtools-1.8.0/mplex/multiplexor.cpp
+--- mjpegtools-1.8.0.old/mplex/multiplexor.cpp	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mplex/multiplexor.cpp	2008-10-28 13:59:51.000000000 -0500
+@@ -19,6 +19,7 @@
+  */
+ 
+ #define STREAM_LOGGING
++#include <cstring>
+ #include <config.h>
+ #include <math.h>
+ #include <stdlib.h>
+
+diff -ur mjpegtools-1.8.0.old/mplex/padstrm.cpp mjpegtools-1.8.0/mplex/padstrm.cpp
+--- mjpegtools-1.8.0.old/mplex/padstrm.cpp	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mplex/padstrm.cpp	2008-10-28 14:03:24.000000000 -0500
+@@ -20,6 +20,8 @@
+  */
+ 
+ 
++#include <cstring>
++
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+
+diff -ur mjpegtools-1.8.0.old/mplex/main.cpp mjpegtools-1.8.0/mplex/main.cpp
+--- mjpegtools-1.8.0.old/mplex/main.cpp	2008-10-28 13:17:34.000000000 -0500
++++ mjpegtools-1.8.0/mplex/main.cpp	2008-10-28 14:06:49.000000000 -0500
+@@ -26,6 +26,7 @@
+ *************************************************************************/
+ 
+ #include <config.h>
++#include <cstring>
+ #include <stdio.h>
+ #ifdef HAVE_GETOPT_H
+ #include <getopt.h>
-- 
cgit v0.12