Let Gnulib deal with MB_CUR_MAX

Recent Gnulib should work around the Android NDK 16
MB_CUR_MAX bug, so Emacs no longer needs to worry about it.
* configure.ac (gl_STDLIB_H):
Remove, to stop overriding Gnulib.
* configure.ac (__ctype_get_mb_cur_max)
(emacs_cv_broken_mb_cur_max, REPLACEMENT_MB_CUR_MAX):
* src/conf_post.h (MB_CUR_MAX):
Remove, as Gnulib does this now.
This commit is contained in:
Paul Eggert 2024-12-23 14:03:06 -08:00
parent cf5e58a14d
commit a51642ba5f
2 changed files with 0 additions and 43 deletions

View file

@ -1615,10 +1615,6 @@ ac_func_list=$funcs
AC_DEFUN([gt_TYPE_WINT_T],
[GNULIBHEADERS_OVERRIDE_WINT_T=0
AC_SUBST([GNULIBHEADERS_OVERRIDE_WINT_T])])
# Emacs does not need precise checks for the Solaris 10 MB_CUR_MAX bug.
AC_DEFUN_ONCE([gl_STDLIB_H],
[AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
gl_NEXT_HEADERS([stdlib.h])])
# Emacs does not need to check for off64_t.
AC_DEFUN([gl_TYPE_OFF64_T],
[HAVE_OFF64_T=1
@ -7646,35 +7642,6 @@ fi
AC_SUBST([WINDOW_SYSTEM_OBJ])
# Some systems have MB_CUR_MAX defined to a call to
# __ctype_get_mb_cur_max, but do not have __ctype_get_mb_cur_max in
# libc. Check for that situation and define MB_CUR_MAX to something
# sane.
AC_CHECK_FUNC([__ctype_get_mb_cur_max])
AC_CACHE_CHECK([whether MB_CUR_MAX is defined to function that won't link],
[emacs_cv_broken_mb_cur_max],
[AC_EGREP_CPP(__ctype_get_mb_cur_max, [
#include <stdlib.h>
#ifndef MB_CUR_MAX
#define MB_CUR_MAX -1
#endif
static int foo = MB_CUR_MAX;
], [AS_IF([test "$ac_cv_func___ctype_get_mb_cur_max" = "yes"],
[emacs_cv_broken_mb_cur_max=no],
[emacs_cv_broken_mb_cur_max=yes])],
[emacs_cv_broken_mb_cur_max=no])])
AS_IF([test "$emacs_cv_broken_mb_cur_max" = "yes"],
# Define this to 4, which is right for Android.
[AS_CASE([$opsys], [android],
[AC_DEFINE([REPLACEMENT_MB_CUR_MAX], [4],
[Define to MB_CUR_MAX if stdlib.h is broken.])],
[AC_MSG_ERROR([MB_CUR_MAX does not work on your system.
Please modify configure.ac to set an appropriate value, then
send your change to bug-gnu-emacs@gnu.org])])])
AH_TOP([/* GNU Emacs site configuration template file.
Copyright (C) 1988-2024 Free Software Foundation, Inc.

View file

@ -462,16 +462,6 @@ extern int emacs_setenv_TZ (char const *);
# define UNINIT /* empty */
#endif
/* MB_CUR_MAX is often broken on systems which copy-paste LLVM
headers, so replace its definition with a working one if
necessary. */
#ifdef REPLACEMENT_MB_CUR_MAX
#include <stdlib.h>
#undef MB_CUR_MAX
#define MB_CUR_MAX REPLACEMENT_MB_CUR_MAX
#endif /* REPLACEMENT_MB_CUR_MAX */
/* Emacs does not need glibc strftime behavior for AM and PM
indicators. */
#define REQUIRE_GNUISH_STRFTIME_AM_PM false