Blame gettext-tools/gnulib-m4/unlocked-io.m4

Packit Bot 06c835
# unlocked-io.m4 serial 15
Packit Bot 06c835
Packit Bot 06c835
# Copyright (C) 1998-2006, 2009-2015 Free Software Foundation, Inc.
Packit Bot 06c835
#
Packit Bot 06c835
# This file is free software; the Free Software Foundation
Packit Bot 06c835
# gives unlimited permission to copy and/or distribute it,
Packit Bot 06c835
# with or without modifications, as long as this notice is preserved.
Packit Bot 06c835
Packit Bot 06c835
dnl From Jim Meyering.
Packit Bot 06c835
dnl
Packit Bot 06c835
dnl See if the glibc *_unlocked I/O macros or functions are available.
Packit Bot 06c835
dnl Use only those *_unlocked macros or functions that are declared
Packit Bot 06c835
dnl (because some of them were declared in Solaris 2.5.1 but were removed
Packit Bot 06c835
dnl in Solaris 2.6, whereas we want binaries built on Solaris 2.5.1 to run
Packit Bot 06c835
dnl on Solaris 2.6).
Packit Bot 06c835
Packit Bot 06c835
AC_DEFUN([gl_FUNC_GLIBC_UNLOCKED_IO],
Packit Bot 06c835
[
Packit Bot 06c835
  AC_DEFINE([USE_UNLOCKED_IO], [1],
Packit Bot 06c835
    [Define to 1 if you want getc etc. to use unlocked I/O if available.
Packit Bot 06c835
     Unlocked I/O can improve performance in unithreaded apps,
Packit Bot 06c835
     but it is not safe for multithreaded apps.])
Packit Bot 06c835
Packit Bot 06c835
  dnl Persuade glibc and Solaris <stdio.h> to declare
Packit Bot 06c835
  dnl fgets_unlocked(), fputs_unlocked() etc.
Packit Bot 06c835
  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
Packit Bot 06c835
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([clearerr_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([feof_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([ferror_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([fflush_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([fgets_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([fputc_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([fputs_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([fread_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([fwrite_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([getc_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([getchar_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([putc_unlocked])
Packit Bot 06c835
  AC_CHECK_DECLS_ONCE([putchar_unlocked])
Packit Bot 06c835
])