summaryrefslogtreecommitdiff
path: root/m4/jm-glibc-io.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
commit9bf8b6b4c76c689ad27bd70eadab8b19567f2bed (patch)
tree791d6870d24a8fc460e94c0b96249ecab41f35f0 /m4/jm-glibc-io.m4
parent4677710c39c44a8e4a2c7686ce31f0543cc2ea05 (diff)
downloadcoreutils-9bf8b6b4c76c689ad27bd70eadab8b19567f2bed.tar.xz
Use only those *_unlocked macros that are declared.
Diffstat (limited to 'm4/jm-glibc-io.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 115601f32..868fa4392 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
]
)