From 1840ed72ecb24eb89d54416f4e3042c3d49caf2f Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Sun, 7 Mar 1999 16:59:21 +0000 Subject: [PATCH] Use only those *_unlocked macros that are declared. --- m4/jm-glibc-io.m4 | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/m4/jm-glibc-io.m4 b/m4/jm-glibc-io.m4 index 115601f32e..868fa43928 100644 --- a/m4/jm-glibc-io.m4 +++ b/m4/jm-glibc-io.m4 @@ -1,23 +1,28 @@ -#serial 1 +#serial 2 dnl From Jim Meyering. dnl dnl See if the glibc *_unlocked I/O macros are available. +dnl Use only those *_unlocked macros that are declared. dnl AC_DEFUN(jm_FUNC_GLIBC_UNLOCKED_IO, - [AC_CHECK_FUNCS( \ - clearerr_unlocked \ - feof_unlocked \ - ferror_unlocked \ - fflush_unlocked \ - fputc_unlocked \ - fread_unlocked \ - fwrite_unlocked \ - getc_unlocked \ - getchar_unlocked \ - putc_unlocked \ - putchar_unlocked \ - ) + [ + io_functions='clearerr_unlocked feof_unlocked ferror_unlocked + fflush_unlocked fputc_unlocked fread_unlocked fwrite_unlocked + getc_unlocked getchar_unlocked putc_unlocked putchar_unlocked' + for jm_io_func in $io_functions; do + # Check for the existence of each function only if its declared. + # Otherwise, we'd get the Solaris5.5.1 functions that are not + # declared, and that have been removed from Solaris5.6. The resulting + # 5.5.1 binaries would not run on 5.6 due to shared library differences. + jm_CHECK_DECLARATIONS([#include + ], $jm_io_func, + jm_declared=yes, + jm_declared=no) + if test $jm_declared = yes; then + AC_CHECK_FUNCS($jm_io_func) + fi + done ] ) -- 2.30.2