commit:     2b8b8b465357ce49caa20126a303e5d7a1eb367e
Author:     Wolfram Schlich <wschlich <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 10 13:44:32 2017 +0000
Commit:     Wolfram Schlich <wschlich <AT> gentoo <DOT> org>
CommitDate: Fri Feb 10 13:44:32 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b8b8b46

media-video/motion: security cleanup wrt bug #475120

Package-Manager: portage-2.3.3

 media-video/motion/Manifest                        |   1 -
 media-video/motion/files/ffmpeg-1.patch            |  95 --------------
 media-video/motion/files/ffmpeg-2.patch            | 141 ---------------------
 media-video/motion/files/ffmpeg-3.patch            |  35 -----
 media-video/motion/files/ffmpeg-4.patch            |  68 ----------
 media-video/motion/files/ffmpeg-5.patch            | 122 ------------------
 media-video/motion/files/libav-9.patch             |  21 ---
 ...motion-3.2.12-workaround-v4l1_deprecation.patch |  35 -----
 media-video/motion/files/motion.initd-r2           |  39 ------
 media-video/motion/motion-3.2.12-r2.ebuild         |  73 -----------
 media-video/motion/motion-3.2.12-r3.ebuild         |  82 ------------
 11 files changed, 712 deletions(-)

diff --git a/media-video/motion/Manifest b/media-video/motion/Manifest
index 3334e86bd8..8048180803 100644
--- a/media-video/motion/Manifest
+++ b/media-video/motion/Manifest
@@ -1,2 +1 @@
-DIST motion-3.2.12.tar.gz 425729 SHA256 
a597f8d7ec0bf3c5fb62722c4eead59717fe01c2ae0d256c642027cea74b2f0a SHA512 
d44620f8865420da71ff1dc1e1d8ba8e5465b395f2cf3b2cc9a91d3d415694b26376a9f8e3a1b78ffd0efde22d9e0338daa77237aed38c060dc3577af4c0864c
 WHIRLPOOL 
0b7618d48161e8ffefacc5331d1078004d87839b532100c37bfaf06e99772921228feea6eea063301dfdc9e5f5a1dc07fd0847858440c6f876c1e03deaa078c8
 DIST release-4.0.1.tar.gz 444779 SHA256 
2f67669a09ce0481ecd987028dae1c5cb135dfdc3c254c06ab7c9ca0c6c183f0 SHA512 
6ccde3890e6af56f28208321987dd1b9d62a55bbe7cbc3ab5600263602e6e8f47589392c2f3a3a6cb54f927ee76aea94d0e83f26ce8e4047890c891b6c2f8976
 WHIRLPOOL 
425587a1ff52edadddbdc7fd65cdb015324b99514128d3810a6d1bb6d2cd2f1c5daea03c1db0c4a89679358793f9201156dd821ce795d704ede12bdb151fafdd

