summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>1999-03-07 16:59:21 +0000
committerJim Meyering <jim@meyering.net>1999-03-07 16:59:21 +0000
commit1840ed72ecb24eb89d54416f4e3042c3d49caf2f (patch)
tree6039b48812d3ea00395c0292784442598749ed49 /m4
parent83af9954b1026521f2f06c330220940d1c427392 (diff)
downloadgnulib-1840ed72ecb24eb89d54416f4e3042c3d49caf2f.tar.gz
Use only those *_unlocked macros that are declared.
Diffstat (limited to 'm4')
-rw-r--r--m4/jm-glibc-io.m433
1 files 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 <stdio.h>
+ ], $jm_io_func,
+ jm_declared=yes,
+ jm_declared=no)
+ if test $jm_declared = yes; then
+ AC_CHECK_FUNCS($jm_io_func)
+ fi
+ done
]
)