X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fjm-glibc-io.m4;h=3d32b9ff5adaf5d77b0384838f97e9b6c2b8138d;hb=264a64244c721c14c74448bb003efda5059e37a9;hp=115601f32eedfe70f79de35750e5888e9e1f938d;hpb=4dc4afb121108fad28cfecaf671ca8368482b8b6;p=gnulib.git diff --git a/m4/jm-glibc-io.m4 b/m4/jm-glibc-io.m4 index 115601f32..3d32b9ff5 100644 --- a/m4/jm-glibc-io.m4 +++ b/m4/jm-glibc-io.m4 @@ -1,23 +1,35 @@ -#serial 1 +dnl This file is automatically generated from jm-glibc-io.m4n. + +#serial 6 -*- autoconf -*- 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 \ - ) + [ + # Kludge (not executed) to make autoheader do the right thing. + if test a = b; then + AC_CHECK_DECLS([clearerr_unlocked,feof_unlocked,ferror_unlocked,fflush_unlocked,fgets_unlocked,fputc_unlocked,fputs_unlocked,fread_unlocked,fwrite_unlocked,getc_unlocked,getchar_unlocked,putc_unlocked,putchar_unlocked]) + AC_CHECK_FUNCS(clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgets_unlocked fputc_unlocked fputs_unlocked fread_unlocked fwrite_unlocked getc_unlocked getchar_unlocked putc_unlocked putchar_unlocked) + fi + + io_functions='clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgets_unlocked fputc_unlocked fputs_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 it is 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. + AC_CHECK_DECLS([$jm_io_func], + jm_declared=yes, + jm_declared=no, + [#include ]) + if test $jm_declared = yes; then + AC_CHECK_FUNCS($jm_io_func) + fi + done ] )