diff --git a/media-video/motion/files/ffmpeg-1.patch 
b/media-video/motion/files/ffmpeg-1.patch
deleted file mode 100644
index 56c83c474f..0000000000
--- a/media-video/motion/files/ffmpeg-1.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-Description: Fix FFmpeg guess_format() deprecation warning
-Author: Angel Carpintero <[email protected]>
-Origin: Upstream, https://github.com/sackmotion/motion/commit/527377#svn517
-Last-Update: 2012-02-12
-
---- a/ffmpeg.c
-+++ b/ffmpeg.c
-@@ -36,6 +36,11 @@
- #    endif /* __GNUC__ */
- #endif /* LIBAVCODEC_BUILD > 4680 */
- 
-+#if defined LIBAVFORMAT_VERSION_MAJOR && defined LIBAVFORMAT_VERSION_MINOR 
-+#if LIBAVFORMAT_VERSION_MAJOR < 53 && LIBAVFORMAT_VERSION_MINOR < 45
-+    #define GUESS_NO_DEPRECATED 
-+#endif
-+#endif
- 
- #if LIBAVFORMAT_BUILD >= 4616
- /* The API for av_write_frame changed with FFmpeg version 0.4.9pre1.
-@@ -258,7 +263,11 @@
-         /* We use "mpeg1video" for raw mpeg1 format. Using "mpeg" would
-          * result in a muxed output file, which isn't appropriate here.
-          */
--        of = guess_format("mpeg1video", NULL, NULL);
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);        
-+#else
-+        of = av_guess_format("mpeg1video", NULL, NULL);
-+#endif 
-         if (of) {
-             /* But we want the trailer to be correctly written. */
-             of->write_trailer = mpeg1_write_trailer;
-@@ -270,24 +279,44 @@
- #endif
-     } else if (strcmp(codec, "mpeg4") == 0) {
-         ext = ".avi";
--        of = guess_format("avi", NULL, NULL);
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);
-+#else        
-+        of = av_guess_format("avi", NULL, NULL);
-+#endif        
-     } else if (strcmp(codec, "msmpeg4") == 0) {
-         ext = ".avi";
--        of = guess_format("avi", NULL, NULL);
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);
-+#else        
-+        of = av_guess_format("avi", NULL, NULL);
-+#endif
-         if (of) {
-             /* Manually override the codec id. */
-             of->video_codec = CODEC_ID_MSMPEG4V2;
-         }
-     } else if (strcmp(codec, "swf") == 0) {
-         ext = ".swf";
--        of = guess_format("swf", NULL, NULL);
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);
-+#else        
-+        of = av_guess_format("swf", NULL, NULL);
-+#endif        
-     } else if (strcmp(codec, "flv") == 0) {
-         ext = ".flv";
--        of = guess_format("flv", NULL, NULL);
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);
-+#else        
-+        of = av_guess_format("flv", NULL, NULL);
-+#endif        
-         of->video_codec = CODEC_ID_FLV1;
-     } else if (strcmp(codec, "ffv1") == 0) {
-         ext = ".avi";
--        of = guess_format("avi", NULL, NULL);
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);
-+#else
-+        of = av_guess_format("avi", NULL, NULL);
-+#endif
-         if (of) {
-             /* Use the FFMPEG Lossless Video codec (experimental!).
-                Requires strict_std_compliance to be <= -2 */
-@@ -295,7 +324,11 @@
-         }
-     } else if (strcmp(codec, "mov") == 0) {
-         ext = ".mov";
--        of = guess_format("mov", NULL, NULL);        
-+#ifdef GUESS_NO_DEPRECATED
-+        of = guess_format("mpeg1video", NULL, NULL);
-+#else        
-+        of = av_guess_format("mov", NULL, NULL);
-+#endif
-     } else {
-         motion_log(LOG_ERR, 0, "ffmpeg_video_codec option value %s is not 
supported", codec);
-         return NULL;

diff --git a/media-video/motion/files/ffmpeg-2.patch 
b/media-video/motion/files/ffmpeg-2.patch
deleted file mode 100644
index 480819d998..0000000000
--- a/media-video/motion/files/ffmpeg-2.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-Description: Improve detection of av_register_protocol() for ffmpeg.
-Author: Angel Carpintero <[email protected]>
-Origin: Upstream, https://github.com/sackmotion/motion/commit/7aec4b#svn538
-Last-Update: 2012-02-12
-
---- a/configure.in
-+++ b/configure.in
-@@ -316,7 +316,7 @@
- #
- else if test "${FFMPEG_DIR}" = "yes"; then
-       # AUTODETECT STATIC/SHARED LIB 
--      AC_MSG_CHECKING(for ffmpeg autodetecting)
-+      AC_MSG_CHECKING(for ffmpeg autodetecting libraries)
- 
-       if test -f /usr/lib64/libavcodec.a -o -f /usr/lib64/libavcodec.so && 
test -f /usr/lib64/libavformat.a -o -f /usr/lib64/libavformat.so ; then
-               AC_MSG_RESULT(found in /usr/lib64)
-@@ -347,7 +347,7 @@
-               echo ""         
-       fi 
- else
--      AC_MSG_CHECKING(for ffmpeg in -> [${FFMPEG_DIR}] <-)
-+      AC_MSG_CHECKING(for ffmpeg libraries in -> [${FFMPEG_DIR}] <-)
-       if test -f ${FFMPEG_DIR}/lib/libavcodec.a -o -f 
${FFMPEG_DIR}/lib/libavcodec.so && test -f ${FFMPEG_DIR}/lib/libavformat.a -o 
-f ${FFMPEG_DIR}/lib/libavformat.so ; then
-               AC_MSG_RESULT(found)
-               FFMPEG_OK="found"
-@@ -392,9 +392,11 @@
-       elif test -f ${FFMPEG_DIR}/include/libavformat/avformat.h; then
-               AC_MSG_RESULT(found 
${FFMPEG_DIR}/include/libavformat/avformat.h)
-               FFMPEG_CFLAGS="-I${FFMPEG_DIR}/include -DFFMPEG_NEW_INCLUDES"
-+              AVFORMAT="-I${FFMPEG_DIR}/include/libavformat"
-     elif test -f ${FFMPEG_DIR}/include/ffmpeg/libavformat/avformat.h; then
-         AC_MSG_RESULT(found 
${FFMPEG_DIR}/include/ffmpeg/libavformat/avformat.h)
-         FFMPEG_CFLAGS="-I${FFMPEG_DIR}/include/ffmpeg -DFFMPEG_NEW_INCLUDES" 
-+      AVFORMAT="-I${FFMPEG_DIR}/include/ffmpeg/libavformat"
-       else
-               AC_MSG_RESULT(not found)
-               FFMPEG_OK="no_found"
-@@ -423,9 +425,11 @@
-               AC_MSG_CHECKING([file_protocol is defined in ffmpeg ?])
-               saved_CFLAGS=$CFLAGS
-               saved_LIBS=$LIBS
--              CFLAGS="${FFMPEG_CFLAGS}"
-+
-+
-+              CFLAGS="${FFMPEG_CFLAGS} ${AVFORMAT}"
-               LIBS="$TEMP_LIBS"
--              
-+      
-               AC_COMPILE_IFELSE(
-                       [
-                       #include <avformat.h>
-@@ -442,7 +446,35 @@
-                       ]
-               )
-               CFLAGS=$saved_CFLAGS
--              LIBS=$saved_LIBS        
-+              LIBS=$saved_LIBS
-+       
-+        AC_MSG_CHECKING([av_register_protocol is defined in ffmpeg ?]) 
-+        saved_CFLAGS=$CFLAGS
-+        saved_LIBS=$LIBS
-+        CFLAGS="${FFMPEG_CFLAGS} ${AVFORMAT}"
-+        LIBS="$TEMP_LIBS"
-+       
-+        AC_COMPILE_IFELSE(
-+            [
-+            #include <avformat.h>
-+            URLProtocol test_file_protocol;
-+            int main(void){
-+                av_register_protocol(&test_file_protocol);
-+                  return 0;
-+            }
-+            ],
-+            [
-+                AC_MSG_RESULT(yes)
-+                TEMP_CFLAGS="${TEMP_CFLAGS} 
-DHAVE_FFMPEG_AV_REGISTER_PROTOCOL"
-+            ],
-+            [
-+                AC_MSG_RESULT(no)
-+            ]
-+        )
-+
-+        CFLAGS=$saved_CFLAGS
-+        LIBS=$saved_LIBS
-+                                        
-       fi
- fi    
- fi
---- a/ffmpeg.c
-+++ b/ffmpeg.c
-@@ -232,11 +232,11 @@
-     mpeg1_file_protocol.url_seek  = file_protocol.url_seek;
-     mpeg1_file_protocol.url_close = file_protocol.url_close;
- 
--    /* Register the append file protocol. */
--#if LIBAVFORMAT_BUILD >= (52<<16 | 31<<8)
-+/* Register the append file protocol. */
-+#ifdef HAVE_FFMPEG_AV_REGISTER_PROTOCOL
-     av_register_protocol(&mpeg1_file_protocol);
- #else
--    register_protocol(&mpeg1_file_protocol);
-+    av_register_protocol2(&mpeg1_file_protocol, sizeof(mpeg1_file_protocol));
- #endif
- }
- 
-@@ -410,7 +410,11 @@
- 
-     ffmpeg->c     = c = AVSTREAM_CODEC_PTR(ffmpeg->video_st);
-     c->codec_id   = ffmpeg->oc->oformat->video_codec;
-+#if LIBAVCODEC_VERSION_MAJOR < 53    
-     c->codec_type = CODEC_TYPE_VIDEO;
-+#else
-+    c->codec_type = AVMEDIA_TYPE_VIDEO;
-+#endif    
-     is_mpeg1      = c->codec_id == CODEC_ID_MPEG1VIDEO;
- 
-     if (strcmp(ffmpeg_video_codec, "ffv1") == 0)
-@@ -679,7 +683,11 @@
-     if (ffmpeg->oc->oformat->flags & AVFMT_RAWPICTURE) {
-         /* raw video case. The API will change slightly in the near future 
for that */
- #ifdef FFMPEG_AVWRITEFRAME_NEWAPI
-+#if LIBAVCODEC_VERSION_MAJOR < 53        
-         pkt.flags |= PKT_FLAG_KEY;
-+#else
-+        pkt.flags |= AV_PKT_FLAG_KEY;  
-+#endif        
-         pkt.data = (uint8_t *)pic;
-         pkt.size = sizeof(AVPicture);
-         ret = av_write_frame(ffmpeg->oc, &pkt);
-@@ -700,7 +708,11 @@
- #ifdef FFMPEG_AVWRITEFRAME_NEWAPI
-             pkt.pts = AVSTREAM_CODEC_PTR(ffmpeg->video_st)->coded_frame->pts;
-             if (AVSTREAM_CODEC_PTR(ffmpeg->video_st)->coded_frame->key_frame) 
{
-+#if LIBAVCODEC_VERSION_MAJOR < 53                
-                 pkt.flags |= PKT_FLAG_KEY;
-+#else
-+                pkt.flags |= AV_PKT_FLAG_KEY;
-+#endif                
-             }
-             pkt.data = ffmpeg->video_outbuf;
-             pkt.size = out_size;

diff --git a/media-video/motion/files/ffmpeg-3.patch 
b/media-video/motion/files/ffmpeg-3.patch
deleted file mode 100644
index 1d6be19592..0000000000
--- a/media-video/motion/files/ffmpeg-3.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Description: Fix avoid crash producing MPEG4 with newer FFmpeg.
-Author: Angel Carpintero <[email protected]>
-Origin: Upstream, https://github.com/sackmotion/motion/commit/734155#svn539
-Bug: http://www.lavrsen.dk/foswiki/bin/view/Motion/BugReport2011x10x05x071936
-Last-Update: 2012-02-12
-
---- a/configure.in
-+++ b/configure.in
-@@ -1099,6 +1099,10 @@
- LIBS="${TEMP_LIBS}"
- LDFLAGS="${TEMP_LDFLAGS}"
- 
-+
-+AC_CHECK_FUNC(avformat_alloc_context, 
AC_DEFINE([have_avformat_alloc_context],1,[Define to 1 if you have 
avformat_alloc_context support]))
-+AC_CHECK_FUNC(av_avformat_alloc_context, 
AC_DEFINE([have_av_avformat_alloc_context],1,[Define to 1 if you have 
av_avformat_alloc_context support]))
-+
- #
- # Add the right exec path for rc scripts
- #
---- a/ffmpeg.c
-+++ b/ffmpeg.c
-@@ -373,7 +373,13 @@
-     snprintf(ffmpeg->codec, sizeof(ffmpeg->codec), "%s", ffmpeg_video_codec);
- 
-     /* allocation the output media context */
-+#ifdef have_avformat_alloc_context
-+    ffmpeg->oc = avformat_alloc_context();
-+#elif defined have_av_avformat_alloc_context
-+    ffmpeg->oc = av_alloc_format_context();
-+#else
-     ffmpeg->oc = av_mallocz(sizeof(AVFormatContext));
-+#endif
- 
-     if (!ffmpeg->oc) {
-         motion_log(LOG_ERR, 1, "Memory error while allocating output media 
context");

diff --git a/media-video/motion/files/ffmpeg-4.patch 
b/media-video/motion/files/ffmpeg-4.patch
deleted file mode 100644
index 05abd9e284..0000000000
--- a/media-video/motion/files/ffmpeg-4.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-Description: Improve av_register_protocol2()/av_register_protocol() detection
-Author: Angel Carpintero <[email protected]>
-Origin: Upstream, 
https://github.com/sackmotion/motion/commit/5dd9ed#svn540#svn540
-Last-Update: 2012-02-12
-
---- a/configure.in
-+++ b/configure.in
-@@ -448,33 +448,6 @@
-               CFLAGS=$saved_CFLAGS
-               LIBS=$saved_LIBS
-        
--        AC_MSG_CHECKING([av_register_protocol is defined in ffmpeg ?]) 
--        saved_CFLAGS=$CFLAGS
--        saved_LIBS=$LIBS
--        CFLAGS="${FFMPEG_CFLAGS} ${AVFORMAT}"
--        LIBS="$TEMP_LIBS"
--       
--        AC_COMPILE_IFELSE(
--            [
--            #include <avformat.h>
--            URLProtocol test_file_protocol;
--            int main(void){
--                av_register_protocol(&test_file_protocol);
--                  return 0;
--            }
--            ],
--            [
--                AC_MSG_RESULT(yes)
--                TEMP_CFLAGS="${TEMP_CFLAGS} 
-DHAVE_FFMPEG_AV_REGISTER_PROTOCOL"
--            ],
--            [
--                AC_MSG_RESULT(no)
--            ]
--        )
--
--        CFLAGS=$saved_CFLAGS
--        LIBS=$saved_LIBS
--                                        
-       fi
- fi    
- fi
-@@ -1102,6 +1075,9 @@
- 
- AC_CHECK_FUNC(avformat_alloc_context, 
AC_DEFINE([have_avformat_alloc_context],1,[Define to 1 if you have 
avformat_alloc_context support]))
- AC_CHECK_FUNC(av_avformat_alloc_context, 
AC_DEFINE([have_av_avformat_alloc_context],1,[Define to 1 if you have 
av_avformat_alloc_context support]))
-+AC_CHECK_FUNC(av_register_protocol2, 
AC_DEFINE([have_av_register_protocol2],1,[Define to 1 if you have 
av_register_protocol2 support]))
-+AC_CHECK_FUNC(av_register_protocol, 
AC_DEFINE([have_av_register_protocol],1,[Define to 1 if you have 
av_register_protocol support]))
-+
- 
- #
- # Add the right exec path for rc scripts
---- a/ffmpeg.c
-+++ b/ffmpeg.c
-@@ -233,10 +233,12 @@
-     mpeg1_file_protocol.url_close = file_protocol.url_close;
- 
- /* Register the append file protocol. */
--#ifdef HAVE_FFMPEG_AV_REGISTER_PROTOCOL
-+#ifdef have_av_register_protocol2
-+    av_register_protocol2(&mpeg1_file_protocol, sizeof(mpeg1_file_protocol));
-+#elif defined have_av_register_protocol        
-     av_register_protocol(&mpeg1_file_protocol);
- #else
--    av_register_protocol2(&mpeg1_file_protocol, sizeof(mpeg1_file_protocol));
-+#   warning av_register_protocolXXX missing
- #endif
- }
- 

diff --git a/media-video/motion/files/ffmpeg-5.patch 
b/media-video/motion/files/ffmpeg-5.patch
deleted file mode 100644
index c7d114b147..0000000000
--- a/media-video/motion/files/ffmpeg-5.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-Convert to avio API.
-Disable mpeg1 append code based or the ffurl API as mpeg1 is blacklisted with
-new ffmpeg versions in this code anyway.
-Fix build with ffmpeg-1
-
-Index: motion-3.2.12/ffmpeg.c
-===================================================================
---- motion-3.2.12.orig/ffmpeg.c
-+++ motion-3.2.12/ffmpeg.c
-@@ -73,6 +73,7 @@ AVFrame *ffmpeg_prepare_frame(struct ffm
- /* This is the trailer used to end mpeg1 videos. */
- static unsigned char mpeg1_trailer[] = {0x00, 0x00, 0x01, 0xb7};
- 
-+#ifndef FFMPEG_NO_NONSTD_MPEG1
- /* Append version of the file open function used in libavformat when opening
-  * an ordinary file. The original file open function truncates an existing
-  * file, but this version appends to it instead.
-@@ -118,6 +119,7 @@ URLProtocol mpeg1_file_protocol = {
-     .url_open = file_open_append
- };
- 
-+#endif
- 
- #ifdef HAVE_FFMPEG_NEW
- 
-@@ -132,6 +134,7 @@ URLProtocol mpeg1_file_protocol = {
- #include "avstring.h"
- #endif
- 
-+#ifndef FFMPEG_NO_NONSTD_MPEG1
- static int file_open(URLContext *h, const char *filename, int flags)
- {
-     int access_flags, fd;
-@@ -195,6 +198,7 @@ URLProtocol file_protocol = {
- };
- 
- #endif
-+#endif
- 
- 
- /* We set AVOutputFormat->write_trailer to this function for mpeg1. That way,
-@@ -203,8 +207,8 @@ URLProtocol file_protocol = {
- static int mpeg1_write_trailer(AVFormatContext *s)
- {
- #if LIBAVFORMAT_BUILD >= (52<<16) 
--    put_buffer(s->pb, mpeg1_trailer, 4);
--    put_flush_packet(s->pb);    
-+    avio_write(s->pb, mpeg1_trailer, 4);
-+    avio_flush(s->pb);    
- #else
-     put_buffer(&s->pb, mpeg1_trailer, 4);
-     put_flush_packet(&s->pb);
-@@ -226,6 +230,7 @@ void ffmpeg_init()
-     /* Copy the functions to use for the append file protocol from the 
standard
-      * file protocol.
-      */
-+#ifndef FFMPEG_NO_NONSTD_MPEG1
-     mpeg1_file_protocol.url_read  = file_protocol.url_read;
-     mpeg1_file_protocol.url_write = file_protocol.url_write;
-     mpeg1_file_protocol.url_seek  = file_protocol.url_seek;
-@@ -239,6 +244,7 @@ void ffmpeg_init()
- #else
-     register_protocol(&mpeg1_file_protocol);
- #endif
-+#endif
- }
- 
- /* Obtains the output format used for the specified codec. For mpeg4 codecs,
-@@ -422,13 +428,6 @@ struct ffmpeg *ffmpeg_open(char *ffmpeg_
-         c->flags |= CODEC_FLAG_GLOBAL_HEADER;
-     }
- 
--    /* set the output parameters (must be done even if no parameters). */
--    if (av_set_parameters(ffmpeg->oc, NULL) < 0) {
--        motion_log(LOG_ERR, 0, "ffmpeg av_set_parameters error: Invalid 
output format parameters");
--        ffmpeg_cleanups(ffmpeg);
--        return NULL;
--    }
--
-     /* Dump the format settings.  This shows how the various streams relate 
to each other */
-     //dump_format(ffmpeg->oc, 0, filename, 1);
- 
-@@ -504,7 +503,7 @@ struct ffmpeg *ffmpeg_open(char *ffmpeg_
-             snprintf(file_proto, sizeof(file_proto), "%s", filename);
-         
- 
--        if (url_fopen(&ffmpeg->oc->pb, file_proto, URL_WRONLY) < 0) {
-+        if (avio_open(&ffmpeg->oc->pb, file_proto, AVIO_FLAG_WRITE) < 0) {
-             /* path did not exist? */
-             if (errno == ENOENT) {
-                 /* create path for file (don't use file_proto)... */
-@@ -514,7 +513,7 @@ struct ffmpeg *ffmpeg_open(char *ffmpeg_
-                 }
- 
-                 /* and retry opening the file (use file_proto) */
--                if (url_fopen(&ffmpeg->oc->pb, file_proto, URL_WRONLY) < 0) {
-+                if (avio_open(&ffmpeg->oc->pb, file_proto, AVIO_FLAG_WRITE) < 
0) {
-                     motion_log(LOG_ERR, 1, "url_fopen - error opening file 
%s",filename);
-                     ffmpeg_cleanups(ffmpeg);
-                     return NULL;
-@@ -535,7 +534,11 @@ struct ffmpeg *ffmpeg_open(char *ffmpeg_
-     }
- 
-     /* write the stream header, if any */
--    av_write_header(ffmpeg->oc);
-+    if(avformat_write_header(ffmpeg->oc, NULL) < 0) {
-+      motion_log(LOG_ERR, 1, "Error while writing header for %s", filename);
-+      ffmpeg_cleanups(ffmpeg);
-+      return NULL;
-+    }
-     
-     return ffmpeg;
- }
-@@ -602,7 +605,7 @@ void ffmpeg_close(struct ffmpeg *ffmpeg)
-     if (!(ffmpeg->oc->oformat->flags & AVFMT_NOFILE)) {
-         /* close the output file */
- #if LIBAVFORMAT_BUILD >= (52<<16) 
--        url_fclose(ffmpeg->oc->pb);
-+        avio_close(ffmpeg->oc->pb);
- #else
-         url_fclose(&ffmpeg->oc->pb);
- #endif /* LIBAVFORMAT_BUILD >= (52<<16) */

diff --git a/media-video/motion/files/libav-9.patch 
b/media-video/motion/files/libav-9.patch
deleted file mode 100644
index 39b4059df0..0000000000
--- a/media-video/motion/files/libav-9.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -urN motion-3.2.12.old/ffmpeg.c motion-3.2.12/ffmpeg.c
---- motion-3.2.12.old/ffmpeg.c 2013-06-17 20:36:45.355529743 +0200
-+++ motion-3.2.12/ffmpeg.c     2013-06-17 20:35:41.868532001 +0200
-@@ -409,7 +409,7 @@
-     ffmpeg->video_st = NULL;
- 
-     if (ffmpeg->oc->oformat->video_codec != CODEC_ID_NONE) {
--        ffmpeg->video_st = av_new_stream(ffmpeg->oc, 0);
-+        ffmpeg->video_st = avformat_new_stream(ffmpeg->oc, 0);
-         if (!ffmpeg->video_st) {
-             motion_log(LOG_ERR, 1, "av_new_stream - could not alloc stream");
-             ffmpeg_cleanups(ffmpeg);
-@@ -487,7 +487,7 @@
-     pthread_mutex_lock(&global_lock);
- 
-     /* open the codec */
--    if (avcodec_open(c, codec) < 0) {
-+    if (avcodec_open2(c, codec, NULL) < 0) {
-         /* Release the lock. */
-         pthread_mutex_unlock(&global_lock);
-         motion_log(LOG_ERR, 1, "avcodec_open - could not open codec");

diff --git 
a/media-video/motion/files/motion-3.2.12-workaround-v4l1_deprecation.patch 
b/media-video/motion/files/motion-3.2.12-workaround-v4l1_deprecation.patch
deleted file mode 100644
index 04a18dc62c..0000000000
--- a/media-video/motion/files/motion-3.2.12-workaround-v4l1_deprecation.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-motion has both v4l1 and v4l2 support but they are not separate except in 
upstream version control.
-so, temporarily use the libv4l1-videodev.h from libv4l to allow succesful 
build of the v4l2 (pay attention here!) backend.
-
---- motion.h
-+++ motion.h
-@@ -40,7 +40,7 @@
- 
- #define _LINUX_TIME_H 1
- #if !defined(WITHOUT_V4L) && !defined(BSD)
--#include <linux/videodev.h>
-+#include <libv4l1-videodev.h>
- #endif
- 
- #include <pthread.h>
---- track.c
-+++ track.c
-@@ -11,6 +11,7 @@
- #include "motion.h"
- 
- #ifndef WITHOUT_V4L
-+#include <linux/videodev2.h>
- #include "pwc-ioctl.h"
- #endif
- 
---- video.h
-+++ video.h
-@@ -12,7 +12,7 @@
- 
- #define _LINUX_TIME_H 1
- #ifndef WITHOUT_V4L
--#include <linux/videodev.h>
-+#include <libv4l1-videodev.h>
- #include <sys/mman.h>
- #include "pwc-ioctl.h"
- #endif

diff --git a/media-video/motion/files/motion.initd-r2 
b/media-video/motion/files/motion.initd-r2
deleted file mode 100644
index 18b2e5bb0b..0000000000
--- a/media-video/motion/files/motion.initd-r2
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-extra_started_commands="reload"
-
-_create_motion_run_dir() {
-       local dir="/var/run/motion"
-       if ! [ -d "$dir" ]; then
-               mkdir -p -m750 "$dir"
-               chown ${MOTION_USER}:${MOTION_GROUP} "$dir"
-       fi
-}
-
-depend() {
-       need modules
-       after mysql
-}
-
-start() {
-       _create_motion_run_dir
-
-       ebegin "Starting motion detection"
-       start-stop-daemon --start -u ${MOTION_USER} -g ${MOTION_GROUP} --quiet 
--exec /usr/bin/motion
-       eend $?
-}
-
-stop() {
-       ebegin "Stopping motion detection"
-       start-stop-daemon --stop --quiet --exec /usr/bin/motion
-       eend $?
-}
-
-reload() {
-       ebegin "Reloading motion detection configuration"
-       start-stop-daemon --stop --signal HUP --exec /usr/bin/motion
-       eend $?
-}

diff --git a/media-video/motion/motion-3.2.12-r2.ebuild 
b/media-video/motion/motion-3.2.12-r2.ebuild
deleted file mode 100644
index ebee6c437d..0000000000
--- a/media-video/motion/motion-3.2.12-r2.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=4
-inherit eutils user
-
-DESCRIPTION="A software motion detector"
-HOMEPAGE="http://www.lavrsen.dk/twiki/bin/view/Motion/WebHome";
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ppc x86"
-IUSE="ffmpeg mysql postgres +v4l"
-
-RDEPEND="sys-libs/zlib
-       virtual/jpeg
-       ffmpeg? ( virtual/ffmpeg )
-       mysql? ( virtual/mysql )
-       postgres? ( dev-db/postgresql )"
-# note: libv4l is only in dependencies for the libv4l1-videodev.h header file
-# used by the -workaround-v4l1_deprecation.patch.
-DEPEND="${RDEPEND}
-       v4l? ( virtual/os-headers media-libs/libv4l )"
-
-pkg_setup() {
-       enewuser motion -1 -1 -1 video
-}
-
-src_prepare() {
-       epatch \
-               "${FILESDIR}"/ffmpeg-1.patch \
-               "${FILESDIR}"/ffmpeg-2.patch \
-               "${FILESDIR}"/ffmpeg-3.patch \
-               "${FILESDIR}"/ffmpeg-4.patch \
-               "${FILESDIR}"/ffmpeg-5.patch \
-               "${FILESDIR}"/libav-9.patch \
-               "${FILESDIR}"/${P}-workaround-v4l1_deprecation.patch
-}
-
-src_configure() {
-       econf \
-               $(use_with v4l) \
-               $(use_with ffmpeg) \
-               $(use_with mysql) \
-               $(use_with postgres pgsql) \
-               --without-optimizecpu
-}
-
-src_install() {
-       emake \
-               DESTDIR="${D}" \
-               DOC='CHANGELOG CODE_STANDARD CREDITS FAQ README' \
-               docdir=/usr/share/doc/${PF} \
-               EXAMPLES='thread*.conf' \
-               examplesdir=/usr/share/doc/${PF}/examples \
-               install
-
-       dohtml *.html
-
-       newinitd "${FILESDIR}"/motion.initd-r2 motion
-       newconfd "${FILESDIR}"/motion.confd motion
-
-       mv -vf "${D}"/etc/motion{-dist,}.conf || die
-}
-
-pkg_postinst() {
-       elog "You need to setup /etc/motion.conf before running"
-       elog "motion for the first time."
-       elog "You can install motion detection as a service, use:"
-       elog "rc-update add motion default"
-}

diff --git a/media-video/motion/motion-3.2.12-r3.ebuild 
b/media-video/motion/motion-3.2.12-r3.ebuild
deleted file mode 100644
index a09010371c..0000000000
--- a/media-video/motion/motion-3.2.12-r3.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit autotools eutils readme.gentoo user
-
-DESCRIPTION="A software motion detector"
-HOMEPAGE="http://www.lavrsen.dk/twiki/bin/view/Motion/WebHome";
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ppc x86"
-IUSE="ffmpeg libav mysql postgres +v4l"
-
-RDEPEND="
-       sys-libs/zlib
-       virtual/jpeg
-       ffmpeg? (
-               libav? ( media-video/libav:= )
-               !libav? ( media-video/ffmpeg:0= )
-       )
-       mysql? ( virtual/mysql )
-       postgres? ( dev-db/postgresql )
-"
-# note: libv4l is only in dependencies for the libv4l1-videodev.h header file
-# used by the -workaround-v4l1_deprecation.patch.
-DEPEND="${RDEPEND}
-       v4l? ( virtual/os-headers media-libs/libv4l )
-"
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="You need to setup /etc/motion.conf before running
-motion for the first time.
-You can install motion detection as a service, use:
-rc-update add motion default
-"
-
-pkg_setup() {
-       enewuser motion -1 -1 -1 video
-}
-
-src_prepare() {
-       epatch \
-               "${FILESDIR}"/ffmpeg-1.patch \
-               "${FILESDIR}"/ffmpeg-2.patch \
-               "${FILESDIR}"/ffmpeg-3.patch \
-               "${FILESDIR}"/ffmpeg-4.patch \
-               "${FILESDIR}"/ffmpeg-5.patch \
-               "${FILESDIR}"/libav-9.patch \
-               "${FILESDIR}"/${P}-workaround-v4l1_deprecation.patch
-       eautoreconf
-}
-
-src_configure() {
-       econf \
-               $(use_with v4l) \
-               $(use_with ffmpeg) \
-               $(use_with mysql) \
-               $(use_with postgres pgsql) \
-               --without-optimizecpu
-}
-
-src_install() {
-       emake \
-               DESTDIR="${D}" \
-               DOC='CHANGELOG CODE_STANDARD CREDITS FAQ README' \
-               docdir=/usr/share/doc/${PF} \
-               EXAMPLES='thread*.conf' \
-               examplesdir=/usr/share/doc/${PF}/examples \
-               install
-
-       dohtml *.html
-
-       newinitd "${FILESDIR}"/motion.initd-r2 motion
-       newconfd "${FILESDIR}"/motion.confd motion
-
-       mv -vf "${D}"/etc/motion{-dist,}.conf || die
-
-       readme.gentoo_create_doc
-}

Reply via email to