gnu: libextractor: Add patch to fix build with ffmpeg-3.
* gnu/packages/patches/libextractor-ffmpeg-3.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/gnunet.scm (libextractor)[source]: Add patch.
This commit is contained in:
		
							parent
							
								
									ae05e366be
								
							
						
					
					
						commit
						fd7fd3c167
					
				
					 3 changed files with 150 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -580,6 +580,7 @@ dist_patch_DATA =						\
 | 
			
		|||
  gnu/packages/patches/libcmis-fix-test-onedrive.patch		\
 | 
			
		||||
  gnu/packages/patches/libdrm-symbol-check.patch		\
 | 
			
		||||
  gnu/packages/patches/libevent-dns-tests.patch			\
 | 
			
		||||
  gnu/packages/patches/libextractor-ffmpeg-3.patch		\
 | 
			
		||||
  gnu/packages/patches/libmtp-devices.patch			\
 | 
			
		||||
  gnu/packages/patches/liboop-mips64-deplibs-fix.patch		\
 | 
			
		||||
  gnu/packages/patches/libotr-test-auth-fix.patch		\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,6 +5,7 @@
 | 
			
		|||
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2016 Ni* Gillmann <ng@niasterisk.space>
 | 
			
		||||
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 | 
			
		||||
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -66,6 +67,7 @@
 | 
			
		|||
            (sha256
 | 
			
		||||
             (base32
 | 
			
		||||
              "0zvv7wd011npcx7yphw9bpgivyxz6mlp87a57n96nv85k96dd2l6"))
 | 
			
		||||
            (patches (list (search-patch "libextractor-ffmpeg-3.patch")))
 | 
			
		||||
            (modules '((guix build utils)))
 | 
			
		||||
            (snippet
 | 
			
		||||
             ;; Nowadays libmagic (from 'file') returns 'audio/ogg' and not
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										147
									
								
								gnu/packages/patches/libextractor-ffmpeg-3.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										147
									
								
								gnu/packages/patches/libextractor-ffmpeg-3.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,147 @@
 | 
			
		|||
Fix build for ffmpeg-3.0.
 | 
			
		||||
Based on a patch by Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
 | 
			
		||||
for ffmpeg-2.9, found at <https://gnunet.org/bugs/view.php?id=4167>
 | 
			
		||||
and later modified by Mark H Weaver <mhw@netris.org> for ffmpeg-3.0.
 | 
			
		||||
 | 
			
		||||
--- libextractor-1.3/src/plugins/thumbnailffmpeg_extractor.c.orig	2013-12-21 11:04:41.000000000 -0500
 | 
			
		||||
+++ libextractor-1.3/src/plugins/thumbnailffmpeg_extractor.c	2016-04-04 22:42:17.859001669 -0400
 | 
			
		||||
@@ -153,7 +153,7 @@
 | 
			
		||||
 static size_t 
 | 
			
		||||
 create_thumbnail (int src_width, int src_height, 
 | 
			
		||||
 		  int src_stride[],
 | 
			
		||||
-		  enum PixelFormat src_pixfmt, 
 | 
			
		||||
+		  enum AVPixelFormat src_pixfmt,
 | 
			
		||||
 		  const uint8_t * const src_data[],
 | 
			
		||||
 		  int dst_width, int dst_height,
 | 
			
		||||
 		  uint8_t **output_data, 
 | 
			
		||||
@@ -189,7 +189,7 @@
 | 
			
		||||
   if (NULL == 
 | 
			
		||||
       (scaler_ctx =
 | 
			
		||||
        sws_getContext (src_width, src_height, src_pixfmt,
 | 
			
		||||
-		       dst_width, dst_height, PIX_FMT_RGB24, 
 | 
			
		||||
+		       dst_width, dst_height, AV_PIX_FMT_RGB24,
 | 
			
		||||
 		       SWS_BILINEAR, NULL, NULL, NULL)))
 | 
			
		||||
     {
 | 
			
		||||
 #if DEBUG
 | 
			
		||||
@@ -199,7 +199,7 @@
 | 
			
		||||
       return 0;
 | 
			
		||||
     }
 | 
			
		||||
 
 | 
			
		||||
-  if (NULL == (dst_frame = avcodec_alloc_frame ()))
 | 
			
		||||
+  if (NULL == (dst_frame = av_frame_alloc ()))
 | 
			
		||||
     {
 | 
			
		||||
 #if DEBUG
 | 
			
		||||
       fprintf (stderr,
 | 
			
		||||
@@ -209,7 +209,7 @@
 | 
			
		||||
       return 0;
 | 
			
		||||
     }
 | 
			
		||||
   if (NULL == (dst_buffer =
 | 
			
		||||
-	       av_malloc (avpicture_get_size (PIX_FMT_RGB24, dst_width, dst_height))))
 | 
			
		||||
+	       av_malloc (avpicture_get_size (AV_PIX_FMT_RGB24, dst_width, dst_height))))
 | 
			
		||||
     {
 | 
			
		||||
 #if DEBUG
 | 
			
		||||
       fprintf (stderr,
 | 
			
		||||
@@ -220,7 +220,7 @@
 | 
			
		||||
       return 0;
 | 
			
		||||
     }
 | 
			
		||||
   avpicture_fill ((AVPicture *) dst_frame, dst_buffer,
 | 
			
		||||
-                  PIX_FMT_RGB24, dst_width, dst_height);
 | 
			
		||||
+                  AV_PIX_FMT_RGB24, dst_width, dst_height);
 | 
			
		||||
   sws_scale (scaler_ctx,
 | 
			
		||||
              src_data, 
 | 
			
		||||
              src_stride,
 | 
			
		||||
@@ -255,7 +255,7 @@
 | 
			
		||||
     }
 | 
			
		||||
   encoder_codec_ctx->width = dst_width;
 | 
			
		||||
   encoder_codec_ctx->height = dst_height;
 | 
			
		||||
-  encoder_codec_ctx->pix_fmt = PIX_FMT_RGB24;
 | 
			
		||||
+  encoder_codec_ctx->pix_fmt = AV_PIX_FMT_RGB24;
 | 
			
		||||
   opts = NULL;
 | 
			
		||||
   if (avcodec_open2 (encoder_codec_ctx, encoder_codec, &opts) < 0)
 | 
			
		||||
     {
 | 
			
		||||
@@ -410,7 +410,7 @@
 | 
			
		||||
       return;
 | 
			
		||||
     }
 | 
			
		||||
   av_dict_free (&opts);
 | 
			
		||||
-  if (NULL == (frame = avcodec_alloc_frame ()))
 | 
			
		||||
+  if (NULL == (frame = av_frame_alloc ()))
 | 
			
		||||
     {
 | 
			
		||||
 #if DEBUG
 | 
			
		||||
       fprintf (stderr,
 | 
			
		||||
@@ -563,7 +563,7 @@
 | 
			
		||||
       return;
 | 
			
		||||
     }
 | 
			
		||||
 
 | 
			
		||||
-  if (NULL == (frame = avcodec_alloc_frame ()))
 | 
			
		||||
+  if (NULL == (frame = av_frame_alloc ()))
 | 
			
		||||
     {
 | 
			
		||||
 #if DEBUG
 | 
			
		||||
       fprintf (stderr,
 | 
			
		||||
--- libextractor-1.3/src/plugins/previewopus_extractor.c.orig	2013-12-22 17:44:18.000000000 -0500
 | 
			
		||||
+++ libextractor-1.3/src/plugins/previewopus_extractor.c	2016-04-04 22:49:05.168105265 -0400
 | 
			
		||||
@@ -296,7 +296,7 @@
 | 
			
		||||
 /** Initialize one audio frame for reading from the input file */
 | 
			
		||||
 static int init_input_frame(AVFrame **frame)
 | 
			
		||||
 {
 | 
			
		||||
-    if (!(*frame = avcodec_alloc_frame())) {
 | 
			
		||||
+    if (!(*frame = av_frame_alloc())) {
 | 
			
		||||
  #if DEBUG
 | 
			
		||||
         fprintf(stderr, "Could not allocate input frame\n");
 | 
			
		||||
 #endif
 | 
			
		||||
@@ -655,7 +655,7 @@
 | 
			
		||||
         av_freep(&converted_input_samples[0]);
 | 
			
		||||
         free(converted_input_samples);
 | 
			
		||||
     }
 | 
			
		||||
-    avcodec_free_frame(&input_frame);
 | 
			
		||||
+    av_frame_free(&input_frame);
 | 
			
		||||
 
 | 
			
		||||
     return ret;
 | 
			
		||||
 }
 | 
			
		||||
@@ -671,7 +671,7 @@
 | 
			
		||||
     int error;
 | 
			
		||||
 
 | 
			
		||||
     /** Create a new frame to store the audio samples. */
 | 
			
		||||
-    if (!(*frame = avcodec_alloc_frame())) {
 | 
			
		||||
+    if (!(*frame = av_frame_alloc())) {
 | 
			
		||||
         #if DEBUG
 | 
			
		||||
 		fprintf(stderr, "Could not allocate output frame\n");
 | 
			
		||||
 		#endif
 | 
			
		||||
@@ -702,7 +702,7 @@
 | 
			
		||||
         #if DEBUG
 | 
			
		||||
 		fprintf(stderr, "Could allocate output frame samples (error '%s')\n", get_error_text(error));
 | 
			
		||||
 		#endif
 | 
			
		||||
-        avcodec_free_frame(frame);
 | 
			
		||||
+        av_frame_free(frame);
 | 
			
		||||
         return error;
 | 
			
		||||
     }
 | 
			
		||||
 
 | 
			
		||||
@@ -783,17 +783,17 @@
 | 
			
		||||
         #if DEBUG
 | 
			
		||||
 		fprintf(stderr, "Could not read data from FIFO\n");
 | 
			
		||||
 		#endif
 | 
			
		||||
-        avcodec_free_frame(&output_frame);
 | 
			
		||||
+        av_frame_free(&output_frame);
 | 
			
		||||
         return AVERROR_EXIT;
 | 
			
		||||
     }
 | 
			
		||||
 
 | 
			
		||||
     /** Encode one frame worth of audio samples. */
 | 
			
		||||
     if (encode_audio_frame(output_frame, output_format_context,
 | 
			
		||||
                            output_codec_context, &data_written)) {
 | 
			
		||||
-        avcodec_free_frame(&output_frame);
 | 
			
		||||
+        av_frame_free(&output_frame);
 | 
			
		||||
         return AVERROR_EXIT;
 | 
			
		||||
     }
 | 
			
		||||
-    avcodec_free_frame(&output_frame);
 | 
			
		||||
+    av_frame_free(&output_frame);
 | 
			
		||||
     return 0;
 | 
			
		||||
 }
 | 
			
		||||
 /** Write the trailer of the output file container. */
 | 
			
		||||
@@ -907,7 +907,7 @@
 | 
			
		||||
       return;
 | 
			
		||||
     }
 | 
			
		||||
 
 | 
			
		||||
-  if (NULL == (frame = avcodec_alloc_frame ()))
 | 
			
		||||
+  if (NULL == (frame = av_frame_alloc ()))
 | 
			
		||||
     {
 | 
			
		||||
 #if DEBUG
 | 
			
		||||
       fprintf (stderr,
 | 
			
		||||
		Reference in a new issue