[vlc-devel] [PATCH] contrib: ffmpeg: Backport a patch to fix builds on android x86_64
Steve Lhomme
robux4 at ycbcr.xyz
Wed Oct 16 16:11:05 CEST 2019
Maybe we should bump the hash to something more recent ?
On 2019-10-16 14:51, Hugo Beauzée-Luyssen wrote:
> ---
> ...anf-do-not-use-long-double-functions.patch | 64 +++++++++++++++++++
> contrib/src/ffmpeg/rules.mak | 1 +
> 2 files changed, 65 insertions(+)
> create mode 100644 contrib/src/ffmpeg/0001-avutil-avsscanf-do-not-use-long-double-functions.patch
>
> diff --git a/contrib/src/ffmpeg/0001-avutil-avsscanf-do-not-use-long-double-functions.patch b/contrib/src/ffmpeg/0001-avutil-avsscanf-do-not-use-long-double-functions.patch
> new file mode 100644
> index 0000000000..e12fe2936b
> --- /dev/null
> +++ b/contrib/src/ffmpeg/0001-avutil-avsscanf-do-not-use-long-double-functions.patch
> @@ -0,0 +1,64 @@
> +From be60dc2145ba2c4e2c66213688b377367bdb9665 Mon Sep 17 00:00:00 2001
> +From: Paul B Mahol <onemda at gmail.com>
> +Date: Sat, 15 Dec 2018 09:58:28 +0100
> +Subject: [PATCH] avutil/avsscanf: do not use long double functions
> +
> +Not needed when only double is used.
> +---
> + libavutil/avsscanf.c | 12 ++++++------
> + 1 file changed, 6 insertions(+), 6 deletions(-)
> +
> +diff --git a/libavutil/avsscanf.c b/libavutil/avsscanf.c
> +index 360170c9a9..1c85412fd4 100644
> +--- a/libavutil/avsscanf.c
> ++++ b/libavutil/avsscanf.c
> +@@ -454,8 +454,8 @@ static double decfloat(FFFILE *f, int c, int bits, int emin, int sign, int pok)
> +
> + /* Calculate bias term to force rounding, move out lower bits */
> + if (bits < DBL_MANT_DIG) {
> +- bias = copysignl(scalbn(1, 2*DBL_MANT_DIG-bits-1), y);
> +- frac = fmodl(y, scalbn(1, DBL_MANT_DIG-bits));
> ++ bias = copysign(scalbn(1, 2*DBL_MANT_DIG-bits-1), y);
> ++ frac = fmod(y, scalbn(1, DBL_MANT_DIG-bits));
> + y -= frac;
> + y += bias;
> + }
> +@@ -473,7 +473,7 @@ static double decfloat(FFFILE *f, int c, int bits, int emin, int sign, int pok)
> + else
> + frac += 0.75*sign;
> + }
> +- if (DBL_MANT_DIG-bits >= 2 && !fmodl(frac, 1))
> ++ if (DBL_MANT_DIG-bits >= 2 && !fmod(frac, 1))
> + frac++;
> + }
> +
> +@@ -491,7 +491,7 @@ static double decfloat(FFFILE *f, int c, int bits, int emin, int sign, int pok)
> + errno = ERANGE;
> + }
> +
> +- return scalbnl(y, e2);
> ++ return scalbn(y, e2);
> + }
> +
> + static double hexfloat(FFFILE *f, int bits, int emin, int sign, int pok)
> +@@ -595,7 +595,7 @@ static double hexfloat(FFFILE *f, int bits, int emin, int sign, int pok)
> + }
> +
> + if (bits < DBL_MANT_DIG)
> +- bias = copysignl(scalbn(1, 32+DBL_MANT_DIG-bits-1), sign);
> ++ bias = copysign(scalbn(1, 32+DBL_MANT_DIG-bits-1), sign);
> +
> + if (bits<32 && y && !(x&1)) x++, y=0;
> +
> +@@ -604,7 +604,7 @@ static double hexfloat(FFFILE *f, int bits, int emin, int sign, int pok)
> +
> + if (!y) errno = ERANGE;
> +
> +- return scalbnl(y, e2);
> ++ return scalbn(y, e2);
> + }
> +
> + static double fffloatscan(FFFILE *f, int prec, int pok)
> +--
> +2.20.1
> +
> diff --git a/contrib/src/ffmpeg/rules.mak b/contrib/src/ffmpeg/rules.mak
> index 8179fc3c93..cfafb64699 100644
> --- a/contrib/src/ffmpeg/rules.mak
> +++ b/contrib/src/ffmpeg/rules.mak
> @@ -247,6 +247,7 @@ ifdef USE_FFMPEG
> $(APPLY) $(SRC)/ffmpeg/ffmpeg-mkv-overshoot.patch
> $(APPLY) $(SRC)/ffmpeg/0001-avcodec-hevcdec-set-the-SEI-parameters-early-on-the-.patch
> $(APPLY) $(SRC)/ffmpeg/0001-avcodec-h264_slice-set-the-SEI-parameters-early-on-t.patch
> + $(APPLY) $(SRC)/ffmpeg/0001-avutil-avsscanf-do-not-use-long-double-functions.patch
> endif
> ifdef USE_LIBAV
> $(APPLY) $(SRC)/ffmpeg/libav_gsm.patch
> --
> 2.20.1
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
>
More information about the vlc-devel
mailing list