1# fopen.m4 serial 9 2dnl Copyright (C) 2007-2012 Free Software Foundation, Inc. 3dnl This file is free software; the Free Software Foundation 4dnl gives unlimited permission to copy and/or distribute it, 5dnl with or without modifications, as long as this notice is preserved. 6 7AC_DEFUN([gl_FUNC_FOPEN], 8[ 9 AC_REQUIRE([gl_STDIO_H_DEFAULTS]) 10 AC_REQUIRE([AC_CANONICAL_HOST]) 11 case "$host_os" in 12 mingw* | pw*) 13 dnl Replace fopen, for handling of "/dev/null". 14 REPLACE_FOPEN=1 15 dnl fopen on mingw also has the trailing slash bug. 16 gl_cv_func_fopen_slash="guessing no" 17 ;; 18 *) 19 dnl fopen("foo/", "w") should not create a file when the file name has a 20 dnl trailing slash. 21 AC_CACHE_CHECK([whether fopen recognizes a trailing slash], 22 [gl_cv_func_fopen_slash], 23 [ 24 AC_RUN_IFELSE( 25 [AC_LANG_SOURCE([[ 26#include <stddef.h> 27#include <stdio.h> 28int main () 29{ 30 return fopen ("conftest.sl/", "w") != NULL; 31}]])], 32 [gl_cv_func_fopen_slash=yes], 33 [gl_cv_func_fopen_slash=no], 34 [ 35changequote(,)dnl 36 case "$host_os" in 37 aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) 38 gl_cv_func_fopen_slash="guessing no" ;; 39 *) 40 gl_cv_func_fopen_slash="guessing yes" ;; 41 esac 42changequote([,])dnl 43 ]) 44 rm -f conftest.sl 45 ]) 46 ;; 47 esac 48 case "$gl_cv_func_fopen_slash" in 49 *no) 50 AC_DEFINE([FOPEN_TRAILING_SLASH_BUG], [1], 51 [Define to 1 if fopen() fails to recognize a trailing slash.]) 52 REPLACE_FOPEN=1 53 ;; 54 esac 55]) 56 57# Prerequisites of lib/fopen.c. 58AC_DEFUN([gl_PREREQ_FOPEN], [:]) 59