>From 0045109bfaebdd0c12a303fd58a431eedda6a39a Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Sun, 9 Jan 2022 15:40:22 +0100 Subject: [PATCH 3/3] obstack: Move AC_LIBOBJ invocation to the module description. * m4/obstack.m4 (gl_FUNC_OBSTACK): Renamed from AC_FUNC_OBSTACK. Don't invoke AC_LIBSOURCES nor AC_LIBOBJ. * modules/obstack (configure.ac): Update. Invoke AC_LIBOBJ here. --- ChangeLog | 7 +++++++ m4/obstack.m4 | 50 ++++++++++++++++++++++++------------------------- modules/obstack | 6 ++++-- 3 files changed, 35 insertions(+), 28 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2397dd79b6..3db6389801 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2022-01-09 Bruno Haible + + obstack: Move AC_LIBOBJ invocation to the module description. + * m4/obstack.m4 (gl_FUNC_OBSTACK): Renamed from AC_FUNC_OBSTACK. Don't + invoke AC_LIBSOURCES nor AC_LIBOBJ. + * modules/obstack (configure.ac): Update. Invoke AC_LIBOBJ here. + 2022-01-09 Bruno Haible stdio: Move AC_LIBOBJ invocations to the module description. diff --git a/m4/obstack.m4 b/m4/obstack.m4 index 007b2f0281..3a26cba4b9 100644 --- a/m4/obstack.m4 +++ b/m4/obstack.m4 @@ -5,31 +5,29 @@ dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -dnl This replaces Autoconf's AC_FUNC_OBSTACK. -dnl The Autoconf version should be marked obsolete at some point. +dnl Autoconf's AC_FUNC_OBSTACK is marked obsolete since version 2.70. +dnl We provide our own macro here. -AC_DEFUN([AC_FUNC_OBSTACK], - [AC_LIBSOURCES([obstack.h, obstack.c])dnl - AC_CACHE_CHECK([for obstacks that work with any size object], - [ac_cv_func_obstack], - [AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include "obstack.h" - void *obstack_chunk_alloc (size_t n) { return 0; } - void obstack_chunk_free (void *p) { } - /* Check that an internal function returns size_t, not int. */ - size_t _obstack_memory_used (struct obstack *); - ]], - [[struct obstack mem; - obstack_init (&mem); - obstack_free (&mem, 0); - ]])], - [ac_cv_func_obstack=yes], - [ac_cv_func_obstack=no])]) - if test "$ac_cv_func_obstack" = yes; then - AC_DEFINE([HAVE_OBSTACK], 1, - [Define to 1 if the system has obstacks that work with any size object.]) - else - AC_LIBOBJ([obstack]) - fi +AC_DEFUN([gl_FUNC_OBSTACK], +[ + AC_CACHE_CHECK([for obstacks that work with any size object], + [gl_cv_func_obstack], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include "obstack.h" + void *obstack_chunk_alloc (size_t n) { return 0; } + void obstack_chunk_free (void *p) { } + /* Check that an internal function returns size_t, not int. */ + size_t _obstack_memory_used (struct obstack *); + ]], + [[struct obstack mem; + obstack_init (&mem); + obstack_free (&mem, 0); + ]])], + [gl_cv_func_obstack=yes], + [gl_cv_func_obstack=no])]) + if test "$gl_cv_func_obstack" = yes; then + AC_DEFINE([HAVE_OBSTACK], 1, + [Define to 1 if the system has obstacks that work with any size object.]) + fi ]) diff --git a/modules/obstack b/modules/obstack index e0b528e418..c8bb548a77 100644 --- a/modules/obstack +++ b/modules/obstack @@ -14,8 +14,10 @@ stdint stdlib configure.ac: -AC_FUNC_OBSTACK -dnl Note: AC_FUNC_OBSTACK does AC_LIBSOURCES([obstack.h, obstack.c]). +gl_FUNC_OBSTACK +if test "$gl_cv_func_obstack" != yes; then + AC_LIBOBJ([obstack]) +fi Makefile.am: -- 2.25.1