forked from Imagelibrary/binutils-gdb
GNU gettext introduced this change[0] in version 0.19.8 to fix gettext detection with musl libc, since it does not define these internal symbols.
This allows binutils to build with musl gettext rather than falling back to the bundled version. [0] https://git.savannah.gnu.org/gitweb/?p=gettext.git;a=commit;h=b67399b4 2021-06-13 Michael Forney <mforney@mforney.org> config/ChangeLog: * gettext.m4 (AM_GNU_GETTEXT): Skip checks for the internal symbols _nl_msg_cat_cntr, _nl_domain_bindings, and _nl_expand_alias, if __GNU_GETTEXT_SUPPORTED_REVISION is defined. Backport of gettext serial 68 patch. intl/ChangeLog: * configure: Regenerate. --- Thi
This commit is contained in:
committed by
Nick Clifton
parent
987610f2d6
commit
90d3edf016
@@ -1,3 +1,10 @@
|
||||
2021-06-14 Michael Forney <mforney@mforney.org>
|
||||
|
||||
* gettext.m4 (AM_GNU_GETTEXT): Skip checks for the internal
|
||||
symbols _nl_msg_cat_cntr, _nl_domain_bindings, and
|
||||
_nl_expand_alias, if __GNU_GETTEXT_SUPPORTED_REVISION is defined.
|
||||
Backport of gettext serial 68 patch.
|
||||
|
||||
2021-05-18 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* acinclude.m4 (CYG_AC_PATH_SIM, CYG_AC_PATH_DEVO): Delete.
|
||||
|
||||
@@ -128,6 +128,13 @@ AC_DEFUN([AM_GNU_GETTEXT],
|
||||
|
||||
AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc,
|
||||
[AC_TRY_LINK([#include <libintl.h>
|
||||
#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
extern int _nl_msg_cat_cntr;
|
||||
extern int *_nl_domain_bindings;
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings)
|
||||
#else
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
|
||||
#endif
|
||||
]ifelse([$2], [need-formatstring-macros],
|
||||
[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
|
||||
@@ -135,10 +142,9 @@ AC_DEFUN([AM_GNU_GETTEXT],
|
||||
changequote(,)dnl
|
||||
typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
|
||||
changequote([,])dnl
|
||||
], [])[extern int _nl_msg_cat_cntr;
|
||||
extern int *_nl_domain_bindings;],
|
||||
], []),
|
||||
[bindtextdomain ("", "");
|
||||
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings],
|
||||
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + __GNU_GETTEXT_SYMBOL_EXPRESSION],
|
||||
gt_cv_func_gnugettext_libc=yes,
|
||||
gt_cv_func_gnugettext_libc=no)])
|
||||
|
||||
@@ -160,6 +166,17 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
|
||||
LIBS="$LIBS $LIBINTL"
|
||||
dnl Now see whether libintl exists and does not depend on libiconv.
|
||||
AC_TRY_LINK([#include <libintl.h>
|
||||
#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
extern int _nl_msg_cat_cntr;
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
const char *_nl_expand_alias ();
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias (0))
|
||||
#else
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
|
||||
#endif
|
||||
]ifelse([$2], [need-formatstring-macros],
|
||||
[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
|
||||
@@ -167,20 +184,26 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
|
||||
changequote(,)dnl
|
||||
typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
|
||||
changequote([,])dnl
|
||||
], [])[extern int _nl_msg_cat_cntr;
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
const char *_nl_expand_alias ();],
|
||||
], []),
|
||||
[bindtextdomain ("", "");
|
||||
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
|
||||
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + __GNU_GETTEXT_SYMBOL_EXPRESSION],
|
||||
gt_cv_func_gnugettext_libintl=yes,
|
||||
gt_cv_func_gnugettext_libintl=no)
|
||||
dnl Now see whether libintl exists and depends on libiconv.
|
||||
if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then
|
||||
LIBS="$LIBS $LIBICONV"
|
||||
AC_TRY_LINK([#include <libintl.h>
|
||||
#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
extern int _nl_msg_cat_cntr;
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
const char *_nl_expand_alias ();
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias (0))
|
||||
#else
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
|
||||
#endif
|
||||
]ifelse([$2], [need-formatstring-macros],
|
||||
[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
|
||||
@@ -188,14 +211,9 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
|
||||
changequote(,)dnl
|
||||
typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
|
||||
changequote([,])dnl
|
||||
], [])[extern int _nl_msg_cat_cntr;
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
const char *_nl_expand_alias ();],
|
||||
], []),
|
||||
[bindtextdomain ("", "");
|
||||
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
|
||||
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + __GNU_GETTEXT_SYMBOL_EXPRESSION],
|
||||
[LIBINTL="$LIBINTL $LIBICONV"
|
||||
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
|
||||
gt_cv_func_gnugettext_libintl=yes
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
2021-06-14 Michael Forney <mforney@mforney.org>
|
||||
|
||||
* configure: Regenerate.
|
||||
|
||||
2021-02-04 Nick Alcock <nick.alcock@oracle.com>
|
||||
|
||||
* configure.ac (LIBINTL): Transform into -L/-lintl form.
|
||||
|
||||
24
intl/configure
vendored
24
intl/configure
vendored
@@ -5981,13 +5981,19 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <libintl.h>
|
||||
#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
extern int _nl_msg_cat_cntr;
|
||||
extern int *_nl_domain_bindings;
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings)
|
||||
#else
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
|
||||
#endif
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
bindtextdomain ("", "");
|
||||
return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings
|
||||
return (int) gettext ("") + (int) ngettext ("", "", 0) + __GNU_GETTEXT_SYMBOL_EXPRESSION
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
@@ -6410,17 +6416,23 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <libintl.h>
|
||||
#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
extern int _nl_msg_cat_cntr;
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
const char *_nl_expand_alias ();
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias (0))
|
||||
#else
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
|
||||
#endif
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
bindtextdomain ("", "");
|
||||
return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
|
||||
return (int) gettext ("") + (int) ngettext ("", "", 0) + __GNU_GETTEXT_SYMBOL_EXPRESSION
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
@@ -6437,17 +6449,23 @@ rm -f core conftest.err conftest.$ac_objext \
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <libintl.h>
|
||||
#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
|
||||
extern int _nl_msg_cat_cntr;
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
const char *_nl_expand_alias ();
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias (0))
|
||||
#else
|
||||
#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
|
||||
#endif
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
bindtextdomain ("", "");
|
||||
return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
|
||||
return (int) gettext ("") + (int) ngettext ("", "", 0) + __GNU_GETTEXT_SYMBOL_EXPRESSION
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user