m4/realloc.m4


Log

Author Commit Date CI Message
Pádraig Brady 7b089321 2025-01-01T09:24:36 maint: run 'make update-copyright'
Paul Eggert 7fb2347f 2024-11-05T21:23:40 realloc-posix: mention _LINUX_SOURCE_COMPAT * m4/realloc.m4 (gl_FUNC_REALLOC_0_NONNULL): Add comment about _LINUX_SOURCE_COMPAT.
Paul Eggert c2df016c 2024-11-04T18:16:50 realloc-posix: tune for glibc-like For glibc, implementing realloc (p, s) as realloc (p, s?s:1) suffices, and it’s probably better to do it inline to aid static checking. * lib/realloc.c (rpl_realloc) [_GL_INLINE_RPL_REALLOC]: Remove, replacing with inline function in stdlib.h. * lib/stdlib.in.h (_GL_INLINE_RPL_REALLOC): New macro. (rpl_realloc): Define as inline if _GL_INLINE_RPL_REALLOC. * m4/realloc.m4 (gl_FUNC_REALLOC_0_NONNULL): Set REPLACE_REALLOC_FOR_REALLOC_POSIX=2 instead of 1, if it’s close enough to glibc that the inline optimization is valid.
Paul Eggert d884e6fc 2024-11-03T22:41:41 realloc-posix: realloc (..., 0) now returns nonnull * lib/realloc.c (rpl_realloc): Simplify and tune by using HAVE_REALLOC_0_NONNULL and HAVE_MALLOC_PTRDIFF, and by having just one call to realloc instead of two. * lib/reallocarray.c (reallocarray): Simplify and tune by delegating the zero case to the revised realloc. * m4/eealloc.m4 (_AC_FUNC_REALLOC_IF): Since only eealloc uses this macro now, move its definition here ... * m4/realloc.m4: ... from here. (gl_FUNC_REALLOC_0_NONNULL): Also check that realloc (p, 0) returns nonnull. Require gl_FUNC_REALLOC_POSIX. Define HAVE_REALLOC_0_NONNULL. * m4/reallocarray.m4 (gl_FUNC_REALLOCARRAY): Also replace reallocarray if it returns a null pointer for size zero. * modules/eealloc (Files): Remove m4/realloc.m4. * modules/realloc-posix (Depends-on): Add extensions-aix. * modules/reallocarray (Files): Add m4/realloc.m4.
Bruno Haible 6cb29d22 2024-11-01T13:26:40 realloc-posix: Fix test failure on AIX (regression 2024-10-27). * m4/realloc.m4 (gl_FUNC_REALLOC_0_NONNULL): New macro. * modules/realloc-posix (configure.ac): Invoke it.
Paul Eggert c7f29c82 2024-10-31T19:22:22 malloc, realloc: fix $3 bug Problem reported by Bruno Haible in: https://lists.gnu.org/r/bug-gnulib/2024-10/msg00284.html * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Sync from bleeding-edge Autoconf again.
Bruno Haible cb1e736c 2024-10-31T22:11:22 malloc-posix, realloc-posix: Fix incorrect expansion of AC_FUNC_MALLOC. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Handle the case of a missing third argument. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Likewise.
Paul Eggert 98b35580 2024-10-29T22:01:44 malloc, realloc: sync from Autoconf master * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Sync from bleeding-edge Autoconf. All uses changed.
Bruno Haible 6659e016 2024-10-28T00:18:35 realloc-gnu: Replace module with an alias to realloc-posix. * tests/test-realloc-posix.c: Renamed from tests/test-realloc-gnu.c. Add more tests, not yet activated. * modules/realloc-posix-tests: Renamed from modules/realloc-gnu-tests. Test test-realloc-posix instead of test-realloc-gnu. * modules/realloc-gnu: Mark as a deprecated alias of 'realloc-posix'. * lib/stdlib.in.h (realloc): Ignore GNULIB_REALLOC_GNU. * modules/stdlib (Makefile.am): Don't substitute GNULIB_REALLOC_GNU, REPLACE_REALLOC_FOR_REALLOC_GNU. * m4/stdlib_h.m4 (gl_STDLIB_H_REQUIRE_DEFAULTS): Don't initialize GNULIB_REALLOC_GNU. (gl_STDLIB_H_DEFAULTS): Don't initialize REPLACE_REALLOC_FOR_REALLOC_GNU. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Remove macro. * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): Update comment. * doc/posix-functions/realloc.texi: Remove description of module 'realloc-gnu'. * MODULES.html.sh (Memory management functions <stdlib.h>): Remove realloc-gnu. Add realloc-posix.
Bruno Haible 12cd6eca 2024-10-21T15:29:40 realloc: Optionally check for undefined behaviour. * m4/realloc.m4 (gl_FUNC_REALLOC_SANITIZED): New macro. (gl_FUNC_REALLOC_POSIX): Require it. If a sanitized realloc is requested, define NEED_SANITIZED_REALLOC and compile realloc.c. (gl_FUNC_REALLOC_GNU): Require it. If a sanitized realloc is requested, don't compile realloc.c a second time. * lib/realloc.c (rpl_realloc): If NEED_SANITIZED_REALLOC is defined, abort in the case of undefined behaviour.
Bruno Haible b1f65faa 2024-10-17T21:52:41 Use a warranty disclaimer in all-permissive license notices. * etc/license-notices/unlimited: Add a short warranty disclaimer sentence. * m4/*.m4: Update. * build-aux/prefix-gnulib-mk: Likewise. * HACKING: Likewise.
Bruno Haible 48738f52 2024-08-02T10:57:47 Allow use of --avoid=extensions-aix. * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Don't require gl_USE_AIX_EXTENSIONS explicitly. * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): Likewise. * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): Likewise. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Likewise. * m4/scandir.m4 (gl_FUNC_SCANDIR): Likewise.
Bruno Haible 34bd9be1 2024-08-01T13:52:30 Ensure consistent effects of _LINUX_SOURCE_COMPAT. * modules/extensions (configure.ac-early): New section. * m4/extensions-aix.m4: New file. * modules/extensions-aix: New file. * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Require gl_USE_AIX_EXTENSIONS, instead of defining _LINUX_SOURCE_COMPAT at this stage. * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): Likewise. * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): Likewise. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Likewise. * m4/scandir.m4 (gl_FUNC_SCANDIR): Likewise. * modules/errno (Depends-on): Add extensions-aix. * modules/malloc-gnu (Depends-on): Likewise. * modules/calloc-gnu (Depends-on): Likewise. * modules/realloc-gnu (Depends-on): Likewise. * modules/scandir (Depends-on): Likewise.
Paul Eggert 3498a703 2024-07-31T17:10:56 errno: make EEXIST != ENOTEMPTY on AIX Also, improve errno tests. * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): * m4/scandir.m4 (gl_FUNC_SCANDIR): Define _LINUX_SOURCE_COMPAT, as this can sometimes help on AIX. * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Define _LINUX_SOURCE_COMPAT, to make EEXIST != ENOTEMPTY. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Define _LINUX_SOURCE_COMPAT, in case someone else does. * modules/errno-tests (Depends-on): Add assert-h, c99. * tests/test-errno.c (e1, ..., e131): Remove, replacing with ... (CHECK_POSIX_ERRNOS, POSITIVE_INTEGER_CONSTANT_EXPRESSION) (INDEXED_BY_ERRNO, ERRNO_COUNT): These new macros. Check that all errno values are positive integer constant expressions. Check that they are all distinct, except perhaps for EWOULDBLOCK == EAGAIN and ENOTSUP == EOPNOTSUPP. Also check ESOCKTNOSUPPORT, added in POSIX.1-2024. Also, check that errno values are distinct except when POSIX says they needn’t be distinct, since POSIX.1-2024 gives license to GNU/Linux’s non-distinct values.
Bruno Haible b744688d 2024-04-04T11:16:15 Make the serial numbers in *.m4 files effective. Reported by Sam James in <https://lists.gnu.org/archive/html/bug-gnulib/2024-04/msg00051.html>. * m4/*.m4: Apply sed -e '1s|^# \(.*[.]m4\) serial |# \1\n# serial |'.
Simon Josefsson 5b92dd0a 2024-01-01T10:31:48 maint: run 'make update-copyright'
Bruno Haible 3a76977f 2023-11-18T00:18:37 realloc-gnu: Fix wrong configure test result with optimizing ibm-clang. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Use 'volatile', to defeat an ibm-clang optimization. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Likewise.
Bruno Haible cefb3e21 2023-08-17T15:04:43 Recognize the *-*-windows* config triplets introduced on 2023-06-26. * m4/*.m4: Treat windows* as equivalent to mingw*. * modules/*: Likewise.
Bruno Haible 86a9695e 2023-02-17T16:24:34 Improve cross-compilation from midipix. Reported by Ørjan Malde <red@foxi.me> at <https://lists.gnu.org/archive/html/bug-gnulib/2023-02/msg00131.html>. Since midipix consists of musl libc based on an emulation of Linux system calls, for pure libc functionality it can be treated like musl libc. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Treat midipix like systems with musl libc. * m4/cbrtl.m4 (gl_FUNC_CBRTL): Likewise. * m4/ceil.m4 (gl_FUNC_CEIL): Likewise. * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise. * m4/ceill.m4 (gl_FUNC_CEILL): Likewise. * m4/exp2l.m4 (gl_FUNC_EXP2L): Likewise. * m4/expl.m4 (gl_FUNC_EXPL): Likewise. * m4/expm1.m4 (gl_FUNC_EXPM1): Likewise. * m4/expm1f.m4 (gl_FUNC_EXPM1F): Likewise. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Likewise. * m4/fclose.m4 (gl_FUNC_FCLOSE_STDIN): Likewise. * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Likewise. * m4/ffsll.m4 (gl_FUNC_FFSLL): Likewise. * m4/floor.m4 (gl_FUNC_FLOOR): Likewise. * m4/floorf.m4 (gl_FUNC_FLOORF): Likewise. * m4/fmod.m4 (gl_FUNC_FMOD): Likewise. * m4/fmodf.m4 (gl_FUNC_FMODF): Likewise. * m4/fmodl.m4 (gl_FUNC_FMODL): Likewise. * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Likewise. * m4/fopen.m4 (gl_FUNC_FOPEN_GNU): Likewise. * m4/fpurge.m4 (gl_FUNC_FPURGE): Likewise. * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise. * m4/getline.m4 (gl_FUNC_GETLINE): Likewise. * m4/hypot.m4 (gl_FUNC_HYPOT): Likewise. * m4/hypotf.m4 (gl_FUNC_HYPOTF): Likewise. * m4/hypotl.m4 (gl_FUNC_HYPOTL): Likewise. * m4/iconv_open-utf.m4 (gl_FUNC_ICONV_OPEN_UTF_SUPPORT): Likewise. * m4/log.m4 (gl_FUNC_LOG): Likewise. * m4/log10.m4 (gl_FUNC_LOG10): Likewise. * m4/log10f.m4 (gl_FUNC_LOG10F): Likewise. * m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): Likewise. * m4/log1p.m4 (gl_FUNC_LOG1P): Likewise. * m4/log1pf.m4 (gl_FUNC_LOG1PF): Likewise. * m4/log1pl.m4 (gl_FUNC_LOG1PL, gl_FUNC_LOG1PL_WORKS): Likewise. * m4/log2.m4 (gl_FUNC_LOG2): Likewise. * m4/log2f.m4 (gl_FUNC_LOG2F): Likewise. * m4/log2l.m4 (gl_FUNC_LOG2L_WORKS): Likewise. * m4/logf.m4 (gl_FUNC_LOGF): Likewise. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): Likewise. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Likewise. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Likewise. * m4/modf.m4 (gl_FUNC_MODF): Likewise. * m4/modff.m4 (gl_FUNC_MODFF): Likewise. * m4/modfl.m4 (gl_FUNC_MODFL): Likewise. * m4/musl.m4 (gl_MUSL_LIBC): Likewise. * m4/perror.m4 (gl_FUNC_PERROR): Likewise. * m4/posix_spawn.m4 (gl_POSIX_SPAWN_SECURE, gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE, gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2, gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN): Likewise. * m4/printf.m4 (gl_PRINTF_SIZES_C99, gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE, gl_PRINTF_DIRECTIVE_A, gl_PRINTF_DIRECTIVE_F, gl_PRINTF_FLAG_ZERO, gl_SNPRINTF_TRUNCATION_C99, gl_SNPRINTF_RETVAL_C99, gl_SNPRINTF_DIRECTIVE_N, gl_VSNPRINTF_ZEROSIZE_C99): Likewise. * m4/pthread_rwlock_rdlock.m4 (gl_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER): Likewise. * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Likewise. * m4/remainder.m4 (gl_FUNC_REMAINDER): Likewise. * m4/remainderf.m4 (gl_FUNC_REMAINDERF): Likewise. * m4/remainderl.m4 (gl_FUNC_REMAINDERL, gl_FUNC_REMAINDERL_WORKS): Likewise. * m4/rintl.m4 (gl_FUNC_RINTL): Likewise. * m4/round.m4 (gl_FUNC_ROUND): Likewise. * m4/roundf.m4 (gl_FUNC_ROUNDF): Likewise. * m4/roundl.m4 (gl_FUNC_ROUNDL): Likewise. * m4/setenv.m4 (gl_FUNC_SETENV): Likewise. * m4/setlocale_null.m4 (gl_FUNC_SETLOCALE_NULL): Likewise. * m4/signbit.m4 (gl_SIGNBIT): Likewise. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise. * m4/strerror.m4 (gl_FUNC_STRERROR, gl_FUNC_STRERROR_0): Likewise. * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise. * m4/strtold.m4 (gl_FUNC_STRTOLD): Likewise. * m4/trunc.m4 (gl_FUNC_TRUNC): Likewise. * m4/truncf.m4 (gl_FUNC_TRUNCF): Likewise. * m4/truncl.m4 (gl_FUNC_TRUNCL): Likewise. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Likewise. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
Simon Josefsson 32a72f45 2023-01-01T01:14:21 maint: run 'make update-copyright'
Bruno Haible 918e0695 2022-01-03T15:31:53 realloc-gnu: Allow use as dependency from test modules. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Set REPLACE_REALLOC_FOR_REALLOC_GNU instead of REPLACE_REALLOC. (gl_FUNC_REALLOC_POSIX): Set REPLACE_REALLOC_FOR_REALLOC_POSIX instead of REPLACE_REALLOC. * m4/stdlib_h.m4 (gl_STDLIB_H_REQUIRE_DEFAULTS): Initialize the realloc-gnu module indicator. (gl_STDLIB_H_DEFAULTS): Initialize REPLACE_REALLOC_FOR_REALLOC_GNU, REPLACE_REALLOC_FOR_REALLOC_POSIX, not REPLACE_REALLOC. * modules/stdlib (Makefile.am): Substitute GNULIB_REALLOC_GNU, REPLACE_REALLOC_FOR_REALLOC_GNU, REPLACE_REALLOC_FOR_REALLOC_POSIX, not REPLACE_REALLOC. * modules/realloc-posix (Depends-on, configure.ac): Test REPLACE_REALLOC_FOR_REALLOC_POSIX instead of REPLACE_REALLOC. * modules/realloc-gnu (Comment): Remove section. (Depends-on): Add free-posix, malloc-gnu, xalloc-oversized. (configure.ac): Test REPLACE_REALLOC_FOR_REALLOC_GNU instead of REPLACE_REALLOC. Set a module indicator. * lib/stdlib.in.h (realloc): Test REPLACE_REALLOC_FOR_REALLOC_POSIX, REPLACE_REALLOC_FOR_REALLOC_GNU, and the respective module indicators instead of just REPLACE_REALLOC.
Bruno Haible 5427cd71 2022-01-03T14:49:04 malloc-gnu: Allow use as dependency from test modules. * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): Set REPLACE_MALLOC_FOR_MALLOC_GNU instead of REPLACE_MALLOC. (gl_FUNC_MALLOC_PTRDIFF, gl_FUNC_MALLOC_POSIX): Set REPLACE_MALLOC_FOR_MALLOC_POSIX instead of REPLACE_MALLOC. * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Test REPLACE_MALLOC_FOR_MALLOC_POSIX instead of REPLACE_MALLOC. * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise. * m4/stdlib_h.m4 (gl_STDLIB_H_REQUIRE_DEFAULTS): Initialize the malloc-gnu module indicator. (gl_STDLIB_H_DEFAULTS): Initialize REPLACE_MALLOC_FOR_MALLOC_GNU, REPLACE_MALLOC_FOR_MALLOC_POSIX, not REPLACE_MALLOC. * modules/stdlib (Makefile.am): Substitute GNULIB_MALLOC_GNU, REPLACE_MALLOC_FOR_MALLOC_GNU, REPLACE_MALLOC_FOR_MALLOC_POSIX, not REPLACE_MALLOC. * modules/malloc-posix (Depends-on, configure.ac): Test REPLACE_MALLOC_FOR_MALLOC_POSIX instead of REPLACE_MALLOC. * modules/malloc-gnu (Comment): Remove section. (Depends-on): Add xalloc-oversized. (configure.ac): Test REPLACE_MALLOC_FOR_MALLOC_GNU instead of REPLACE_MALLOC. Set a module indicator. * lib/stdlib.in.h (malloc): Test REPLACE_MALLOC_FOR_MALLOC_POSIX, REPLACE_MALLOC_FOR_MALLOC_GNU, and the respective module indicators instead of just REPLACE_MALLOC.
Paul Eggert eec12c00 2022-01-01T09:43:19 maint: run 'make update-copyright'
Bruno Haible c499a3c4 2021-05-10T00:59:21 {realloc,calloc}-gnu: Fix autoconf macro (regression 2021-04-18). * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Don't reset REPLACE_REALLOC to 0 if it is already 1 after gl_FUNC_REALLOC_GNU was executed. * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Don't reset REPLACE_CALLOC to 0 if it is already 1 after gl_FUNC_CALLOC_GNU was executed.
Bruno Haible ba08ac6d 2021-05-09T22:10:40 {malloc,realloc,calloc}-gnu: Fix autoconf macro (regression 2021-04-18). * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): Don't assume that _AC_FUNC_MALLOC_IF expands to a single shell statement. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Don't assume that _AC_FUNC_REALLOC_IF expands to a single shell statement. * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): Don't assume that _AC_FUNC_CALLOC_IF expands to a single shell statement.
Paul Eggert b28520a8 2021-04-18T11:31:02 malloc-gnu, etc.: prefer AS_CASE to woolly AS_IF * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Use AS_CASE.
Paul Eggert 1179a1de 2021-04-18T11:23:24 malloc-gnu, etc.: sync better with Autoconf * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Avoid some unnecessary differences from Autoconf’s versions. Separate our platforms into a different line so that it’s easier to diff. Use AS_IF in case the args use AC_REQUIRE. However, don’t bother with omitting the first newline, as omitting the newline is not Gnulib style and the difference doesn’t seem to matter here.
Paul Eggert 58fe1054 2021-04-17T18:44:25 malloc, etc.: check for ptrdiff_t overflow In glibc 2.30 and later, malloc, realloc and calloc reject attempts to create objects larger than PTRDIFF_MAX bytes. This patch changes malloc-gnu etc. to support this behavior on non-GNU hosts. It also makes this change for malloc-posix etc. since it’s a safety measure that ought to be in POSIX (perhaps we can talk them into that...). In writing this patch I found a complicated set of code that had accumulated over the years, some written by yours truly. I got rid of the code I couldn’t see the need for nowadays. Among other things, the GNU realloc behavior is no longer incompatible with the C standard, because in C17 the latter was relaxed to allow the former. If I went too far in cleaning up, the old stuff can be resurrected. This change is mostly for 32-bit platforms, since practical 64-bit platforms cannot create objects larger than PTRDIFF_MAX bytes anyway. * doc/posix-functions/calloc.texi: * doc/posix-functions/malloc.texi: * doc/posix-functions/realloc.texi: Mention ptrdiff_t issues, and go into more detail about what the gnu extension module does. * doc/posix-functions/realloc.texi: Fix now-obsolete commentary about C99 vs glibc, as C17 allows the glibc behavior and POSIX will follow suit when it gets around to it. * lib/calloc.c, lib/malloc.c, lib/realloc.c: Simplify by always supplying a GNU-compatible version, as that suffices for correctness and is good enough for performance. Include xalloc-oversized.h, and use xalloc_oversized to check for ptrdiff_t overflow. (NEED_CALLOC_GNU, NEED_MALLOC_GNU, NEED_REALLOC_GNU): Remove. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Don’t start with a newline. Fix message to match behavior. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don’t test for size_t overflow, as the ptrdiff_t test is good enough. * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Do not define HAVE_CALLOC_GNU, HAVE_MALLOC_GNU, HAVE_REALLOC_GNU. It’s not worth the aggravation of maintaining these, as they are confusing (they don’t really mean GNU-compatible anyway). Don’t bother testing for GNU behavior if we have already decided to replace the function, since the replacement is always GNUish. * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Defer to gl_FUNC_MALLOC_POSIX. * m4/malloc.m4 (gl_FUNC_MALLOC_PTRDIFF, gl_CHECK_MALLOC_PTRDIFF): New macros. (gl_FUNC_MALLOC_POSIX): Use them to check for ptrdiff_t overflow. * modules/calloc-gnu, modules/malloc-gnu, modules/realloc-gnu: Remove no-longer-needed module indicators. * modules/calloc-posix, modules/malloc-posix, modules/realloc-posix: Depend on xalloc-oversized. * modules/malloc-posix: Require gl_FUNC_MALLOC_POSIX instead of calling it directly, so that other code can require it. * modules/realloc-posix: Depend on free-posix and malloc-posix.
Bruno Haible 71a8a22e 2021-02-07T21:33:13 Add cross-compilation guesses for MidnightBSD. * 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.
Paul Eggert 4b948321 2021-01-01T07:28:52 maint: run 'make update-copyright'
Bruno Haible c67a0554 2020-09-28T00:27:43 Avoid "warning: The macro `AC_HEADER_STDC' is obsolete". Reported by Gavin Smith <gavinsmith0123@gmail.com> in <https://lists.gnu.org/archive/html/bug-gnulib/2020-09/msg00154.html>. Based on a patch by Paul Eggert. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Don't require AC_HEADER_STDC. Don't test STDC_HEADERS. Assume <stdlib.h> exists. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Likewise.
Paul Eggert 2cdc1baf 2020-01-01T00:00:18 maint: Run 'make update-copyright'
Bruno Haible 84cc75b2 2019-09-09T02:43:58 Add option to assume the best, not the worst, when cross-compiling. Suggested by Jonas Termansen <sortie@maxsi.org>. * m4/gnulib-common.m4 (gl_COMMON_BODY): Add --enable-cross-guesses=... option. Set gl_cross_guess_normal and gl_cross_guess_inverted. * m4/argz.m4 (gl_FUNC_ARGZ): Obey --enable-cross-guesses for lt_cv_sys_argz_works. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Obey --enable-cross-guesses for ac_cv_func_calloc_0_nonnull. * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Obey --enable-cross-guesses for gl_cv_func_realpath_works. * m4/cbrtl.m4 (gl_FUNC_CBRTL): Obey --enable-cross-guesses for gl_cv_func_cbrtl_ieee. * m4/ceil.m4 (gl_FUNC_CEIL): Obey --enable-cross-guesses for gl_cv_func_ceil_ieee. * m4/ceilf.m4 (gl_FUNC_CEILF): Obey --enable-cross-guesses for gl_cv_func_ceilf_ieee. * m4/ceill.m4 (gl_FUNC_CEILL): Obey --enable-cross-guesses for gl_cv_func_ceill_ieee. * m4/chown.m4 (AC_FUNC_CHOWN): Obey --enable-cross-guesses for ac_cv_func_chown_works. (gl_FUNC_CHOWN): Obey --enable-cross-guesses for gl_cv_func_chown_slash_works, gl_cv_func_chown_ctime_works. * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Obey --enable-cross-guesses for gl_cv_struct_dirent_d_ino. * m4/exp2l.m4 (gl_FUNC_EXP2L): Obey --enable-cross-guesses for gl_cv_func_exp2l_works, gl_cv_func_exp2l_ieee. * m4/expl.m4 (gl_FUNC_EXPL): Obey --enable-cross-guesses for gl_cv_func_expl_works. * m4/expm1.m4 (gl_FUNC_EXPM1): Obey --enable-cross-guesses for gl_cv_func_expm1_ieee. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Obey --enable-cross-guesses for gl_cv_func_expm1l_works. * m4/fchdir.m4 (gl_FUNC_FCHDIR): Obey --enable-cross-guesses for gl_cv_func_open_directory_works. * m4/fchownat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Obey --enable-cross-guesses for gl_cv_func_fchownat_nofollow_works. (gl_FUNC_FCHOWNAT_EMPTY_FILENAME_BUG): Obey --enable-cross-guesses for gl_cv_func_fchownat_empty_filename_works. * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Obey --enable-cross-guesses for gl_cv_func_fdopendir_works. * m4/floor.m4 (gl_FUNC_FLOOR): Obey --enable-cross-guesses for gl_cv_func_floor_ieee. * m4/floorf.m4 (gl_FUNC_FLOORF): Obey --enable-cross-guesses for gl_cv_func_floorf_ieee. * m4/fma.m4 (gl_FUNC_FMA_WORKS): Obey --enable-cross-guesses for gl_cv_func_fma_works. * m4/fmaf.m4 (gl_FUNC_FMAF_WORKS): Obey --enable-cross-guesses for gl_cv_func_fmaf_works. * m4/fmal.m4 (gl_FUNC_FMAL_WORKS): Obey --enable-cross-guesses for gl_cv_func_fmal_works. * m4/fmod.m4 (gl_FUNC_FMOD): Obey --enable-cross-guesses for gl_cv_func_fmod_ieee. * m4/fmodf.m4 (gl_FUNC_FMODF): Obey --enable-cross-guesses for gl_cv_func_fmodf_ieee. * m4/fmodl.m4 (gl_FUNC_FMODL): Obey --enable-cross-guesses for gl_cv_func_fmodl_ieee. * m4/fpurge.m4 (gl_FUNC_FPURGE): Obey --enable-cross-guesses for gl_cv_func_fpurge_works. * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Obey --enable-cross-guesses for gl_cv_func_getcwd_path_max. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Obey --enable-cross-guesses for gl_cv_func_getcwd_null. (gl_FUNC_GETCWD): Update for getcwd-path-max.m4 change. * m4/getdelim.m4 (gl_FUNC_GETDELIM): Obey --enable-cross-guesses for gl_cv_func_working_getdelim. * m4/getgroups.m4 (AC_FUNC_GETGROUPS): Obey --enable-cross-guesses for ac_cv_func_getgroups_works. Keep this macro also in Autoconf >= 2.70. (gl_FUNC_GETGROUPS): Obey --enable-cross-guesses for gl_cv_func_getgroups_works. * m4/getline.m4 (gl_FUNC_GETLINE): Obey --enable-cross-guesses for am_cv_func_working_getline. * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Obey --enable-cross-guesses for gl_cv_func_getopt_gnu. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY_CLOBBER): Obey --enable-cross-guesses for gl_cv_func_gettimeofday_clobber. * m4/hypot.m4 (gl_FUNC_HYPOT): Obey --enable-cross-guesses for gl_cv_func_hypot_ieee. * m4/hypotf.m4 (gl_FUNC_HYPOTF): Obey --enable-cross-guesses for gl_cv_func_hypotf_ieee. * m4/hypotl.m4 (gl_FUNC_HYPOTL): Obey --enable-cross-guesses for gl_cv_func_hypotl_ieee. * m4/iconv_open-utf.m4 (gl_FUNC_ICONV_OPEN_UTF_SUPPORT): Obey --enable-cross-guesses for gl_cv_func_iconv_supports_utf. * m4/link.m4 (gl_FUNC_LINK): Obey --enable-cross-guesses for gl_cv_func_link_works. * m4/linkat.m4 (gl_FUNC_LINKAT): Obey --enable-cross-guesses for gl_cv_func_linkat_slash. * m4/log.m4 (gl_FUNC_LOG): Obey --enable-cross-guesses for gl_cv_func_log_ieee. * m4/logf.m4 (gl_FUNC_LOGF): Obey --enable-cross-guesses for gl_cv_func_logf_ieee. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): Obey --enable-cross-guesses for gl_cv_func_logl_works. * m4/log10.m4 (gl_FUNC_LOG10): Obey --enable-cross-guesses for gl_cv_func_log10_ieee. * m4/log10f.m4 (gl_FUNC_LOG10F): Obey --enable-cross-guesses for gl_cv_func_log10f_ieee. * m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): Obey --enable-cross-guesses for gl_cv_func_log10l_works. * m4/log1p.m4 (gl_FUNC_LOG1P): Obey --enable-cross-guesses for gl_cv_func_log1p_ieee. * m4/log1pf.m4 (gl_FUNC_LOG1PF): Obey --enable-cross-guesses for gl_cv_func_log1pf_ieee. * m4/log1pl.m4 (gl_FUNC_LOG1PL): Obey --enable-cross-guesses for gl_cv_func_log1pl_ieee. * m4/log2.m4 (gl_FUNC_LOG2): Obey --enable-cross-guesses for gl_cv_func_log2_ieee. * m4/log2f.m4 (gl_FUNC_LOG2F): Obey --enable-cross-guesses for gl_cv_func_log2f_ieee. * m4/lstat.m4 (gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Obey --enable-cross-guesses for gl_cv_func_lstat_dereferences_slashed_symlink. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Obey --enable-cross-guesses for ac_cv_func_malloc_0_nonnull. Keep this macro also in Autoconf >= 2.70. * m4/mbrtowc.m4 (gl_MBRTOWC_C_LOCALE): Obey --enable-cross-guesses for gl_cv_C_locale_sans_EILSEQ. * m4/memchr.m4 (gl_FUNC_MEMCHR): Obey --enable-cross-guesses for gl_cv_func_memchr_works. * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): Obey --enable-cross-guesses for gl_cv_func_memmem_works_always. (gl_FUNC_MEMMEM): Obey --enable-cross-guesses for gl_cv_func_memmem_works_fast. * m4/mkdir.m4 (gl_FUNC_MKDIR): Obey --enable-cross-guesses for gl_cv_func_mkdir_trailing_slash_works, gl_cv_func_mkdir_trailing_dot_works. * m4/mkfifo.m4 (gl_FUNC_MKFIFO): Obey --enable-cross-guesses for gl_cv_func_mkfifo_works. * m4/mknod.m4 (gl_FUNC_MKNOD): Obey --enable-cross-guesses for gl_cv_func_mknod_works. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Obey --enable-cross-guesses for gl_cv_func_working_mkstemp. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Obey --enable-cross-guesses for gl_cv_func_working_mktime. * m4/modf.m4 (gl_FUNC_MODF): Obey --enable-cross-guesses for gl_cv_func_modf_ieee. * m4/modff.m4 (gl_FUNC_MODFF): Obey --enable-cross-guesses for gl_cv_func_modff_ieee. * m4/modfl.m4 (gl_FUNC_MODFL): Obey --enable-cross-guesses for gl_cv_func_modfl_ieee. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Obey --enable-cross-guesses for gl_cv_func_nanosleep. * m4/perror.m4 (gl_FUNC_PERROR): Obey --enable-cross-guesses for gl_cv_func_perror_works. * m4/printf.m4 (gl_PRINTF_SIZES_C99): Obey --enable-cross-guesses for gl_cv_func_printf_sizes_c99. (gl_PRINTF_INFINITE): Obey --enable-cross-guesses for gl_cv_func_printf_infinite. (gl_PRINTF_INFINITE_LONG_DOUBLE): Obey --enable-cross-guesses for gl_cv_func_printf_infinite_long_double. (gl_PRINTF_DIRECTIVE_A): Obey --enable-cross-guesses for gl_cv_func_printf_directive_a. (gl_PRINTF_DIRECTIVE_F): Obey --enable-cross-guesses for gl_cv_func_printf_directive_f. (gl_PRINTF_FLAG_ZERO): Obey --enable-cross-guesses for gl_cv_func_printf_flag_zero. (gl_PRINTF_ENOMEM): Obey --enable-cross-guesses for gl_cv_func_printf_enomem. (gl_SNPRINTF_TRUNCATION_C99): Obey --enable-cross-guesses for gl_cv_func_snprintf_truncation_c99. (gl_SNPRINTF_RETVAL_C99): Obey --enable-cross-guesses for gl_cv_func_snprintf_retval_c99. (gl_SNPRINTF_DIRECTIVE_N): Obey --enable-cross-guesses for gl_cv_func_snprintf_directive_n. (gl_VSNPRINTF_ZEROSIZE_C99): Obey --enable-cross-guesses for gl_cv_func_vsnprintf_zerosize_c99. * m4/pselect.m4 (gl_FUNC_PSELECT): Obey --enable-cross-guesses for gl_cv_func_pselect_detects_ebadf. * m4/pthread_rwlock_rdlock.m4 (gl_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER): Obey --enable-cross-guesses for gl_cv_pthread_rwlock_rdlock_prefer_writer. * m4/ptsname.m4 (gl_FUNC_PTSNAME): Obey --enable-cross-guesses for gl_cv_func_ptsname_sets_errno. * m4/putenv.m4 (gl_FUNC_PUTENV): Obey --enable-cross-guesses for gl_cv_func_svid_putenv. * m4/readlink.m4 (gl_FUNC_READLINK): Obey --enable-cross-guesses for gl_cv_func_readlink_works. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Obey --enable-cross-guesses for ac_cv_func_realloc_0_nonnull. Keep this macro also in Autoconf >= 2.70. * m4/regex.m4 (gl_REGEX): Obey --enable-cross-guesses for gl_cv_func_re_compile_pattern_working. * m4/remainder.m4 (gl_FUNC_REMAINDER): Obey --enable-cross-guesses for gl_cv_func_remainder_ieee. * m4/remainderf.m4 (gl_FUNC_REMAINDERF): Obey --enable-cross-guesses for gl_cv_func_remainderf_ieee. * m4/remainderl.m4 (gl_FUNC_REMAINDERL): Obey --enable-cross-guesses for gl_cv_func_remainderl_ieee. * m4/rintl.m4 (gl_FUNC_RINTL): Obey --enable-cross-guesses for gl_cv_func_rintl_works. * m4/rmdir.m4 (gl_FUNC_RMDIR): Obey --enable-cross-guesses for gl_cv_func_rmdir_works. * m4/round.m4 (gl_FUNC_ROUND): Obey --enable-cross-guesses for gl_cv_func_round_ieee. * m4/roundf.m4 (gl_FUNC_ROUNDF): Obey --enable-cross-guesses for gl_cv_func_roundf_ieee. * m4/roundl.m4 (gl_FUNC_ROUNDL): Obey --enable-cross-guesses for gl_cv_func_roundl_ieee. * m4/select.m4 (gl_FUNC_SELECT): Obey --enable-cross-guesses for gl_cv_func_select_detects_ebadf. * m4/setenv.m4 (gl_FUNC_SETENV): Obey --enable-cross-guesses for gl_cv_func_setenv_works. (gl_FUNC_UNSETENV): Obey --enable-cross-guesses for gl_cv_func_unsetenv_works. * m4/signbit.m4 (gl_SIGNBIT): Obey --enable-cross-guesses for gl_cv_func_signbit, gl_cv_func_signbit_gcc. * m4/sleep.m4 (gl_FUNC_SLEEP): Obey --enable-cross-guesses for gl_cv_func_sleep_works. * m4/stat.m4 (gl_FUNC_STAT): Obey --enable-cross-guesses for gl_cv_func_stat_file_slash. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Obey --enable-cross-guesses for gl_cv_func_stpncpy. * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Obey --enable-cross-guesses for gl_cv_func_strcasestr_works_always. (gl_FUNC_STRCASESTR): Obey --enable-cross-guesses for gl_cv_func_strcasestr_linear. * m4/strerror.m4 (gl_FUNC_STRERROR): Obey --enable-cross-guesses for gl_cv_func_working_strerror. (gl_FUNC_STRERROR_0): Obey --enable-cross-guesses for gl_cv_func_strerror_0_works. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS): Obey --enable-cross-guesses for gl_cv_func_strerror_r_works. * m4/strstr.m4 (gl_FUNC_STRSTR_SIMPLE): Obey --enable-cross-guesses for gl_cv_func_strstr_works_always. (gl_FUNC_STRSTR): Obey --enable-cross-guesses for gl_cv_func_strstr_linear. * m4/strtod.m4 (gl_FUNC_STRTOD): Obey --enable-cross-guesses for gl_cv_func_strtod_works. * m4/strtold.m4 (gl_FUNC_STRTOLD): Obey --enable-cross-guesses for gl_cv_func_strtold_works. * m4/symlink.m4 (gl_FUNC_SYMLINK): Obey --enable-cross-guesses for gl_cv_func_symlink_works. * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Obey --enable-cross-guesses for gl_cv_func_symlinkat_works. * m4/trunc.m4 (gl_FUNC_TRUNC): Obey --enable-cross-guesses for gl_cv_func_trunc_ieee. * m4/truncf.m4 (gl_FUNC_TRUNCF): Obey --enable-cross-guesses for gl_cv_func_truncf_ieee. * m4/truncl.m4 (gl_FUNC_TRUNCL): Obey --enable-cross-guesses for gl_cv_func_truncl_ieee. * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Obey --enable-cross-guesses for gl_cv_func_tzset_clobber. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Obey --enable-cross-guesses for gl_cv_func_ungetc_works. * m4/unlink.m4 (gl_FUNC_UNLINK): Obey --enable-cross-guesses for gl_cv_func_unlink_honors_slashes, gl_cv_func_unlink_parent_fails. * m4/usleep.m4 (gl_FUNC_USLEEP): Obey --enable-cross-guesses for gl_cv_func_usleep_works. * m4/utimens.m4 (gl_UTIMENS): Obey --enable-cross-guesses for gl_cv_func_futimesat_works. * m4/utimes.m4 (gl_FUNC_UTIMES): Obey --enable-cross-guesses for gl_cv_func_working_utimes. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Obey --enable-cross-guesses for gl_cv_func_wcwidth_works. * m4/glob.m4 (gl_GLOB): When cross-compiling, don't create symlinks for testing. Obey --enable-cross-guesses for gl_cv_glob_lists_symlinks. * m4/rename.m4 (gl_FUNC_RENAME): When cross-compiling, don't create links for testing. Obey --enable-cross-guesses for gl_cv_func_rename_slash_dst_works, gl_cv_func_rename_slash_src_works, gl_cv_func_rename_link_works, gl_cv_func_rename_dest_works.
Bruno Haible 453ff940 2019-03-23T23:00:52 Support cross-compilation to musl libc. Reported by Necktwi Ozfguah <necktwi@ferryfair.com>. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Add cross-compilation guesses for musl libc. * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Likewise. * m4/cbrtl.m4 (gl_FUNC_CBRTL): Likewise. * m4/ceil.m4 (gl_FUNC_CEIL): Likewise. * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise. * m4/ceill.m4 (gl_FUNC_CEILL): Likewise. * m4/chown.m4 (gl_FUNC_CHOWN): Likewise. * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise. * m4/exp2l.m4 (gl_FUNC_EXP2L): Likewise. * m4/expl.m4 (gl_FUNC_EXPL): Likewise. * m4/expm1.m4 (gl_FUNC_EXPM1): Likewise. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Likewise. * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Likewise. * m4/floor.m4 (gl_FUNC_FLOOR): Likewise. * m4/floorf.m4 (gl_FUNC_FLOORF): Likewise. * m4/fmod.m4 (gl_FUNC_FMOD): Likewise. * m4/fmodf.m4 (gl_FUNC_FMODF): Likewise. * m4/fmodl.m4 (gl_FUNC_FMODL): Likewise. * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Likewise. * m4/fpurge.m4 (gl_FUNC_FPURGE): Likewise. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Likewise. * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): Likewise. * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise. * m4/getgroups.m4 (AC_FUNC_GETGROUPS, gl_FUNC_GETGROUPS): Likewise. * m4/getline.m4 (gl_FUNC_GETLINE): Likewise. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY_CLOBBER): Likewise. * m4/hypot.m4 (gl_FUNC_HYPOT): Likewise. * m4/hypotf.m4 (gl_FUNC_HYPOTF): Likewise. * m4/hypotl.m4 (gl_FUNC_HYPOTL): Likewise. * m4/iconv_open-utf.m4 (gl_FUNC_ICONV_OPEN_UTF_SUPPORT): Likewise. * m4/link-follow.m4 (gl_FUNC_LINK_FOLLOWS_SYMLINK): Likewise. * m4/log.m4 (gl_FUNC_LOG): Likewise. * m4/logf.m4 (gl_FUNC_LOGF): Likewise. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): Likewise. * m4/log10.m4 (gl_FUNC_LOG10): Likewise. * m4/log10f.m4 (gl_FUNC_LOG10F): Likewise. * m4/log10l.m4 (gl_FUNC_LOG10L): Likewise. * m4/log1p.m4 (gl_FUNC_LOG1P): Likewise. * m4/log1pf.m4 (gl_FUNC_LOG1PF): Likewise. * m4/log1pl.m4 (gl_FUNC_LOG1PL): Likewise. * m4/log2.m4 (gl_FUNC_LOG2): Likewise. * m4/log2f.m4 (gl_FUNC_LOG2F): Likewise. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Likewise. * m4/mkdir.m4 (gl_FUNC_MKDIR): Likewise. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Likewise. * m4/modf.m4 (gl_FUNC_MODF): Likewise. * m4/modff.m4 (gl_FUNC_MODFF): Likewise. * m4/modfl.m4 (gl_FUNC_MODFL): Likewise. * m4/perror.m4 (gl_FUNC_PERROR): Likewise. * m4/printf.m4 (gl_PRINTF_SIZES_C99, gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE, gl_PRINTF_DIRECTIVE_A, gl_PRINTF_DIRECTIVE_F, gl_PRINTF_FLAG_ZERO, gl_SNPRINTF_TRUNCATION_C99, gl_SNPRINTF_RETVAL_C99, gl_SNPRINTF_DIRECTIVE_N, gl_VSNPRINTF_ZEROSIZE_C99): Likewise. * m4/ptsname.m4 (gl_FUNC_PTSNAME): Likewise. * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Likewise. * m4/remainder.m4 (gl_FUNC_REMAINDER): Likewise. * m4/remainderf.m4 (gl_FUNC_REMAINDERF): Likewise. * m4/remainderl.m4 (gl_FUNC_REMAINDERL): Likewise. * m4/rintl.m4 (gl_FUNC_RINTL): Likewise. * m4/round.m4 (gl_FUNC_ROUND): Likewise. * m4/roundf.m4 (gl_FUNC_ROUNDF): Likewise. * m4/roundl.m4 (gl_FUNC_ROUNDL): Likewise. * m4/setenv.m4 (gl_FUNC_SETENV): Likewise. * m4/signbit.m4 (gl_SIGNBIT): Likewise. * m4/sleep.m4 (gl_FUNC_SLEEP): Likewise. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise. * m4/strerror.m4 (gl_FUNC_STRERROR, gl_FUNC_STRERROR_0): Likewise. * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise. * m4/strtold.m4 (gl_FUNC_STRTOLD): Likewise. * m4/trunc.m4 (gl_FUNC_TRUNC): Likewise. * m4/truncf.m4 (gl_FUNC_TRUNCF): Likewise. * m4/truncl.m4 (gl_FUNC_TRUNCL): Likewise. * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Likewise. * m4/usleep.m4 (gl_FUNC_USLEEP): Likewise. * m4/utimes.m4 (gl_FUNC_UTIMES): Likewise. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
Bruno Haible b6f167d3 2019-03-23T21:24:50 Clarify that cross-compilation guesses are guesses. * m4/chown.m4 (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): When cross-compiling, add prefix 'guessing ' to gl_cv_func_chown_follows_symlink. * m4/fchownat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): When cross-compiling, add prefix 'guessing ' to gl_cv_func_fchownat_nofollow_works. * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): When cross-compiling, add prefix 'guessing ' to gl_cv_func_getcwd_abort_bug. * m4/glob.m4 (gl_GLOB): When cross-compiling, add prefix 'guessing ' to gl_cv_glob_lists_symlinks. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): When cross-compiling, add prefix 'guessing ' to ac_cv_func_malloc_0_nonnull. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): When cross-compiling, add prefix 'guessing ' to ac_cv_func_realloc_0_nonnull. * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, add prefix 'guessing ' to gl_cv_func_poll. * m4/iconv_open-utf.m4 (gl_FUNC_ICONV_OPEN_UTF_SUPPORT): When cross- compiling, add prefix 'guessing ' to gl_cv_func_iconv_supports_utf. * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Update accordingly.
Paul Eggert e6633650 2019-01-01T00:25:11 maint: Run 'make update-copyright'
Paul Eggert 281b825e 2018-01-01T00:57:25 maint: Run 'make update-copyright'
Samuel Thibault 65c09137 2017-12-29T17:30:07 Add cross-compilation results for GNU/Hurd. * m4/calloc.m4: Add GNU/Hurd guess. * m4/cbrtl.m4: Likewise. * m4/ceil.m4: Likewise. * m4/ceilf.m4: Likewise. * m4/ceill.m4: Likewise. * m4/chown.m4: Likewise. * m4/duplocale.m4: Likewise. * m4/exp2l.m4: Likewise. * m4/expm1.m4: Likewise. * m4/fchdir.m4: Likewise. * m4/floor.m4: Likewise. * m4/floorf.m4: Likewise. * m4/fmod.m4: Likewise. * m4/fmodf.m4: Likewise. * m4/fmodl.m4: Likewise. * m4/getcwd.m4: Likewise. * m4/getgroups.m4: Likewise. * m4/gettimeofday.m4: Likewise. * m4/hypot.m4: Likewise. * m4/hypotf.m4: Likewise. * m4/hypotl.m4: Likewise. * m4/link-follow.m4: Likewise. * m4/link.m4: Likewise. * m4/linkat.m4: Likewise. * m4/log.m4: Likewise. * m4/log10.m4: Likewise. * m4/log10f.m4: Likewise. * m4/log1p.m4: Likewise. * m4/log1pf.m4: Likewise. * m4/log1pl.m4: Likewise. * m4/log2.m4: Likewise. * m4/log2f.m4: Likewise. * m4/logf.m4: Likewise. * m4/lstat.m4: Likewise. * m4/malloc.m4: Likewise. * m4/mbrlen.m4: Likewise. * m4/mbrtowc.m4: Likewise. * m4/mkdir.m4: Likewise. * m4/mkfifo.m4: Likewise. * m4/mknod.m4: Likewise. * m4/mkstemp.m4: Likewise. * m4/modf.m4: Likewise. * m4/modff.m4: Likewise. * m4/modfl.m4: Likewise. * m4/printf.m4: Likewise. * m4/pselect.m4: Likewise. * m4/ptsname.m4: Likewise. * m4/putenv.m4: Likewise. * m4/readlink.m4: Likewise. * m4/realloc.m4: Likewise. * m4/remainder.m4: Likewise. * m4/remainderf.m4: Likewise. * m4/remainderl.m4: Likewise. * m4/rmdir.m4: Likewise. * m4/round.m4: Likewise. * m4/roundf.m4: Likewise. * m4/roundl.m4: Likewise. * m4/select.m4: Likewise. * m4/setenv.m4: Likewise. * m4/signbit.m4: Likewise. * m4/sleep.m4: Likewise. * m4/stat.m4: Likewise. * m4/strerror.m4: Likewise. * m4/strtok_r.m4: Likewise. * m4/symlink.m4: Likewise. * m4/symlinkat.m4: Likewise. * m4/trunc.m4: Likewise. * m4/truncf.m4: Likewise. * m4/truncl.m4: Likewise. * m4/tzset.m4: Likewise. * m4/ungetc.m4: Likewise. * m4/usleep.m4: Likewise. * m4/wcwidth.m4: Likewise.
Paul Eggert ca35d468 2017-09-13T00:48:18 all: prefer https: URLs
Paul Eggert a3fd683d 2017-01-01T02:59:23 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert 54615b95 2016-02-06T18:11:48 misc: port better to gcc -fsanitize=address Without these patches, ./configure CFLAGS='-fsanitize=address' would compute incorrect values. This patch fixes some (but not all) test failures with recent glibc, with this configuration. * m4/acl.m4 (gl_ACL_GET_FILE): * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): * m4/duplocale.m4 (gl_FUNC_DUPLOCALE): * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): * m4/getdelim.m4 (gl_FUNC_GETDELIM): * m4/getgroups.m4 (gl_FUNC_GETGROUPS): * m4/getline.m4 (gl_FUNC_GETLINE): * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): * m4/regex.m4 (gl_REGEX): * m4/strndup.m4 (gl_FUNC_STRNDUP): * tests/test-calloc-gnu.c (main): * tests/test-duplocale.c (main): * tests/test-getgroups.c (main): * tests/test-getline.c (main): * tests/test-inttostr.c (main): * tests/test-localename.c (test_locale_name) (test_locale_name_thread, test_locale_name_environ) (test_locale_name_default): * tests/test-regex.c (main): * tests/test-setlocale1.c (main): * tests/test-stat.h (test_stat_func): Free heap-allocated storage before exiting. * m4/asm-underscore.m4 (gl_ASM_SYMBOL_PREFIX): Don't match *_foo symbols inserted by AddressSanitizer. * tests/test-regex.c, tests/test-stat.c: Include stdlib.h, for 'free'.
Paul Eggert 71090a2a 2016-01-01T00:56:19 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert b9bfe784 2015-01-01T01:38:23 version-etc: new year * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date. * all files: Run 'make update-copyright'.
Eric Blake 1276a2c5 2014-01-01T00:04:40 maint: update copyright I ran 'make update-copyright'. Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake 9fc81090 2013-01-01T00:50:58 maint: update all copyright year number ranges Run "make update-copyright". Compare to commit 1602f0a from last year. Signed-off-by: Eric Blake <eblake@redhat.com>
Bruno Haible 98f7f8fd 2012-05-04T04:23:44 *alloc-gnu, eealloc: Avoid "guessing no" when cross-compiling to glibc. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Override in autoconf < 2.70. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Override in autoconf < 2.70. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Require AC_CANONICAL_HOST. When cross-compiling, choose the first alternative on glibc systems. * modules/eealloc (Files): Add m4/malloc.m4, m4/realloc.m4.
Jim Meyering 1602f0af 2012-01-01T10:04:58 maint: update all copyright year number ranges Run "make update-copyright".
Bruno Haible 86e2d81d 2011-05-21T18:10:27 realloc-*: Move AC_LIBOBJ invocations to module description. * m4/realloc.m4 (gl_REPLACE_REALLOC): Remove macro. (gl_FUNC_REALLOC_GNU, gl_FUNC_REALLOC_POSIX): Inline it here. Move AC_LIBOBJ invocations from here... * modules/realloc-gnu (configure.ac): ... to here. * modules/realloc-posix (configure.ac): ... and here.
Jim Meyering d60f3b0c 2011-01-01T20:17:23 maint: update almost all copyright ranges to include 2011 Run the new "make update-copyright" rule.
Bruno Haible 4ebe9ebc 2010-08-29T21:13:46 Make the module 'realloc-gnu' work again on AIX and OSF/1.
Bruno Haible 8924d470 2010-06-22T00:11:19 Fix HAVE_REALLOC_POSIX misnomer.
Bruno Haible 800b95c2 2010-06-22T00:07:30 Use modern idiom for realloc() replacement.
Jim Meyering b2e2010c 2010-01-01T10:31:12 update nearly all FSF copyright year lists to include 2010 Use the same procedure as for 2009, outlined in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
Jim Meyering 42d1eda5 2009-01-13T08:48:48 many *.m4 files: improve m4 quoting 99% of this change was performed by running the following commands: git ls-files | grep '\.m4$' | xargs perl -pi \ -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \ -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \ -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \ -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g' perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4 The remainder were to add Copyright dates, increment serial numbers, undo some changes in comments, exclude m4/intl.m4, and add quotes around the "1" in ",1" where the unusual spacing prohibited the above regexps from doing the job. For more details, see <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
Bruno Haible 097a4725 2007-09-09T13:07:55 Simplify the malloc/realloc/calloc macrology.
Bruno Haible 471d58a5 2007-09-09T12:56:27 New module 'realloc-posix'.
Jim Meyering 58917bb2 2004-03-31T07:34:59 * realloc.m4: Remove file, since now it does no more than AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via the `configure.ac' section of module/realloc. * malloc.m4: Likewise, but for AC_FUNC_MALLOC.
Bruno Haible e059c235 2002-12-31T13:43:06 An independent .m4 file for each module.
Jim Meyering ef2670d2 2002-04-09T17:55:36 (jm_FUNC_REALLOC): Change the `checking ...' message to be more precise. Rather than saying we're checking whether the function `works', say what we're testing.
Jim Meyering 6fe8d749 2001-09-17T21:44:03 Use AC_DEFINE rather than AC_DEFINE_UNQUOTED, whenever the right hand side need not be expanded by the shell.
Jim Meyering ee76465a 2001-08-12T13:26:00 Quote the first argument in each use of AC_DEFUN.
Jim Meyering 27ef3b86 2000-07-02T15:14:04 fix typo in last change
Jim Meyering a965c003 2000-07-02T12:58:27 Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with AC_LIBOBJ([function_name]).
Jim Meyering 2f209fdc 1999-02-07T05:37:39 Use AC_SUBST(LIBOBJS) since we set LIBOBJS.
Jim Meyering e62d4d88 1999-02-07T05:27:24 Use .$ac_objext, not .o
Jim Meyering c281d94c 1999-01-29T05:05:56 Use the 3-argument forms of AC_DEFINE* macros.
Jim Meyering 6273d011 1999-01-10T22:47:01 Use the new 3-arg form of AC_DEFINE instead of my gross kludge.
Jim Meyering c4f6d1bf 1997-11-03T15:18:09 Add insurance: tell xmalloc.c we've done the test.
Jim Meyering e2b06000 1997-11-03T05:20:41 be stricter: check for both P == 0 and N == 0.
Jim Meyering 47a93f77 1997-09-15T03:20:53 .