summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2003-08-09 14:03:30 +0000
committerJim Meyering <jim@meyering.net>2003-08-09 14:03:30 +0000
commit8e30ef736332428f0b7ad7f3557182fa7b6fbe9d (patch)
treebd9b9036eb98125d34537e78067ee5afbf18934f /m4
parent74daee992c83ea8381205c2323e2f460761eeca4 (diff)
downloadcoreutils-8e30ef736332428f0b7ad7f3557182fa7b6fbe9d.tar.xz
New files, from gnulib.
Diffstat (limited to 'm4')
-rw-r--r--m4/extensions.m415
-rw-r--r--m4/unlocked-io.m422
2 files changed, 37 insertions, 0 deletions
diff --git a/m4/extensions.m4 b/m4/extensions.m4
new file mode 100644
index 000000000..7faaa833b
--- /dev/null
+++ b/m4/extensions.m4
@@ -0,0 +1,15 @@
+# gl_USE_SYSTEM_EXTENSIONS
+# ------------------------
+# Enable extensions on systems that normally disable them,
+# typically due to standards-conformance issues.
+AC_DEFUN([gl_USE_SYSTEM_EXTENSIONS], [
+ AC_REQUIRE([AC_GNU_SOURCE])
+ AH_VERBATIM([__EXTENSIONS__],
+[/* Enable extensions on Solaris. */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif])
+ AC_BEFORE([$0], [AC_COMPILE_IFELSE])dnl
+ AC_BEFORE([$0], [AC_RUN_IFELSE])dnl
+ AC_DEFINE([__EXTENSIONS__])
+])
diff --git a/m4/unlocked-io.m4 b/m4/unlocked-io.m4
new file mode 100644
index 000000000..f8e98f1d1
--- /dev/null
+++ b/m4/unlocked-io.m4
@@ -0,0 +1,22 @@
+#serial 8 -*- autoconf -*-
+
+dnl From Jim Meyering.
+dnl
+dnl See if the glibc *_unlocked I/O macros or functions are available.
+dnl Use only those *_unlocked macros or functions that are declared
+dnl (because some of them were declared in Solaris 2.5.1 but were removed
+dnl in Solaris 2.6, whereas we want binaries built on Solaris 2.5.1 to run
+dnl on Solaris 2.6).
+
+AC_DEFUN([jm_FUNC_GLIBC_UNLOCKED_IO],
+[
+ dnl Persuade glibc and Solaris <stdio.h> to declare
+ dnl fgets_unlocked(), fputs_unlocked() etc.
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
+ AC_CHECK_DECLS_ONCE(
+ [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])
+])