From 277273f8a652d7ffbb483590caebe4f509575ce2 Mon Sep 17 00:00:00 2001 From: wl Date: Tue, 10 Jan 2006 09:43:43 +0000 Subject: Work around unportability of nl_langinfo(CODESET). * m4/glibc21.m4: New file, from gnulib. * Makefile.sub (M4MACROS): Add m4/glibc21.m4. * configure.ac: Also test for stddef.h, and invoke jm_GLIBC21. * Makefile.in (HOST, GLIBC21): New variables. (MDEFINES): Pass them to subdirectories. * src/include/relocate.h (relocatep): Define with C linkage. * src/include/localcharset.h: New file, from gnulib. * src/libs/libgroff/localcharset.c: New file, from gnulib with a modification for relocate(). * src/libs/libgroff/config.charset: New file, from gnulib. * src/libs/libgroff/ref-add.sin: New file, from gnulib. * src/libs/libgroff/ref-del.sin: New file, from gnulib. * src/libs/libgroff/Makefile.sub (EXTRA_CFLAGS): Also define LIBDIR. (OBJS): Add localcharset.o. (CSRCS): Add localcharset.c. (all): Add dependencies to charset.alias, ref-add.sed, ref-del.sed. (charset.alias): New rule. (PACKAGE): New variable. (ref-add.sed, ref-del.sed): New rules. (MKINSTALLDIRS): New variable. (install_data): Depend on install_charset_data. (install_charset_data): New rule for creating or updating charset.alias. (uninstall_sub): Depend on uninstall_charset_data. (uninstall_charset_data): New rule for uninstalling or updating charset.alias. * src/preproc/preconv/preconv.cpp: Include localcharset.h instead of . (main): Initialize default_encoding from locale_charset() instead of nl_langinfo(CODESET). * aclocal.m4, configure, src/include/config.hin: Regenerated. --- m4/glibc21.m4 | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 m4/glibc21.m4 (limited to 'm4') diff --git a/m4/glibc21.m4 b/m4/glibc21.m4 new file mode 100644 index 00000000..9c9f3db3 --- /dev/null +++ b/m4/glibc21.m4 @@ -0,0 +1,32 @@ +# glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40) +dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. +dnl This file is free software, distributed under the terms of the GNU +dnl General Public License. As a special exception to the GNU General +dnl Public License, this file may be distributed as part of a program +dnl that contains a configuration script generated by Autoconf, under +dnl the same distribution terms as the rest of that program. + +# Test for the GNU C Library, version 2.1 or newer. +# From Bruno Haible. + +AC_DEFUN([jm_GLIBC21], + [ + AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, + ac_cv_gnu_library_2_1, + [AC_EGREP_CPP([Lucky GNU user], + [ +#include +#ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) + Lucky GNU user + #endif +#endif + ], + ac_cv_gnu_library_2_1=yes, + ac_cv_gnu_library_2_1=no) + ] + ) + AC_SUBST(GLIBC21) + GLIBC21="$ac_cv_gnu_library_2_1" + ] +) -- cgit v1.2.1