From: Bernd Kuhls Date: Sat, 25 Aug 2018 07:31:17 +0000 (+0200) Subject: package/squeezelite: fix build with FFmpeg 4.0 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=45841bd443c0c360f8f205445f85bc607de1b219;p=buildroot.git package/squeezelite: fix build with FFmpeg 4.0 Git-formatted patch 0003. Signed-off-by: Bernd Kuhls Signed-off-by: Thomas Petazzoni --- diff --git a/package/squeezelite/0003-Replace-deprecated-FFmpeg-API.patch b/package/squeezelite/0003-Replace-deprecated-FFmpeg-API.patch new file mode 100644 index 0000000000..74d8f1be55 --- /dev/null +++ b/package/squeezelite/0003-Replace-deprecated-FFmpeg-API.patch @@ -0,0 +1,65 @@ +From cce6a0378ac319b87d2545d73f593d440bf686f5 Mon Sep 17 00:00:00 2001 +From: Andreas Cadhalpun +Date: Sat, 18 Aug 2018 13:25:23 +0200 +Subject: [PATCH] Replace deprecated FFmpeg API + +Fixes compilation with ffmpeg >= 2.9. + +Downloaded from Debian: +https://sources.debian.org/src/squeezelite/1.8-4.1/debian/patches/ffmpeg_2.9.patch/ + +Signed-off-by: Bernd Kuhls +--- + ffmpeg.c | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/ffmpeg.c b/ffmpeg.c +index 279f31d..bc9136c 100644 +--- a/ffmpeg.c ++++ b/ffmpeg.c +@@ -52,8 +52,8 @@ struct ff_s { + unsigned (* avcodec_version)(void); + AVCodec * (* avcodec_find_decoder)(int); + int attribute_align_arg (* avcodec_open2)(AVCodecContext *, const AVCodec *, AVDictionary **); +- AVFrame * (* avcodec_alloc_frame)(void); +- void (* avcodec_free_frame)(AVFrame **); ++ AVFrame * (* av_frame_alloc)(void); ++ void (* av_frame_free)(AVFrame **); + int attribute_align_arg (* avcodec_decode_audio4)(AVCodecContext *, AVFrame *, int *, const AVPacket *); + // ffmpeg symbols to be dynamically loaded from libavformat + unsigned (* avformat_version)(void); +@@ -324,7 +324,7 @@ static decode_state ff_decode(void) { + + AVCODEC(ff, open2, ff->codecC, codec, NULL); + +- ff->frame = AVCODEC(ff, alloc_frame); ++ ff->frame = AV(ff, frame_alloc); + + ff->avpkt = AV(ff, malloc, sizeof(AVPacket)); + if (ff->avpkt == NULL) { +@@ -520,9 +520,9 @@ static void _free_ff_data(void) { + if (ff->frame) { + // ffmpeg version dependant free function + #if !LINKALL +- ff->avcodec_free_frame ? AVCODEC(ff, free_frame, &ff->frame) : AV(ff, freep, &ff->frame); ++ ff->av_frame_free ? AV(ff, frame_free, &ff->frame) : AV(ff, freep, &ff->frame); + #elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,28,0) +- AVCODEC(ff, free_frame, &ff->frame); ++ AV(ff, frame_free, &ff->frame); + #else + AV(ff, freep, &ff->frame); + #endif +@@ -607,8 +607,8 @@ static bool load_ff() { + ff->avcodec_version = dlsym(handle_codec, "avcodec_version"); + ff->avcodec_find_decoder = dlsym(handle_codec, "avcodec_find_decoder"); + ff->avcodec_open2 = dlsym(handle_codec, "avcodec_open2"); +- ff->avcodec_alloc_frame = dlsym(handle_codec, "avcodec_alloc_frame"); +- ff->avcodec_free_frame = dlsym(handle_codec, "avcodec_free_frame"); ++ ff->av_frame_alloc = dlsym(handle_codec, "av_frame_alloc"); ++ ff->av_frame_free = dlsym(handle_codec, "av_frame_free"); + ff->avcodec_decode_audio4 = dlsym(handle_codec, "avcodec_decode_audio4"); + ff->av_init_packet = dlsym(handle_codec, "av_init_packet"); + ff->av_free_packet = dlsym(handle_codec, "av_free_packet"); +-- +2.18.0 + diff --git a/package/squeezelite/0003-ffmpeg_2_9.patch b/package/squeezelite/0003-ffmpeg_2_9.patch deleted file mode 100644 index f69b829b38..0000000000 --- a/package/squeezelite/0003-ffmpeg_2_9.patch +++ /dev/null @@ -1,57 +0,0 @@ -Fix compilation with ffmpeg >= 2.9 - -Downloaded from Debian: -https://sources.debian.net/src/squeezelite/1.8-3/debian/patches/ffmpeg_2.9.patch/ - -Signed-off-by: Bernd Kuhls - - -Description: Replace deprecated FFmpeg API -Author: Andreas Cadhalpun -Last-Update: <2015-11-02> - ---- squeezelite-1.8.orig/ffmpeg.c -+++ squeezelite-1.8/ffmpeg.c -@@ -52,8 +52,8 @@ struct ff_s { - unsigned (* avcodec_version)(void); - AVCodec * (* avcodec_find_decoder)(int); - int attribute_align_arg (* avcodec_open2)(AVCodecContext *, const AVCodec *, AVDictionary **); -- AVFrame * (* avcodec_alloc_frame)(void); -- void (* avcodec_free_frame)(AVFrame **); -+ AVFrame * (* av_frame_alloc)(void); -+ void (* av_frame_free)(AVFrame **); - int attribute_align_arg (* avcodec_decode_audio4)(AVCodecContext *, AVFrame *, int *, const AVPacket *); - // ffmpeg symbols to be dynamically loaded from libavformat - unsigned (* avformat_version)(void); -@@ -324,7 +324,7 @@ static decode_state ff_decode(void) { - - AVCODEC(ff, open2, ff->codecC, codec, NULL); - -- ff->frame = AVCODEC(ff, alloc_frame); -+ ff->frame = AV(ff, frame_alloc); - - ff->avpkt = AV(ff, malloc, sizeof(AVPacket)); - if (ff->avpkt == NULL) { -@@ -520,9 +520,9 @@ static void _free_ff_data(void) { - if (ff->frame) { - // ffmpeg version dependant free function - #if !LINKALL -- ff->avcodec_free_frame ? AVCODEC(ff, free_frame, &ff->frame) : AV(ff, freep, &ff->frame); -+ ff->av_frame_free ? AV(ff, frame_free, &ff->frame) : AV(ff, freep, &ff->frame); - #elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,28,0) -- AVCODEC(ff, free_frame, &ff->frame); -+ AV(ff, frame_free, &ff->frame); - #else - AV(ff, freep, &ff->frame); - #endif -@@ -607,8 +607,8 @@ static bool load_ff() { - ff->avcodec_version = dlsym(handle_codec, "avcodec_version"); - ff->avcodec_find_decoder = dlsym(handle_codec, "avcodec_find_decoder"); - ff->avcodec_open2 = dlsym(handle_codec, "avcodec_open2"); -- ff->avcodec_alloc_frame = dlsym(handle_codec, "avcodec_alloc_frame"); -- ff->avcodec_free_frame = dlsym(handle_codec, "avcodec_free_frame"); -+ ff->av_frame_alloc = dlsym(handle_codec, "av_frame_alloc"); -+ ff->av_frame_free = dlsym(handle_codec, "av_frame_free"); - ff->avcodec_decode_audio4 = dlsym(handle_codec, "avcodec_decode_audio4"); - ff->av_init_packet = dlsym(handle_codec, "av_init_packet"); - ff->av_free_packet = dlsym(handle_codec, "av_free_packet"); diff --git a/package/squeezelite/0004-Fix-FTBFS-with-FFmpeg-4.0.patch b/package/squeezelite/0004-Fix-FTBFS-with-FFmpeg-4.0.patch new file mode 100644 index 0000000000..25a5db3cae --- /dev/null +++ b/package/squeezelite/0004-Fix-FTBFS-with-FFmpeg-4.0.patch @@ -0,0 +1,31 @@ +From 4ad37284447e768d641768c7c8a69c4640c83181 Mon Sep 17 00:00:00 2001 +From: James Cowgill +Date: Sat, 18 Aug 2018 13:26:59 +0200 +Subject: [PATCH] Fix FTBFS with FFmpeg 4.0 + +Bug-Debian: https://bugs.debian.org/888335 + +Downloaded from Debian: +https://sources.debian.org/src/squeezelite/1.8-4.1/debian/patches/ffmpeg4.0.patch/ + +Signed-off-by: Bernd Kuhls +--- + ffmpeg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ffmpeg.c b/ffmpeg.c +index bc9136c..d51b08e 100644 +--- a/ffmpeg.c ++++ b/ffmpeg.c +@@ -264,7 +264,7 @@ static decode_state ff_decode(void) { + ff->mmsh_bytes_left = ff->mmsh_bytes_pad = ff->mmsh_packet_len = 0; + + if (!ff->readbuf) { +- ff->readbuf = AV(ff, malloc, READ_SIZE + FF_INPUT_BUFFER_PADDING_SIZE); ++ ff->readbuf = AV(ff, malloc, READ_SIZE + AV_INPUT_BUFFER_PADDING_SIZE); + } + + avio = AVIO(ff, alloc_context, ff->readbuf, READ_SIZE, 0, NULL, _read_data, NULL, NULL); +-- +2.18.0 +