summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4')
-rw-r--r--m4/jm-glibc-io.m4n33
1 files changed, 33 insertions, 0 deletions
diff --git a/m4/jm-glibc-io.m4n b/m4/jm-glibc-io.m4n
new file mode 100644
index 000000000..5974107ed
--- /dev/null
+++ b/m4/jm-glibc-io.m4n
@@ -0,0 +1,33 @@
+#serial 5 -*- 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,
+ [
+ # Kludge (not executed) to make autoheader do the right thing.
+ if test a = b; then
+ AC_CHECK_DECLS([@comma_separated@])
+ AC_CHECK_FUNCS(@space_separated@)
+ fi
+
+ io_functions='@space_separated@'
+
+ 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 <stdio.h>])
+ if test $jm_declared = yes; then
+ AC_CHECK_FUNCS($jm_io_func)
+ fi
+ done
+ ]
+)