summaryrefslogtreecommitdiff
path: root/media-video/mpeg-tools
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /media-video/mpeg-tools
reinit the tree, so we can have metadata
Diffstat (limited to 'media-video/mpeg-tools')
-rw-r--r--media-video/mpeg-tools/Manifest16
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-64bit_fixes.patch286
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-as-needed.patch47
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-build.patch56
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-jpeg.patch56
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-powerpc.patch20
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg-7.patch26
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg.patch38
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-convert.patch169
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-mpeg-encode.patch87
-rw-r--r--media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-tests.patch204
-rw-r--r--media-video/mpeg-tools/metadata.xml7
-rw-r--r--media-video/mpeg-tools/mpeg-tools-1.5b-r4.ebuild66
-rw-r--r--media-video/mpeg-tools/mpeg-tools-1.5b-r5.ebuild65
14 files changed, 1143 insertions, 0 deletions
diff --git a/media-video/mpeg-tools/Manifest b/media-video/mpeg-tools/Manifest
new file mode 100644
index 000000000000..d2dcaaefc22c
--- /dev/null
+++ b/media-video/mpeg-tools/Manifest
@@ -0,0 +1,16 @@
+AUX mpeg-tools-1.5b-64bit_fixes.patch 6986 SHA256 76e8add6d8241898abf20c27ff93655df05ee90866632a0eb852ff6665078d4e SHA512 8d8f596cf39c1e9535ae21f8399136189e0775cbe69146208654bf394b8524932a4961e99061c76ba195c20909ab6dc2f420a12b72862ebbc6c81d7e7c7c6cc6 WHIRLPOOL 45348e3d70ee0f624ce8a16de52ec74164b728a56dad7695066dbae6314e37a4860cf2aca68e2674ec391c219470e53db3b621a4815d4c23a55f0d42e376f432
+AUX mpeg-tools-1.5b-as-needed.patch 1526 SHA256 204f1ca6fc2d30c1bd4c7ed69d2d0fc3792e819bcc31837c945ade680b333961 SHA512 5874d5241ffb9ed6d6bc35774f6e643c141c8ec63811d8f761700acef816911220df20a943c739f4df4ce95783502f8963235ae4ecc0b66bd116a6daaa2aa5d1 WHIRLPOOL 3a0e2fa95b222712c8fee82cdd8d07dc89118db6922d65602308ab8dcfde5ddb3c0513e805930060523e5f0b47d5720b6461e45ca49c6eb809e75f368a836d79
+AUX mpeg-tools-1.5b-build.patch 1414 SHA256 0cbcc0e0de74f02b069059588334ba0766bf74769fdd63d37c1702d2e47eb1e5 SHA512 f2bfe1126926c6473a149ea120898eb252c681808cd2745bed5428164ebeabfb33218cb7f98b4a9930af9d88055ca067129f1a4ffede824d5d6179762f27a4d7 WHIRLPOOL 7360fac65ff398cd0a2ff703c6f81d67b24487ce46e90a06594c888996f5f45d11758acf55a6165851f3ad101c31b09d95c42703c544aa5a788436ac42c16c9e
+AUX mpeg-tools-1.5b-jpeg.patch 1498 SHA256 de0fb57de46db6ee33d901782ffad666b70bfaa39b84277595837726d9486d6e SHA512 9bc509c603e825d94372f866fced352149d5d003c2ee247eb356db22f80bbf6cfbfcaaf03fb7a104ff84548e52f0f3034619e15598d0ae04df36d4b4332ea18b WHIRLPOOL 30fc5fc35fefd40baaa029073a73edbbfd8d50f23ffd989e81726109cde05e1abeeeafd599e0562f149e10a332077e9a0097cb00dd92e7025539d3d154b79617
+AUX mpeg-tools-1.5b-powerpc.patch 1041 SHA256 93c04d75cd216d2d24500db785f8c91821c46f579f8771f24c1ea9babbe5b0a1 SHA512 f0ee310dce12d9137186b7d99aa88282cb65838855820ad3642bf090194be07d5f6cfef509561d1e097a938e68a6c2f8c61536a1921d08df458c66b83c6eaeca WHIRLPOOL 373b714f251bd9538898b74bf701e1913729b6120b3260fcdc649093566813f6f86499d6b2484b36537c25e493102af3534bd82a18e877209f6bf3105b5eb845
+AUX mpeg-tools-1.5b-system-jpeg-7.patch 907 SHA256 de0815e2f9be14761b25cef0a6602d79eaed47411ce1148c4e64826c3cfd46dc SHA512 010460117a835092a42ab0a7b7f7d04dabe3ff691452541db204d34f1459e72060045af10dee4cb1c953235eb6ab2184fbe7aa032e8672454fc96c5f1d1ecde9 WHIRLPOOL 6977a36e027872bc662013fa30ef635b63c7458a6d57fd0c4d65ab7f8a7cc1306ef975716a045f7c15b31be33ed87ab5a998f140a88f9ab9527db8d161202bb9
+AUX mpeg-tools-1.5b-system-jpeg.patch 893 SHA256 f0e9f99bf42c12b91cebb0e17c1a8567629d522b269e11c2adc6fffaed43afa8 SHA512 243bc75aabcdcdd1024ad33edde6dbb48e3e4ded355b54f09244792d4d854a736b69d858da5b496c059cd5e28c7ac4a2e764129a0812025ab59caf59082de787 WHIRLPOOL b5d2498b6fbf8a050459ae7ee3012b441b46175a8349fd412590319f9e84ff586c1ba62c23951e5d7c068ec8a05083e464d4e1dbe9a3b229a19d32eff1a0601c
+AUX mpeg-tools-1.5b-tempfile-convert.patch 4097 SHA256 a8f67272493e7bd6536e020b75bcf2174a7ae1f453dc0bd3b09f134ed3f1a649 SHA512 b90879e884e9f5a5bd61149adda293c149e533b8fdb969b6e6d579917b2abed0fb848629f1567782d80c97dcf40eaf3c005731d216c02d1e97d54543c74e6e2d WHIRLPOOL cf010516b523c4031279da17282289bd16050218f48ea0450e607715f94ca9eee383ef09ebfe658243cb52834af9be6ba9868198f6134063d2def54845e61997
+AUX mpeg-tools-1.5b-tempfile-mpeg-encode.patch 2538 SHA256 2325ccdc43bce07d38522250c488f21db8010c7e5f27b244b107d05882e4a17b SHA512 229fcd4e28628fa8d45a20766e6b46bcf2e3a6ea9e69b2e8764b180b2766d539a701c64a7969a4020805a06188825c5fa5a5e1146052ee6a52edbb7d3d572f1e WHIRLPOOL 97beca3d5196cf84c41f0251953e2b067cf13b9e0369938afa5d995821c48c38e6c21612e81cc5b6cfa1e33e0fb26af4caa79bfac148eeb4f83b544b6c3eb626
+AUX mpeg-tools-1.5b-tempfile-tests.patch 5256 SHA256 ba156158d92dc6f3803b40ad3b0e8e248b0e74c5b59415a91f55c1e775a6e5a4 SHA512 ee616fc5b4b4bf15e547d737a00a4349fff98127c5ec836e63ae5b6b3e365c50b6cba1c535fd27de2ce6ee28ef5bd3872f5d3b7880f39fe23c7e8ebdc24508e8 WHIRLPOOL d7b13a803824991a76eec1f9acac1d67611366f344bc63dd71d0b789d95d5a2271d819432126f2448954950a6af2012c47b60d9fb22b43227f68320659acea17
+DIST mpeg_encode-1.5b-src.tar.gz 2028724 SHA256 dd8db42f88393bb0ff0d738defa271729a8aa9b8de24ed13bc6bd27014f2daf5 SHA512 df6f9def3ba05c752ebdc5311c512688d6fae380480009dad55b4183a378685eca79943c075166b21ed3bfd0cce7697761abc6ec795f57c0ed1c60c2a5cba469 WHIRLPOOL 9e1f06ffa4518903280bc1693fa6c8ae0b71ebcf4936889ed3e74ee6144d22a6de8e347797f61001b037d5148abf5a35edfd11968f12e565f06c8a0fdfb0d2b4
+EBUILD mpeg-tools-1.5b-r4.ebuild 1842 SHA256 469e2c778ccd3a397806fb5154c6e0ba2d512c9c8e8f15a387c6f50693dcd24b SHA512 c8e87b1d6a4b1383903356b0d861ac856ca05ac14208ce3655b9f4339a451765515f9d4f6d4ba2ae9e7e5c06723ef987988b3e73e5235e4fcf876155fa91a7d4 WHIRLPOOL e23cf7b95cfce59bc30ebc7827d2c048a89566199473b28e7e1594512efec008b1be0a32d33665ad355f747f266a0efb5aa7e04b7fea3a41e1f9344379b4c8a6
+EBUILD mpeg-tools-1.5b-r5.ebuild 1788 SHA256 da42d376c7de5ddc6a79eefb132bdc56931d3420f84056ba26ddfdff2e0bb3ad SHA512 f2f00e951318bf3dc3e2a628320e6f3885e9fe604ea926a97f17fc8b367f2530c47b3e2d899a6148a2b0836b99da24442a5b8015f26e0cbc52088d24ca11b77c WHIRLPOOL 8c3aecf97879832e71d32df3f2ab13594c2eb7d855a9ced567fd0562fe466e8425eed61c99460401fed7df2845e808b5f68d70666e10e98b5860669dc759f773
+MISC ChangeLog 2941 SHA256 d3e84b5197f92098726d90627825c57044dc7d5659b9efd13f6213db9aebd20e SHA512 4853a0ec95c6bde54782fcec917ef32325254e1cd5de5d598217ebc67d0532a017d47824572cc576e3cfa6f61492330694c08063227ac9683367df630d655f26 WHIRLPOOL faefb80b6b8d93bbb80e3970fc0f5c49c29eae0a2fa2a9b1484b50de0031cc228896b9db5a631a546e035b33c21ab799c95c16e9b15b0c9628a2ec2434ac30e9
+MISC ChangeLog-2015 5476 SHA256 0b9d92ba50deed4742357fadf514e880350ba21937b600669676f1491e0f504f SHA512 d94def6b2d27b082f8cca50ea387da1a384e3fb22f0e0da80626a43c11ab26ccbe6d794e703b585c601147a4687c216f49e677f8d1d7d1f3da0f2ff1f246c37a WHIRLPOOL 70ffb57b2cac662955114eefe43668890c0b69efadc1dd6a78beb02ce99f59cb378d085836416d49c537b85208738030d2e4643529691f06de0fe113fb0bab31
+MISC metadata.xml 221 SHA256 f9c43664acd23c026d227c13f3afb1a1e69d190689815295498c32604c8e0c22 SHA512 e5a88aac41d38b1bdf0becef8d0a08d1875eb803fac3f791524a7810c8068cfd2239a42717bddf9835daf6c0b2c5d5592b12669882bbc2abaab39955d7de7fb4 WHIRLPOOL 0c890eef9948116352ecd84ee44ecd07c741d7eb82b89aba4ac0d87757df3616d2170550d7b528cb9c359cf7e5cab95b494ebf92c3c1dc0ea96428603577047b
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-64bit_fixes.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-64bit_fixes.patch
new file mode 100644
index 000000000000..fa2e70304dbe
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-64bit_fixes.patch
@@ -0,0 +1,286 @@
+--- work/convert/eyuvtojpeg.c
++++ work/convert/eyuvtojpeg.c
+@@ -22,6 +22,7 @@
+ /*==============*
+ * HEADER FILES *
+ *==============*/
++#include <string.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <malloc.h>
+@@ -43,7 +44,7 @@
+ void AllocYCC(void);
+
+
+-void main(int argc, char **argv)
++int main(int argc, char **argv)
+ {
+ FILE *fpointer;
+ char command[256];
+@@ -105,6 +106,7 @@
+ fprintf(stdout, "Converting to JPEG %s\n", dest);
+ sprintf(command, "cjpeg /tmp/foobar > %s", dest);
+ system(command);
++ return 0;
+ }
+
+
+--- work/convert/eyuvtoppm.c
++++ work/convert/eyuvtoppm.c
+@@ -22,6 +22,7 @@
+ /*==============*
+ * HEADER FILES *
+ *==============*/
++#include <string.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <malloc.h>
+@@ -43,7 +44,7 @@
+ void AllocYCC(void);
+
+
+-void main(int argc, char **argv)
++int main(int argc, char **argv)
+ {
+ FILE *fpointer;
+ char src[256], dest[256];
+@@ -109,7 +110,7 @@
+
+ WritePPM(fpointer);
+ fclose(fpointer);
+-
++ return 0;
+ }
+
+ void Usage(void)
+--- work/convert/mtv/archdep.h
++++ work/convert/mtv/archdep.h
+@@ -45,16 +45,46 @@
+ ((char *)(to))[5] = ((char *)(from))[2]; \
+ ((char *)(to))[6] = ((char *)(from))[1]; \
+ ((char *)(to))[7] = ((char *)(from))[0];
+-#endif /*little-endian*/
++#endif /*little-endian 32bit*/
++
++#if defined (__x86_64)
++#define DECODE_SHORT(from, to) \
++ ((char *)(to))[0] = ((char *)(from))[1]; \
++ ((char *)(to))[1] = ((char *)(from))[0];
++#define DECODE_INT(from, to) \
++ ((char *)(to))[0] = ((char *)(from))[3]; \
++ ((char *)(to))[1] = ((char *)(from))[2]; \
++ ((char *)(to))[2] = ((char *)(from))[1]; \
++ ((char *)(to))[3] = ((char *)(from))[0];
++
++#define DECODE_LONG(from, to) \
++ ((char *)(to))[0] = ((char *)(from))[7]; \
++ ((char *)(to))[1] = ((char *)(from))[6]; \
++ ((char *)(to))[2] = ((char *)(from))[5]; \
++ ((char *)(to))[3] = ((char *)(from))[4]; \
++ ((char *)(to))[4] = ((char *)(from))[3]; \
++ ((char *)(to))[5] = ((char *)(from))[2]; \
++ ((char *)(to))[6] = ((char *)(from))[1]; \
++ ((char *)(to))[7] = ((char *)(from))[0];
++
++#define DECODE_FLOAT(from, to) DECODE_INT((to), (from))
++
++#define DECODE_DOUBLE(from, to) DECODE_LONG((to), (from))
++
++#endif /*little-endian, 64bit*/
+
+
+ /* Most architectures are symmetrical with respect to conversions. */
+-#if defined (mc68000) || defined (sparc) || defined (i386)
++#if defined (mc68000) || defined (sparc) || defined (i386) || defined(__x86_64)
+ #define ENCODE_SHORT(from, to) DECODE_SHORT((from), (to))
+ #define ENCODE_LONG(from, to) DECODE_LONG((from), (to))
+ #define ENCODE_FLOAT(from, to) DECODE_FLOAT((from), (to))
+ #define ENCODE_DOUBLE(from, to) DECODE_DOUBLE((from), (to))
+
++#if defined(__x86_64)
++#define ENCODE_INT(from, to) DECODE_INT((from), (to))
++#endif
++
+ /* Define types of specific length */
+ typedef char i_8;
+ typedef short i_16;
+--- work/convert/mtv/movieToVid.c
++++ work/convert/mtv/movieToVid.c
+@@ -295,7 +295,7 @@
+ exit (0);
+ }
+
+-void
++int
+ main (argc, argv)
+ int argc;
+ char **argv;
+@@ -326,4 +326,5 @@
+ WriteScriptFile (argv[1], argv[2], argv[3], argv[4],
+ &header, offsets, numFrames);
+ fprintf (stderr, "done\n");
++ return 0;
+ }
+--- work/convert/ppmtoeyuv.c
++++ work/convert/ppmtoeyuv.c
+@@ -39,6 +39,11 @@
+ * HEADER FILES *
+ *==============*/
+
++#include <malloc.h>
++#include <unistd.h>
++#include <string.h>
++#include <stdlib.h>
++#include <ctype.h>
+ #include <stdio.h>
+ #include "ansi.h"
+
+@@ -65,7 +66,7 @@
+ static void PPMtoYUV _ANSI_ARGS_((void));
+
+
+-void main(int argc, char **argv)
++int main(int argc, char **argv)
+ {
+ if ( ! ReadPPM(stdin) )
+ {
+@@ -76,6 +77,7 @@
+ PPMtoYUV();
+
+ WriteYUV(stdout);
++ return 0;
+ }
+
+
+--- work/mpeg_encode/bitio.c
++++ work/mpeg_encode/bitio.c
+@@ -79,6 +79,8 @@
+ * HEADER FILES *
+ *==============*/
+
++#include <unistd.h>
++#include <time.h>
+ #include <assert.h>
+ #include "all.h"
+ #include "byteorder.h"
+--- work/mpeg_encode/jpeg.c
++++ work/mpeg_encode/jpeg.c
+@@ -65,6 +65,8 @@
+ *==============*/
+
+ #include <stdio.h>
++#include <sys/types.h>
++#include <unistd.h>
+ #include "all.h"
+ #include "mtypes.h"
+ #include "frames.h"
+--- work/mpeg_encode/headers/libpnmrw.h
++++ work/mpeg_encode/headers/libpnmrw.h
+@@ -20,9 +20,6 @@
+ ** that point here, feel free to tweak or remove these declarations.
+ */
+ #include <malloc.h>
+-#if !defined(sco) && !defined(sgi) && !defined(IRIX)
+-extern char* malloc();
+-#endif
+ /* End of configurable definitions. */
+
+
+--- work/mpeg_encode/libpnmrw.c
++++ work/mpeg_encode/libpnmrw.c
+@@ -27,6 +27,9 @@
+ /* #define MSDOS */
+ #endif
+
++#include <stdlib.h>
++#include <unistd.h>
++#include <errno.h>
+ #include <stdio.h>
+ #include "libpnmrw.h"
+
+@@ -128,11 +128,9 @@
+ pm_perror( reason )
+ char* reason;
+ {
+- extern char* sys_errlist[];
+- extern int errno;
+ char* e;
+
+- e = sys_errlist[errno];
++ e = strerror(errno);
+
+ if ( reason != 0 && reason[0] != '\0' )
+ (void) fprintf( stderr, "%s: %s - %s\n", progname, reason, e );
+@@ -361,7 +361,7 @@
+ int cols, format;
+ {
+ register int col, bitshift, b;
+- register int item;
++ register int item = 0;
+ register bit* bP;
+
+ switch ( format )
+--- work/mpeg_encode/opts.c
++++ work/mpeg_encode/opts.c
+@@ -35,6 +35,7 @@
+ * HEADER FILES *
+ *==============*/
+
++#include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include "opts.h"
+--- work/mpeg_encode/iframe.c
++++ work/mpeg_encode/iframe.c
+@@ -235,6 +235,8 @@
+ int SetFCodeHelper _ANSI_ARGS_((int sr));
+ void CalcDistortion _ANSI_ARGS_((MpegFrame *current, int y, int x));
+
++void Mpost_UnQuantZigBlockLaplace _ANSI_ARGS_((FlatBlock in, Block out, int qscale, boolean iblock));
++
+ int
+ SetFCodeHelper(SR)
+ int SR;
+--- work/convert/jmovie2jpeg.c
++++ work/convert/jmovie2jpeg.c
+@@ -33,6 +33,9 @@
+ ************************************************************************/
+
+ #include <stdio.h>
++#include <string.h>
++#include <stdlib.h>
++#include <unistd.h>
+
+ #define HEADER_SIZE 607 /*JFIF header size used on output images*/
+
+@@ -54,7 +54,6 @@
+ FILE *inFile; /* Jmovie file pointer */
+ FILE *outFile; /* JPEG file pointer for output file */
+ FILE *audiooutfile; /* SPARC .AU audio output file pointer*/
+- extern char *malloc();
+ int fd, i; /* input file descriptor and a counting variable*/
+ int start, end; /* first and last frames to be extracted */
+ char ofname[256]; /* output filename string */
+@@ -283,12 +283,12 @@
+ if (fread (&(image_offset),sizeof(int),1,inFile) != 1)
+ {
+ perror("Error in reading image offset");
+- exit();
++ exit(1);
+ }
+ if (fread (&(audio_tracks),sizeof(int),1,inFile) != 1)
+ {
+ perror("Error in reading audio tracks");
+- exit();
++ exit(1);
+ }
+ if (audio_tracks != 1)
+ {
+@@ -373,6 +373,7 @@
+ fclose(inFile);
+ fclose(audiooutfile);
+
++ return 0;
+ }
+
+
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-as-needed.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-as-needed.patch
new file mode 100644
index 000000000000..58c74e124f09
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-as-needed.patch
@@ -0,0 +1,47 @@
+--- convert/Makefile 2009-08-25 21:19:42.000000000 +0200
++++ convert/Makefile.new 2009-08-25 21:22:54.000000000 +0200
+@@ -53,13 +53,13 @@
+ all: $(TARGETS)
+
+ vidtoppm: vidtoppm.c
+- $(CC) -lXvid -lX11 $(INCLUDE) -o vidtoppm vidtoppm.c
++ $(CC) $(LDFLAGS) $(INCLUDE) $@.o -o $@ -lXvid -lX11
+
+ vidtojpeg: vidtojpeg.c
+- $(CC) -lXvid -lX11 $(INCLUDE) -o vidtojpeg vidtojpeg.c
++ $(CC) $(LDFLAGS) $(INCLUDE) $@.o -o $@ -lXvid -lX11
+
+ vidtoeyuv: vidtoeyuv.c
+- $(CC) -lXvid -lX11 $(INCLUDE) -o vidtoeyuv vidtoeyuv.c
++ $(CC) $(LDFLAGS) $(INCLUDE) $@.o -o $@ -lXvid -lX11
+
+ wc:; wc -l *.[ch] *.pl *.table
+ clean:; rm -f *.o core *~ gmon.out $(TARGETS)
+--- convert/mtv/Makefile 2009-08-25 21:19:42.000000000 +0200
++++ convert/mtv/Makefile.new 2009-08-25 21:24:31.000000000 +0200
+@@ -15,12 +15,12 @@
+ default: movieToVid
+
+ movieToVid: movieToVid.o
+- $(CC) $(CFLAGS) -o movieToVid movieToVid.o
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o
+
+ clean:
+ rm -f core lintout makeout tags Makefile.bak *.o \
+ movieToVid
+
+ purify: $(OBJ)
+- $(PURIFY) $(CC) $(OBJ) -o movieToVid.purify
++ $(PURIFY) $(CC) $(LDFLAGS) $(OBJ) -o movieToVid.purify
+
+--- mpeg_encode//Makefile 2009-08-25 21:19:43.000000000 +0200
++++ mpeg_encode//Makefile.new 2009-08-25 21:27:12.000000000 +0200
+@@ -203,7 +203,6 @@
+ ############
+
+ mpeg_encode: $(MP_ALL_OBJS) $(JPEG_LIB)
+- $(PURIFY) $(CC) $(CFLAGS) -o $@ $(MP_ALL_OBJS) $(LIBDIRS) $(LIBS)
+- strip mpeg_encode
++ $(PURIFY) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(MP_ALL_OBJS) $(LIBDIRS) $(LIBS)
+
+ profile: $(MP_ALL_OBJS)
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-build.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-build.patch
new file mode 100644
index 000000000000..70a96c439e9c
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-build.patch
@@ -0,0 +1,56 @@
+--- convert/Makefile
++++ convert/Makefile
+@@ -24,7 +24,7 @@
+ #CC = cc
+
+ # compiler flags
+-CFLAGS = -O -g -Wall -W -Wreturn-type -Wunused -Wmissing-prototypes $(PROFLAG)
++CFLAGS += -Wall -W -Wreturn-type -Wunused -Wmissing-prototypes $(PROFLAG)
+
+ # if you have an ANSI C Compiler, use the following line, otherwise
+ # uncomment the longer .c.o rule, also
+@@ -52,15 +52,6 @@
+
+ all: $(TARGETS)
+
+-ppmtoeyuv: ppmtoeyuv.c
+- $(CC) -o ppmtoeyuv ppmtoeyuv.c
+-
+-jmovie2jpeg: jmovie2jpeg.c
+- $(CC) -o jmovie2jpeg jmovie2jpeg.c
+-
+-mpeg_demux: mpeg_demux.c
+- $(CC) -O -o mpeg_demux mpeg_demux.c
+-
+ vidtoppm: vidtoppm.c
+ $(CC) -lXvid -lX11 $(INCLUDE) -o vidtoppm vidtoppm.c
+
+--- convert/mtv/Makefile
++++ convert/mtv/Makefile
+@@ -4,7 +4,7 @@
+
+ PURIFY = $(PURIFYHOME)/purify
+
+-CFLAGS= -g -I.
++CFLAGS+= -I.
+
+ #CFLAGS= -O -DLITTLE_ENDIEN
+ LFLAGS=
+@@ -15,7 +15,7 @@
+ default: movieToVid
+
+ movieToVid: movieToVid.o
+- cc ${CFLAGS} -o movieToVid movieToVid.o
++ $(CC) $(CFLAGS) -o movieToVid movieToVid.o
+
+ clean:
+ rm -f core lintout makeout tags Makefile.bak *.o \
+--- mpeg_encode/Makefile.orig 2005-09-26 16:01:51.000000000 -0400
++++ mpeg_encode/Makefile 2005-09-26 16:02:11.000000000 -0400
+@@ -97,5 +97,5 @@
+
+ # gcc
+-CFLAGS = $(INCLUDEDIR) $(DEBUGFLAG) -Wall -Wmissing-prototypes $(PROFLAG) $(PROTOFLAG)
++CFLAGS += $(INCLUDEDIR) -Wall -Wmissing-prototypes $(PROFLAG) $(PROTOFLAG)
+
+ # gcc-strict
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-jpeg.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-jpeg.patch
new file mode 100644
index 000000000000..633321879e8d
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-jpeg.patch
@@ -0,0 +1,56 @@
+--- jpeg.c
++++ jpeg.c
+@@ -77,13 +77,10 @@
+
+ /* make it happier.... */
+ #undef DCTSIZE2
+-#include "jpeg/jpeglib.h"
+-
++#include "jpeglib.h"
+
+ #define HEADER_SIZE 607 /*JFIF header size used on output images*/
+
+-
+-
+ /*=======================================================================*
+ * *
+ * JMovie2JPEG *
+@@ -514,8 +511,12 @@
+ #ifdef JPEG4
+ buffer_height = 8; /* could be 2, 4,8 rows high */
+ #else
+- buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_scaled_size;
+-#endif
++ #if JPEG_LIB_VERSION >= 80
++ buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_v_scaled_size;
++ #else
++ buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_scaled_size;
++ #endif
++#endif /* JPEG4 */
+
+ for(cp=0,compptr = cinfo.comp_info;cp<cinfo.num_components;
+ cp++,compptr++) {
+--- Makefile
++++ Makefile
+@@ -36,9 +36,9 @@
+ ##############
+ # JPEG STUFF #
+ ##############
+-JPEG_LIB = jpeg/libjpeg.a
+-JPEG_DIR = -Ijpeg
+-JPEG_LIB_DIR = -Ljpeg
++JPEG_LIB = -ljpeg
++JPEG_DIR =
++JPEG_LIB_DIR =
+ MP_JPEG_OBJS = jpeg.o
+ MP_JPEG_SRCS = jpeg.c
+
+@@ -57,7 +57,7 @@
+ #################
+ # INCLUDE FILES #
+ #################
+-INCLUDEDIR = -Iheaders -I/usr/include $(JPEG_DIR)
++INCLUDEDIR = -Iheaders
+
+ ############################################################################
+ # LIBRARIES # specify library directories; need jpg lib and maybe pbm #
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-powerpc.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-powerpc.patch
new file mode 100644
index 000000000000..3eb2d5f15a60
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-powerpc.patch
@@ -0,0 +1,20 @@
+--- convert/mtv/archdep.h 2010-03-11 04:35:04.596642403 +0000
++++ convert/mtv/archdep.h 2010-03-11 04:34:38.949974604 +0000
+@@ -17,7 +17,7 @@
+ * Note that these macros *do not* work for in-place transformations.
+ */
+
+-#if defined (mc68000) || defined (sparc)
++#if defined (mc68000) || defined (sparc) || defined (__powerpc__) || defined(__POWERPC__)
+ #define DECODE_SHORT(from, to) *((short *)(to)) = *((short *)(from))
+ #define DECODE_LONG(from, to) *((long *)(to)) = *((long *)(from))
+ #define DECODE_FLOAT(from, to) *((float *)(to)) = *((float *)(from))
+@@ -75,7 +75,7 @@
+
+
+ /* Most architectures are symmetrical with respect to conversions. */
+-#if defined (mc68000) || defined (sparc) || defined (i386) || defined(__x86_64)
++#if defined (mc68000) || defined (sparc) || defined (i386) || defined(__x86_64) || defined(__powerpc__) || defined(__POWERPC__)
+ #define ENCODE_SHORT(from, to) DECODE_SHORT((from), (to))
+ #define ENCODE_LONG(from, to) DECODE_LONG((from), (to))
+ #define ENCODE_FLOAT(from, to) DECODE_FLOAT((from), (to))
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg-7.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg-7.patch
new file mode 100644
index 000000000000..3b0ad4792a54
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg-7.patch
@@ -0,0 +1,26 @@
+diff -ur mpeg_encode.orig/jpeg.c mpeg_encode/jpeg.c
+--- mpeg_encode.orig/jpeg.c 2009-08-24 21:33:18.000000000 +0300
++++ mpeg_encode/jpeg.c 2009-08-24 22:23:08.000000000 +0300
+@@ -80,13 +80,9 @@
+ /* make it happier.... */
+ #undef DCTSIZE2
+ #include "jpeglib.h"
+-#include "jpegint.h"
+-
+
+ #define HEADER_SIZE 607 /*JFIF header size used on output images*/
+
+-
+-
+ /*=======================================================================*
+ * *
+ * JMovie2JPEG *
+@@ -517,7 +513,7 @@
+ #ifdef JPEG4
+ buffer_height = 8; /* could be 2, 4,8 rows high */
+ #else
+- buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_scaled_size;
++ buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_v_scaled_size;
+ #endif
+
+ for(cp=0,compptr = cinfo.comp_info;cp<cinfo.num_components;
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg.patch
new file mode 100644
index 000000000000..7be3905577c3
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-system-jpeg.patch
@@ -0,0 +1,38 @@
+Use the system jpeg rather than the bundled one
+
+--- mpeg_encode/Makefile
++++ mpeg_encode/Makefile
+@@ -36,9 +36,9 @@
+ ##############
+ # JPEG STUFF #
+ ##############
+-JPEG_LIB = jpeg/libjpeg.a
+-JPEG_DIR = -Ijpeg
+-JPEG_LIB_DIR = -Ljpeg
++JPEG_LIB = -ljpeg
++JPEG_DIR =
++JPEG_LIB_DIR =
+ MP_JPEG_OBJS = jpeg.o
+ MP_JPEG_SRCS = jpeg.c
+
+@@ -57,7 +57,7 @@
+ #################
+ # INCLUDE FILES #
+ #################
+-INCLUDEDIR = -Iheaders -I/usr/include $(JPEG_DIR)
++INCLUDEDIR = -Iheaders
+
+ ############################################################################
+ # LIBRARIES # specify library directories; need jpg lib and maybe pbm #
+--- mpeg_encode/jpeg.c
++++ mpeg_encode/jpeg.c
+@@ -79,7 +79,8 @@
+
+ /* make it happier.... */
+ #undef DCTSIZE2
+-#include "jpeg/jpeglib.h"
++#include "jpeglib.h"
++#include "jpegint.h"
+
+
+ #define HEADER_SIZE 607 /*JFIF header size used on output images*/
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-convert.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-convert.patch
new file mode 100644
index 000000000000..2bab1511bf59
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-convert.patch
@@ -0,0 +1,169 @@
+--- convert/eyuvtojpeg.c
++++ convert/eyuvtojpeg.c
+@@ -25,6 +25,7 @@
+ #include <string.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <unistd.h>
+ #include <malloc.h>
+
+ typedef unsigned char uint8;
+@@ -47,8 +48,9 @@
+ int main(int argc, char **argv)
+ {
+ FILE *fpointer;
+- char command[256];
+- char src[256], dest[256];
++ char command[4096];
++ char src[4096], dest[4096], tempfile[4096];
++ int ret;
+
+ if ((strcmp(argv[1],"-?") == 0) ||
+ (strcmp(argv[1],"-h") == 0) ||
+@@ -99,14 +101,16 @@
+ YUVtoPPM();
+
+ fprintf(stdout, "Writing PPM\n");
+- fpointer = fopen("/tmp/foobar", "w");
++ sprintf(tempfile, "%s.tmp", dest);
++ fpointer = fopen(tempfile, "w");
+ WritePPM(fpointer);
+ fclose(fpointer);
+
+ fprintf(stdout, "Converting to JPEG %s\n", dest);
+- sprintf(command, "cjpeg /tmp/foobar > %s", dest);
+- system(command);
+- return 0;
++ sprintf(command, "cjpeg %s > %s", tempfile, dest);
++ ret = system(command);
++ unlink(tempfile);
++ return ret;
+ }
+
+
+--- convert/vidtoeyuv.c
++++ convert/vidtoeyuv.c
+@@ -125,9 +125,9 @@
+ XImage *ximage;
+ char *tdata;
+ char *obase;
+- char ofname[256];
++ char ofname[4096], tempfile[4096];
+ int height, width;
+- char command[256];
++ char command[4096];
+ int nth;
+
+ if ((argc != 7) && (argc != 8))usage (argv[0]);
+@@ -223,9 +223,11 @@
+
+
+ sprintf(ofname, "%s%d.yuv", obase, i);
+- outFile = fopen("/tmp/foobar", "w");
++ sprintf(tempfile, "%s%d.yuv.tmp", obase, i);
++ outFile = fopen(tempfile, "w");
+ if (!outFile) {
+ perror("Couldn't open output file.");
++ exit(1);
+ }
+
+ for (r=0; r<height; r++) {
+@@ -241,9 +243,10 @@
+
+ free(tdata);
+
+- sprintf(command, "rawtoppm %d %d < /tmp/foobar | ppmtoyuv > %s",
+- width, height, ofname);
++ sprintf(command, "rawtoppm %d %d < %s | ppmtoyuv > %s",
++ width, height, tempfile, ofname);
+ system(command);
++ unlink(tempfile);
+
+ for (j=0; j<nth-1; j++) {
+ if (read (fd, &image, sizeof(image)) != sizeof(image)) {
+--- convert/vidtojpeg.c
++++ convert/vidtojpeg.c
+@@ -123,9 +123,9 @@
+ XImage *ximage;
+ char *tdata;
+ char *obase;
+- char ofname[256];
++ char ofname[4096], tempfile[4096];
+ int height, width;
+- char command[256];
++ char command[4096];
+
+
+ if ((argc != 7) && (argc != 8))usage (argv[0]);
+@@ -221,9 +221,11 @@
+
+
+ sprintf(ofname, "%s.%d.jpeg", obase, i);
+- outFile = fopen("/tmp/foobar", "w");
++ sprintf(tempfile, "%s.%d.jpeg.tmp", obase, i);
++ outFile = fopen(tempfile, "w");
+ if (!outFile) {
+ perror("Couldn't open output file.");
++ exit(1);
+ }
+
+ for (r=0; r<height; r++) {
+@@ -239,9 +241,10 @@
+
+ free(tdata);
+
+- sprintf(command, "rawtoppm %d %d < /tmp/foobar | cjpeg > %s",
+- width, height, ofname);
++ sprintf(command, "rawtoppm %d %d < %s | cjpeg > %s",
++ width, height, tempfile, ofname);
+ system(command);
++ unlink(tempfile);
+ }
+ }
+
+--- convert/vidtoppm.c
++++ convert/vidtoppm.c
+@@ -220,9 +220,11 @@
+
+
+ sprintf(ofname, "%s%d.ppm", obase, i);
+- outFile = fopen("/tmp/foobar", "w");
++ sprintf(tempfile, "%s%d.ppm.tmp", obase, i);
++ outFile = fopen(tempfile, "w");
+ if (!outFile) {
+ perror("Couldn't open output file.");
++ exit(1);
+ }
+
+ for (r=0; r<height; r++) {
+@@ -238,8 +240,9 @@
+
+ free(tdata);
+
+- sprintf(command, "rawtoppm %d %d < /tmp/foobar > %s",
+- width, height, ofname);
++ sprintf(command, "rawtoppm %d %d < %s > %s",
++ width, height, tempfile, ofname);
+ system(command);
++ unlink(tempfile);
+ }
+ }
+--- convert/eyuvtoppm.c
++++ convert/eyuvtoppm.c
+@@ -100,13 +100,9 @@
+ fpointer = fopen(dest, "w");
+ if (fpointer == NULL) {
+ fprintf(stderr, "Problems opening %s!\n", dest);
+- fprintf(stderr, "Trying /tmp/foobar instead\n");
+- strcpy(dest, "/tmp/foobar");
+- fpointer = fopen(dest, "w");
+- if (fpointer == NULL) {
+- fprintf(stderr, "Nope, exiting.\n");
+- exit(1);
+- }}
++ perror("");
++ exit(1);
++ }
+
+ WritePPM(fpointer);
+ fclose(fpointer);
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-mpeg-encode.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-mpeg-encode.patch
new file mode 100644
index 000000000000..1b33bc5dd1c8
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-mpeg-encode.patch
@@ -0,0 +1,87 @@
+--- mpeg_encode/parallel.c
++++ mpeg_encode/parallel.c
+@@ -586,6 +586,8 @@
+ * SIDE EFFECTS: none
+ *
+ *===========================================================================*/
++/* internal hook into the ReadFrame function */
++void _ReadFrame(MpegFrame *frame, char *fileName, FILE *fileHook, char *conversion, boolean addPath);
+ void
+ GetRemoteFrame(frame, frameNumber)
+ MpegFrame *frame;
+@@ -615,8 +617,13 @@
+
+ if ( frameNumber != -1 ) {
+ if ( separateConversion ) {
+- sprintf(fileName, "/tmp/foobar%d", machineNumber);
+- filePtr = fopen(fileName, "wb");
++ int fd;
++ snprintf(fileName, sizeof(fileName), "/tmp/mpeg_encode_foobar%dXXXXXX", machineNumber);
++ fd = mkstemp(fileName);
++ if (fd == -1 || (filePtr = fdopen(fd, "wb")) == NULL) {
++ perror("ERROR: mpeg_encode->GetRemoteFrame");
++ exit(1);
++ }
+
+ /* read in stuff, SafeWrite to file, perform local conversion */
+ do {
+@@ -628,10 +635,12 @@
+ fwrite(smallBuffer, 1, numBytes, filePtr);
+ } while ( numBytes == 1000 );
+ fflush(filePtr);
+- fclose(filePtr);
++ rewind(filePtr);
+
+ /* now do slave conversion */
+- ReadFrame(frame, fileName, slaveConversion, FALSE);
++ _ReadFrame(frame, NULL, filePtr, slaveConversion, FALSE);
++ /* _ReadFrame() will close the file pointer for us */
++ /* fclose(filePtr); */
+ } else {
+ Frame_AllocYCC(frame);
+
+--- mpeg_encode/readframe.c
++++ mpeg_encode/readframe.c
+@@ -227,14 +227,22 @@
+ * SIDE EFFECTS: none
+ *
+ *===========================================================================*/
++void _ReadFrame(MpegFrame *frame, char *fileName, FILE *fileHook, char *conversion, boolean addPath);
++
++void ReadFrame(MpegFrame *frame, char *fileName, char *conversion, boolean addPath)
++{
++ _ReadFrame(frame, fileName, NULL, conversion, addPath);
++}
++
+ void
+-ReadFrame(frame, fileName, conversion, addPath)
++_ReadFrame(frame, fileName, fileHook, conversion, addPath)
+ MpegFrame *frame;
+ char *fileName;
++ FILE *fileHook;
+ char *conversion;
+ boolean addPath;
+ {
+- FILE *ifp;
++ FILE *ifp = fileHook;
+ char command[1024];
+ char fullFileName[1024];
+ MpegFrame tempFrame;
+@@ -274,6 +282,9 @@
+ }
+ #endif
+
++ if (fileHook)
++ goto file_is_already_opened;
++
+ if ( fileType == ANY_FILE_TYPE ) {
+ char *convertPtr, *commandPtr, *charPtr;
+
+@@ -325,6 +336,7 @@
+ exit(1);
+ }
+
++file_is_already_opened:
+ switch(baseFormat) {
+ case YUV_FILE_TYPE:
+
diff --git a/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-tests.patch b/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-tests.patch
new file mode 100644
index 000000000000..260f279d2d4b
--- /dev/null
+++ b/media-video/mpeg-tools/files/mpeg-tools-1.5b-tempfile-tests.patch
@@ -0,0 +1,204 @@
+When running tests, don't use /tmp for obvious reasons
+
+Also rewrite the diffscript in sh since csh isnt always available
+
+--- mepg_encode/Makefile
++++ mepg_encode/Makefile
+@@ -187,16 +187,16 @@
+ #########
+
+ test:
+- rm -f /tmp/ts.stat
+- ./mpeg_encode -stat /tmp/ts.stat ./tst/ts.param
+- csh ./tst/diffscript /tmp/ts.stat ./tst/ts.stat /tmp/ts.mpg ./tst/ts.mpg
++ rm -f ./tst/ts.stat.new
++ ./mpeg_encode -stat ./tst/ts.stat.new ./tst/ts.param
++ sh ./tst/diffscript.sh ./tst/ts.stat.new ./tst/ts.stat ./tst/ts.mpg.new ./tst/ts.mpg
+
+ testd:
+- rm -f /tmp/tsd.stat
+- ./mpeg_encode -stat /tmp/tsd.stat ./tst/tsd.param
+- csh ./tst/diffscript /tmp/tsd.stat ./tst/tsd.stat /tmp/tsd.mpg ./tst/tsd.mpg
++ rm -f ./tst/tsd.stat.new
++ ./mpeg_encode -stat ./tst/tsd.stat.new ./tst/tsd.param
++ sh ./tst/diffscript.sh ./tst/tsd.stat.new ./tst/tsd.stat ./tst/tsd.mpg.new ./tst/tsd.mpg
+
+-test_all: test testd
++test_all check: test testd
+
+ ############
+ # BINARIES #
+--- mepg_encode/tst/diffscript.sh
++++ mepg_encode/tst/diffscript.sh
+@@ -0,0 +1,16 @@
++diff $1 $2 > ./foobar
++egrep Blocks ./foobar > ./blockbar
++
++if test ! -s ./blockbar ; then
++ diff $3 $4 > ./foobar.mpg
++ if test -s ./foobar.mpg ; then
++ echo "FAILURE! (different output -- probably endian bug). Please send bug report."
++ exit 1
++ else
++ echo "SUCCESS."
++ exit 0
++ fi
++else
++ echo "FAILURE! (different exection). Please send bug report."
++ exit 1
++fi
+--- mpeg_encode/tst/test_all
++++ mpeg_encode/tst/test_all
+@@ -1,19 +1,19 @@
+-#!/bin/csh -f
++#!/bin/sh
+ cd ..
+-echo "First we encode three mpegs... (note requires 5MB on /tmp)"
+-rm -f /tmp/ts{,2,d}.{mpg,stat}
+-./mpeg_encode -stat /tmp/ts.stat ./tst/ts.param
+-./mpeg_encode -stat /tmp/ts2.stat ./tst/ts2.param
+-./mpeg_encode -stat /tmp/tsd.stat ./tst/tsd.param
++echo "First we encode three mpegs... (note requires 5MB in ./tst)"
++rm -f ./tst/ts{,2,d}.{mpg,stat}.new
++./mpeg_encode -stat ./tst/ts.stat.new ./tst/ts.param
++./mpeg_encode -stat ./tst/ts2.stat.new ./tst/ts2.param
++./mpeg_encode -stat ./tst/tsd.stat.new ./tst/tsd.param
+
+ cd tst
+
+ echo "Test one - tst/ts.param"
+-csh diffscript /tmp/ts.stat ts.stat /tmp/ts.mpg ts.mpg
++sh diffscript.sh ./ts.stat.new ts.stat ./ts.mpg.new ts.mpg
+
+ echo "Test two - tst/ts2.param (different pattern)"
+-csh diffscript /tmp/ts2.stat ts2.stat /tmp/ts2.mpg ts2.mpg
++sh diffscript.sh ./ts2.stat.new ts2.stat ./ts2.mpg.new ts2.mpg
+
+ echo "Test three - tst/tsd.param (uses decoded frames)"
+-csh diffscript /tmp/tsd.stat tsd.stat /tmp/tsd.mpg tsd.mpg
++sh diffscript.sh ./tsd.stat.new tsd.stat ./tsd.mpg.new tsd.mpg
+
+--- mpeg_encode/tst/diffscript
++++ mpeg_encode/tst/diffscript
+@@ -3,23 +3,23 @@
+ #
+ # NOTE: if this script doesn't work, then basically all you need to know
+ # is that the stat files should be the same except for the times.
+-# So the /tmp/blockbar below should be empty if the test succeeded, and non-
++# So the ./blockbar below should be empty if the test succeeded, and non-
+ # empty if it failed. Then the .mpg files are compared.
+ #
+
+-rm -f /tmp/foobar
+-rm -f /tmp/blockbar
++rm -f ./foobar
++rm -f ./blockbar
+
+-diff $1 $2 > /tmp/foobar
++diff $1 $2 > ./foobar
+
+-# /tmp/foobar must exist, since starting times will be different
++# ./foobar must exist, since starting times will be different
+
+-egrep Blocks /tmp/foobar > /tmp/blockbar
++egrep Blocks ./foobar > ./blockbar
+
+-# /tmp/blockbar may or may not exist
+-if ( -z /tmp/blockbar ) then
+- diff $3 $4 > /tmp/foobar.mpg
+- if ( -z /tmp/foobar.mpg ) then
++# ./blockbar may or may not exist
++if ( -z ./blockbar ) then
++ diff $3 $4 > ./foobar.mpg
++ if ( -z ./foobar.mpg ) then
+ echo "SUCCESS."
+ else
+ echo "FAILURE! (different output -- probably endian bug). Please send bug report."
+--- mpeg_encode/tst/ts.param
++++ mpeg_encode/tst/ts.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBBPBBPBBP
+-OUTPUT /tmp/ts.mpg
++OUTPUT ./tst/ts.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/tsd.param
++++ mpeg_encode/tst/tsd.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBBBPBBBBP
+-OUTPUT /tmp/tsd.mpg
++OUTPUT ./tst/tsd.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/gop.param
++++ mpeg_encode/tst/gop.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBPBIBPBPB
+-OUTPUT /tmp/ts.mpg
++OUTPUT ./tst/ts.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/short.param
++++ mpeg_encode/tst/short.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBBBPBBB
+-OUTPUT /tmp/ts.mpg
++OUTPUT ./tst/ts.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/ts2.param
++++ mpeg_encode/tst/ts2.param
+@@ -2,7 +2,7 @@
+
+ PATTERN IBBPBBPBB
+
+-OUTPUT /tmp/ts2.mpg
++OUTPUT ./tst/ts2.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/ts3.param
++++ mpeg_encode/tst/ts3.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBPB
+-OUTPUT /tmp/ts.mpg
++OUTPUT ./tst/ts.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/ts4.param
++++ mpeg_encode/tst/ts4.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBBBPBBBBP
+-OUTPUT /tmp/ts.mpg
++OUTPUT ./tst/ts.mpg.new
+
+ YUV_SIZE 352x240
+
+--- mpeg_encode/tst/tstl.param
++++ mpeg_encode/tst/tstl.param
+@@ -1,7 +1,7 @@
+ # test suite parameter file
+
+ PATTERN IBBBPBBBBP
+-OUTPUT /tmp/ts.mpg
++OUTPUT ./tst/ts.mpg.new
+
+ YUV_SIZE 352x240
+
diff --git a/media-video/mpeg-tools/metadata.xml b/media-video/mpeg-tools/metadata.xml
new file mode 100644
index 000000000000..68b9a06fccf1
--- /dev/null
+++ b/media-video/mpeg-tools/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>media-video@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/media-video/mpeg-tools/mpeg-tools-1.5b-r4.ebuild b/media-video/mpeg-tools/mpeg-tools-1.5b-r4.ebuild
new file mode 100644
index 000000000000..70ceb15423d2
--- /dev/null
+++ b/media-video/mpeg-tools/mpeg-tools-1.5b-r4.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+MY_PN=mpeg_encode
+DESCRIPTION="Tools for MPEG video"
+HOMEPAGE="http://bmrc.berkeley.edu/research/mpeg/mpeg_encode.html"
+SRC_URI="ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/encode/${MY_PN}-${PV}-src.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ virtual/jpeg:0"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_PN}
+
+src_prepare() {
+ cd "${WORKDIR}"
+ epatch "${FILESDIR}"/${P}-build.patch
+ epatch "${FILESDIR}"/${P}-64bit_fixes.patch
+ epatch "${FILESDIR}"/${P}-tempfile-convert.patch
+ epatch "${FILESDIR}"/${P}-as-needed.patch
+ epatch "${FILESDIR}"/${P}-powerpc.patch
+ cd "${S}"
+ rm -r jpeg
+ epatch "${FILESDIR}"/${P}-system-jpeg.patch
+ epatch "${FILESDIR}"/${P}-system-jpeg-7.patch
+ epatch "${FILESDIR}"/${P}-tempfile-mpeg-encode.patch
+ epatch "${FILESDIR}"/${P}-tempfile-tests.patch
+ # don't include malloc.h, but use stdlib.h instead
+ sed -i -e 's:#include <malloc.h>:#include <stdlib.h>:' \
+ convert/*.c convert/mtv/*.c *.c headers/*.h || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+ emake -C convert CC="$(tc-getCC)"
+ emake -C convert/mtv CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin mpeg_encode
+ doman docs/*.1
+ dodoc BUGS CHANGES README TODO VERSION
+ dodoc docs/EXTENSIONS docs/INPUT.FORMAT docs/*.param docs/param-summary
+ docinto examples
+ dodoc examples/*
+
+ cd ../convert
+ dobin eyuvtojpeg jmovie2jpeg mpeg_demux mtv/movieToVid
+ newdoc README README.convert
+ newdoc mtv/README README.mtv
+}
+
+pkg_postinst() {
+ if [[ -z $(best_version media-libs/netpbm) ]]; then
+ elog "If you are looking for eyuvtoppm or ppmtoeyuv, please"
+ elog "emerge the netpbm package. It has updated versions."
+ fi
+}
diff --git a/media-video/mpeg-tools/mpeg-tools-1.5b-r5.ebuild b/media-video/mpeg-tools/mpeg-tools-1.5b-r5.ebuild
new file mode 100644
index 000000000000..8da82cd441af
--- /dev/null
+++ b/media-video/mpeg-tools/mpeg-tools-1.5b-r5.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+MY_PN=mpeg_encode
+DESCRIPTION="Tools for MPEG video"
+HOMEPAGE="http://bmrc.berkeley.edu/research/mpeg/mpeg_encode.html"
+SRC_URI="ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/encode/${MY_PN}-${PV}-src.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ virtual/jpeg:0"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_PN}
+
+src_prepare() {
+ cd "${WORKDIR}"
+ epatch "${FILESDIR}"/${P}-build.patch
+ epatch "${FILESDIR}"/${P}-64bit_fixes.patch
+ epatch "${FILESDIR}"/${P}-tempfile-convert.patch
+ epatch "${FILESDIR}"/${P}-as-needed.patch
+ epatch "${FILESDIR}"/${P}-powerpc.patch
+ cd "${S}"
+ rm -r jpeg
+ epatch "${FILESDIR}"/${P}-jpeg.patch
+ epatch "${FILESDIR}"/${P}-tempfile-mpeg-encode.patch
+ epatch "${FILESDIR}"/${P}-tempfile-tests.patch
+ # don't include malloc.h, but use stdlib.h instead
+ sed -i -e 's:#include <malloc.h>:#include <stdlib.h>:' \
+ convert/*.c convert/mtv/*.c *.c headers/*.h || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+ emake -C convert CC="$(tc-getCC)"
+ emake -C convert/mtv CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin mpeg_encode
+ doman docs/*.1
+ dodoc BUGS CHANGES README TODO VERSION
+ dodoc docs/EXTENSIONS docs/INPUT.FORMAT docs/*.param docs/param-summary
+ docinto examples
+ dodoc examples/*
+
+ cd ../convert
+ dobin eyuvtojpeg jmovie2jpeg mpeg_demux mtv/movieToVid
+ newdoc README README.convert
+ newdoc mtv/README README.mtv
+}
+
+pkg_postinst() {
+ if [[ -z $(best_version media-libs/netpbm) ]]; then
+ elog "If you are looking for eyuvtoppm or ppmtoeyuv, please"
+ elog "emerge the netpbm package. It has updated versions."
+ fi
+}