summaryrefslogtreecommitdiff
path: root/m4/mbrtoc32.m4
Commit message (Collapse)AuthorAgeFilesLines
* c32is*: Ensure GNULIB_defined_mbstate_t is defined on AIX.Bruno Haible2023-04-091-2/+2
| | | | | | | | | | | | | | | | | | * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN): Define through AC_DEFUN_ONCE. * m4/mbrtoc32.m4 (gl_FUNC_MBRTOC32): Require it. * modules/c32isalnum (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4. (configure.ac): Require gl_MBSTATE_T_BROKEN. * modules/c32isalpha: Likewise. * modules/c32isblank: Likewise. * modules/c32iscntrl: Likewise. * modules/c32isdigit: Likewise. * modules/c32isgraph: Likewise. * modules/c32islower: Likewise. * modules/c32isprint: Likewise. * modules/c32ispunct: Likewise. * modules/c32isspace: Likewise. * modules/c32isupper: Likewise. * modules/c32isxdigit: Likewise.
* mbrtoc32: Add comments.Bruno Haible2023-04-091-1/+4
| | | | | | * lib/mbrtoc32.c: Add comment regarding AIX. * m4/mbrtoc32.m4 (gl_FUNC_MBRTOC32): Add comment regarding GNULIB_defined_mbstate_t.
* uchar: Work around Haiku bug.Bruno Haible2023-04-051-2/+19
| | | | | | | | | | | | * m4/uchar_h.m4 (gl_UCHAR_H, gl_TYPE_CHAR8_T, gl_TYPE_CHAR16_T, gl_TYPE_CHAR32_T): Before including <uchar.h>, on Haiku, first include <stdint.h>. * m4/c32rtomb.m4 (gl_FUNC_C32RTOMB): Likewise. * m4/mbrtoc32.m4 (gl_FUNC_MBRTOC32, gl_CHECK_FUNC_MBRTOC32, gl_MBRTOC32_EMPTY_INPUT, gl_MBRTOC32_C_LOCALE, gl_MBRTOC32_SANITYCHECK): Likewise. * lib/uchar.in.h: On Haiku, include <stdint.h> before the include_next. * doc/posix-headers/uchar.texi: Mention the Haiku bug.
* mbrtoc32 tests: Add comment.Bruno Haible2023-04-031-1/+6
| | | | | | | | * m4/mbrtowc.m4 (gl_MBRTOWC_C_LOCALE): Add comment. * m4/mbrtoc32.m4 (gl_MBRTOC32_C_LOCALE): Add comment. * tests/test-mbrtoc32.c: Add comment. * tests/test-mbrtoc32-5.sh: Use symmetric coding style. * doc/posix-functions/mbrtoc32.texi: Update.
* Fix warnings for functions introduced in Android API level 21.Bruno Haible2023-01-191-16/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * m4/_Exit.m4 (gl_FUNC__EXIT): Test for _Exit using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/c-strtod.m4 (gl_C_STRTOLD): Test for strtold_l using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/c32rtomb.m4 (gl_FUNC_C32RTOMB): Test for c32rtomb like gl_CHECK_FUNCS_ANDROID does. * m4/dprintf.m4 (gl_FUNC_DPRINTF): Test for dprintf using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise. * m4/dup3.m4 (gl_FUNC_DUP3): Test for dup3 using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/duplocale.m4 (gl_FUNC_DUPLOCALE): Test for duplocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/execvpe.m4 (gl_FUNC_EXECVPE): Test for execvpe using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/fts.m4 (gl_FUNC_FTS_CORE): Test for fts_open using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNC. * m4/getprogname.m4 (gl_FUNC_GETPROGNAME): Test for getprogname using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/intl-thread-locale.m4 (gt_FUNC_USELOCALE): Test for uselocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/iswblank.m4 (gl_FUNC_ISWBLANK): Test for iswblank using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/libtextstyle-optional.m4 (gl_LIBTEXTSTYLE_OPTIONAL): Test for tcdrain using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/linkat.m4 (gl_FUNC_LINKAT): Test for linkat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/localename.m4 (gl_LOCALENAME): Test for newlocale, duplocale, freelocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/mbrtoc32.m4 (gl_CHECK_FUNC_MBRTOC32): Test for mbrtoc32 like gl_CHECK_FUNCS_ANDROID does. * m4/mbsnrtowcs.m4 (gl_FUNC_MBSNRTOWCS): Test for mbsnrtowcs using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/mbtowc.m4 (gl_FUNC_MBTOWC): Test for mbtowc using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Test for mknodat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/mountlist.m4 (gl_MOUNTLIST): Test for setmntent, endmntent using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/posix_openpt.m4 (gl_FUNC_POSIX_OPENPT): Test for posix_openpt using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/pty.m4 (gl_FUNC_OPENPTY): Test for posix_openpt using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/random.m4 (gl_FUNC_RANDOM): Test for initstate, setstate using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/stpcpy.m4 (gl_FUNC_STPCPY): Test for stpcpy using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Test for stpncpy using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Test for symlinkat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/truncate.m4 (gl_FUNC_TRUNCATE): Test for truncate using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/tsearch.m4 (gl_FUNC_TSEARCH): Test for twalk using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/vdprintf.m4 (gl_FUNC_VDPRINTF): Test for vdprintf using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise. * m4/wcsnrtombs.m4 (gl_FUNC_WCSNRTOMBS): Test for wcsnrtombs using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/readlinkat.m4 (gl_FUNC_READLINKAT): Test for readlinkat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/fchmodat.m4 (gl_PREREQ_FCHMODAT): Likewise. * modules/careadlinkat (configure.ac): Likewise. * modules/ftoastr (configure.ac): Test for strtof using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/duplocale-tests (configure.ac): Test for duplocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/hard-locale-tests (configure.ac): Likewise. * modules/locale-tests (configure.ac): Test for newlocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/localename-tests (configure.ac): Likewise. * modules/tsearch-tests (configure.ac): Test for initstate using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/unistr/u8-stpcpy (configure.ac): Test for stpcpy using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/tcgetattr.m4: New file, extracted from m4/getpass.m4. * m4/getpass.m4 (gl_PREREQ_GETPASS): Remove code that tests for tcgetattr. Invoke gl_HAVE_TCGETATTR instead. * modules/getpass (Files): Add tcgetattr.m4. * modules/getpass-gnu (Files): Add tcgetattr.m4. * modules/term-style-control (Files): Add tcgetattr.m4. (configure.ac): Remove code that tests for tcgetattr. Invoke gl_HAVE_TCGETATTR instead.
* maint: run 'make update-copyright'Simon Josefsson2023-01-011-1/+1
|
* maint: run 'make update-copyright'Paul Eggert2022-01-011-1/+1
|
* doc: Update for FreeBSD 11.0, 12.0, 13.0.Bruno Haible2021-04-171-2/+2
| | | | | | | | | * doc/posix-headers/*.texi: Update. * doc/glibc-headers/*.texi: Update. * doc/posix-functions/*.texi: Likewise. * doc/pastposix-functions/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise. * m4/ptsname_r.m4 (gl_FUNC_PTSNAME_R): Update cross-compilation guess.
* Rename GNULIB_OVERRIDES_CHAR16_T, GNULIB_OVERRIDES_CHAR32_T.Bruno Haible2021-04-111-3/+3
| | | | | | | * GNULIBHEADERS_OVERRIDE_CHAR16_T: Renamed from GNULIB_OVERRIDES_CHAR16_T. * GNULIBHEADERS_OVERRIDE_CHAR32_T: Renamed from GNULIB_OVERRIDES_CHAR32_T.
* Add cross-compilation guesses for MidnightBSD.Bruno Haible2021-02-071-2/+2
| | | | | | | | | | | | | | | | * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): When cross-compiling, use the result from native compilation. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Likewise. * m4/mbrtoc32.m4 (gl_MBRTOC32_SANITYCHECK): Likewise. * m4/mprotect.m4 (gl_FUNC_MPROTECT_WORKS): Likewise. * m4/posix_spawn.m4 (gl_POSIX_SPAWN_SECURE): Likewise. * m4/printf.m4 (gl_PRINTF_SIZES_C99, gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE, gl_PRINTF_DIRECTIVE_F, gl_SNPRINTF_TRUNCATION_C99, gl_SNPRINTF_RETVAL_C99, gl_SNPRINTF_DIRECTIVE_N, gl_VSNPRINTF_ZEROSIZE_C99): Likewise. * m4/strfmon_l.m4 (gl_FUNC_STRFMON_L): Likewise. * m4/setlocale_null.m4 (gl_FUNC_SETLOCALE_NULL): Use predetermined result on MidnightBSD.
* maint: run 'make update-copyright'Paul Eggert2020-12-311-1/+1
|
* Remove support for broken <wchar.h> in BSD/OS and OSF/1.Bruno Haible2020-12-211-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lib/wchar.in.h: Don't include <stdio.h>, <time.h>. * lib/mbchar.h: Likewise. * lib/mbiter.h: Likewise. * lib/mbuiter.h: Likewise. * m4/stdint.m4 (gl_STDINT_INCLUDES): Likewise. * lib/mbfile.h: Don't include <time.h>. * lib/mbswidth.h: Update comment. * lib/stdint.in.h: Don't include <stddef.h>, <stdio.h>, <time.h> before <wchar.h>. * lib/wctype.in.h: Likewise. * m4/btowc.m4 (gl_FUNC_BTOWC): Simplify test programs. * m4/iswblank.m4 (gl_FUNC_ISWBLANK): Likewise. * m4/iswdigit.m4 (gl_FUNC_ISWDIGIT): Likewise. * m4/iswxdigit.m4 (gl_FUNC_ISWXDIGIT): Likewise. * m4/mbrlen.m4 (gl_FUNC_MBRLEN, gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL): Likewise. * m4/mbrtoc32.m4 (gl_MBRTOC32_SANITYCHECK): Likewise. * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK, gl_MBRTOWC_NULL_ARG1, gl_MBRTOWC_NULL_ARG2, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL, gl_MBRTOWC_STORES_INCOMPLETE, AC_FUNC_MBRTOWC): Likewise. * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Likewise. * m4/mbsnrtowcs.m4 (gl_MBSNRTOWCS_WORKS_IN_TRADITIONAL_LOCALE): Likewise. * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS, gl_MBSRTOWCS_WORKS): Likewise. * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise. * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise. * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Likewise. * m4/wchar_h.m4 (gl_WCHAR_H, gl_WCHAR_H_INLINE_OK): Likewise. * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. * m4/wcsdup.m4 (gl_FUNC_WCSDUP): Likewise. * m4/wcsnrtombs.m4 (gl_WCSNRTOMBS_WORKS_IN_TRADITIONAL_LOCALE): Likewise. * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS, gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL): Likewise. * m4/wcstok.m4 (gl_FUNC_WCSTOK): Likewise. * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise. * m4/wctype_h.m4 (gl_WCTYPE_H): Likewise. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise. * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise. * m4/wmemchr.m4 (gl_FUNC_WMEMCHR): Likewise. * m4/wmemcmp.m4 (gl_FUNC_WMEMCMP): Likewise. * m4/wmemcpy.m4 (gl_FUNC_WMEMCPY): Likewise. * m4/wmemmove.m4 (gl_FUNC_WMEMMOVE): Likewise. * m4/wmemset.m4 (gl_FUNC_WMEMSET): Likewise.
* uchar: Work around incorrect char16_t, char32_t types on Haiku 2020.Bruno Haible2020-05-091-3/+5
| | | | | | | | | | | | | | * lib/uchar.in.h (char16_t): Define as macro if GNULIB_OVERRIDES_CHAR16_T. (char32_t): Define as macro if GNULIB_OVERRIDES_CHAR32_T. * m4/uchar.m4 (gl_TYPE_CHAR16_T, gl_TYPE_CHAR32_T): New macros. (gl_UCHAR_H): Invoke them. (gl_UCHAR_H_DEFAULTS): Initialize GNULIB_OVERRIDES_CHAR16_T, GNULIB_OVERRIDES_CHAR32_T. * m4/mbrtoc32.m4 (gl_FUNC_MBRTOC32, gl_MBRTOC32_SANITYCHECK): Require gl_TYPE_CHAR32_T and test GNULIB_OVERRIDES_CHAR32_T. * modules/uchar (Makefile.am): Substitute GNULIB_OVERRIDES_CHAR16_T, GNULIB_OVERRIDES_CHAR32_T.
* mbrtoc32: Avoid compilation failure on Haiku.Bruno Haible2020-05-091-5/+24
| | | | | | | * m4/mbrtoc32.m4 (gl_CHECK_FUNC_MBRTOC32): New macro. (gl_FUNC_MBRTOC32, gl_MBRTOC32_SANITYCHECK): Use it instead of AC_CHECK_FUNCS_ONCE. * doc/posix-functions/mbrtoc32.texi: Mention the Haiku problem.
* mbrtoc32: Add note about FreeBSD 12.Bruno Haible2020-01-211-7/+11
| | | | | | * m4/mbrtoc32.m4 (gl_MBRTOC32_SANITYCHECK): Guess no also on FreeBSD. * doc/posix-functions/mbrtoc32.texi: Mention that FreeBSD 12 is also affected.
* mbrtoc32: Use the system's mbrtoc32 if it exists and basically works.Bruno Haible2020-01-091-1/+101
| | | | | | | | | | | | | | | | | | | | | | | | * m4/mbrtoc32.m4 (gl_MBRTOC32_SANITYCHECK): New macro. (gl_FUNC_MBRTOC32): Require it. Set REPLACE_MBRTOC32 if mbrtoc32 exists but is not working. * lib/mbrtoc32.c: Include hard-locale.h, <locale.h>. (mbrtoc32): If the char32_t encoding and the wchar_t encoding may differ, use the system's mbrtoc32, adding workarounds. * modules/mbrtoc32 (Depends-on): Add hard-locale. * doc/posix-functions/mbrtoc32.texi: Mention the Solaris and native Windows problem. * lib/btoc32.c: Include <stdio.h>, <string.h>. (btoc32): If the char32_t encoding and the wchar_t encoding may differ, use mbrtoc32, not btowc. * modules/btoc32 (Depends-on): Add mbrtoc32. * lib/mbsrtoc32s.c (mbsrtoc32s): If the char32_t encoding and the wchar_t encoding may differ, use mbrtoc32, not mbsrtowcs. * modules/mbsrtoc32s (Depends-on): Update conditions. (configure.ac): Compile mbsrtoc32s-state.c unconditionally. * lib/mbsnrtoc32s.c (mbsnrtoc32s): If the char32_t encoding and the wchar_t encoding may differ, use mbrtoc32, not mbsnrtowcs. * modules/mbsnrtoc32s (Depends-on): Update conditions. (configure.ac): Compile mbsrtoc32s-state.c unconditionally.
* mbrtoc32: New module.Bruno Haible2020-01-041-0/+117
* lib/uchar.in.h (mbrtoc32): New declaration. * lib/mbrtoc32.c: New file, based on lib/mbrtowc.c. * m4/mbrtoc32.m4: New file, based on m4/mbrtowc.m4. * m4/uchar.m4 (gl_UCHAR_H): Test whether mbrtoc32 is declared. (gl_UCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOC32, HAVE_MBRTOC32, REPLACE_MBRTOC32. * modules/uchar (Makefile.am): Substitute GNULIB_MBRTOC32, HAVE_MBRTOC32, REPLACE_MBRTOC32. * modules/mbrtoc32: New file, based on modules/mbrtowc. * tests/test-uchar-c++.cc (mbrtoc32): Verify the signature. * modules/uchar-c++-tests (Makefile.am): Link test-uchar-c++ with $(LIB_MBRTOWC). * doc/posix-functions/mbrtoc32.texi: Document the new module. * doc/posix-functions/mbrtowc.texi: Mention the new module.