m4: Patch to work on Android 10

The old version of gnulib that m4 uses tries to use the %n printf
modifier which aborts the process on Android 10 onwards.

Fixes #4381 (thanks easyaspi314).
This commit is contained in:
Fredrik Fornwall 2019-10-02 21:52:02 +02:00
parent 68b1f57179
commit bbf6c55514
2 changed files with 13 additions and 1 deletions

View File

@ -2,7 +2,7 @@ TERMUX_PKG_HOMEPAGE=https://www.gnu.org/software/m4/m4.html
TERMUX_PKG_DESCRIPTION="Traditional Unix macro processor"
TERMUX_PKG_LICENSE="GPL-3.0"
TERMUX_PKG_VERSION=1.4.18
TERMUX_PKG_REVISION=2
TERMUX_PKG_REVISION=3
TERMUX_PKG_SRCURL=https://mirrors.kernel.org/gnu/m4/m4-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_SHA256=f2c1e86ca0a404ff281631bdc8377638992744b175afb806e25871a24a934e07
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="

View File

@ -0,0 +1,12 @@
diff -u -r ../m4-1.4.18/lib/vasnprintf.c ./lib/vasnprintf.c
--- ../m4-1.4.18/lib/vasnprintf.c 2016-12-31 13:54:42.000000000 +0000
+++ ./lib/vasnprintf.c 2019-10-02 19:32:13.576211922 +0000
@@ -4858,7 +4858,7 @@
#endif
*fbp = dp->conversion;
#if USE_SNPRINTF
-# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
+# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) || defined(__ANDROID__))
fbp[1] = '%';
fbp[2] = 'n';
fbp[3] = '\0';