summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfram Schlich <wschlich@gentoo.org>2017-02-10 14:44:32 +0100
committerWolfram Schlich <wschlich@gentoo.org>2017-02-10 14:44:32 +0100
commit2b8b8b465357ce49caa20126a303e5d7a1eb367e (patch)
tree6f617dfb5b87737f51d0a84c61318852c8761265 /media-video
parentwww-servers/uwsgi: cleanup php5-5, ruby20 and fix #608514 thx to Brandon Holb... (diff)
downloadgentoo-2b8b8b465357ce49caa20126a303e5d7a1eb367e.tar.gz
gentoo-2b8b8b465357ce49caa20126a303e5d7a1eb367e.tar.bz2
gentoo-2b8b8b465357ce49caa20126a303e5d7a1eb367e.zip
media-video/motion: security cleanup wrt bug #475120
Package-Manager: portage-2.3.3
Diffstat (limited to 'media-video')
-rw-r--r--media-video/motion/Manifest1
-rw-r--r--media-video/motion/files/ffmpeg-1.patch95
-rw-r--r--media-video/motion/files/ffmpeg-2.patch141
-rw-r--r--media-video/motion/files/ffmpeg-3.patch35
-rw-r--r--media-video/motion/files/ffmpeg-4.patch68
-rw-r--r--media-video/motion/files/ffmpeg-5.patch122
-rw-r--r--media-video/motion/files/libav-9.patch21
-rw-r--r--media-video/motion/files/motion-3.2.12-workaround-v4l1_deprecation.patch35
-rw-r--r--media-video/motion/files/motion.initd-r239
-rw-r--r--media-video/motion/motion-3.2.12-r2.ebuild73
-rw-r--r--media-video/motion/motion-3.2.12-r3.ebuild82
11 files changed, 0 insertions, 712 deletions
diff --git a/media-video/motion/Manifest b/media-video/motion/Manifest
index 3334e86bd860..80481808039f 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 56c83c474f09..000000000000
--- a/media-video/motion/files/ffmpeg-1.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-Description: Fix FFmpeg guess_format() deprecation warning
-Author: Angel Carpintero <motiondevelop@gmail.com>
-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 480819d9987d..000000000000
--- 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 <motiondevelop@gmail.com>
-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 1d6be1959229..000000000000
--- 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 <motiondevelop@gmail.com>
-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 05abd9e28410..000000000000
--- 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 <motiondevelop@gmail.com>
-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 c7d114b1470a..000000000000
--- 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 39b4059df0bd..000000000000
--- 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 04a18dc62c8e..000000000000
--- 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 18b2e5bb0b71..000000000000
--- 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 ebee6c437d1c..000000000000
--- 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 a09010371cfe..000000000000
--- 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
-}