"Fossies" - the Fresh Open Source Software Archive

Member "gcal-4.1/m4/stat.m4" (22 Jan 2017, 2700 Bytes) of package /linux/misc/gcal-4.1.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "stat.m4": 4_vs_4.1.

    1 # serial 11
    2 
    3 # Copyright (C) 2009-2017 Free Software Foundation, Inc.
    4 #
    5 # This file is free software; the Free Software Foundation
    6 # gives unlimited permission to copy and/or distribute it,
    7 # with or without modifications, as long as this notice is preserved.
    8 
    9 AC_DEFUN([gl_FUNC_STAT],
   10 [
   11   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   12   AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
   13   AC_CHECK_FUNCS_ONCE([lstat])
   14   dnl mingw is the only known platform where stat(".") and stat("./") differ
   15   AC_CACHE_CHECK([whether stat handles trailing slashes on directories],
   16       [gl_cv_func_stat_dir_slash],
   17       [AC_RUN_IFELSE(
   18          [AC_LANG_PROGRAM(
   19            [[#include <sys/stat.h>
   20 ]], [[struct stat st; return stat (".", &st) != stat ("./", &st);]])],
   21          [gl_cv_func_stat_dir_slash=yes], [gl_cv_func_stat_dir_slash=no],
   22          [case $host_os in
   23             mingw*) gl_cv_func_stat_dir_slash="guessing no";;
   24             *) gl_cv_func_stat_dir_slash="guessing yes";;
   25           esac])])
   26   dnl AIX 7.1, Solaris 9, mingw64 mistakenly succeed on stat("file/").
   27   dnl (For mingw, this is due to a broken stat() override in libmingwex.a.)
   28   dnl FreeBSD 7.2 mistakenly succeeds on stat("link-to-file/").
   29   AC_CACHE_CHECK([whether stat handles trailing slashes on files],
   30       [gl_cv_func_stat_file_slash],
   31       [touch conftest.tmp
   32        # Assume that if we have lstat, we can also check symlinks.
   33        if test $ac_cv_func_lstat = yes; then
   34          ln -s conftest.tmp conftest.lnk
   35        fi
   36        AC_RUN_IFELSE(
   37          [AC_LANG_PROGRAM(
   38            [[#include <sys/stat.h>
   39 ]], [[int result = 0;
   40       struct stat st;
   41       if (!stat ("conftest.tmp/", &st))
   42         result |= 1;
   43 #if HAVE_LSTAT
   44       if (!stat ("conftest.lnk/", &st))
   45         result |= 2;
   46 #endif
   47       return result;
   48            ]])],
   49          [gl_cv_func_stat_file_slash=yes], [gl_cv_func_stat_file_slash=no],
   50          [case "$host_os" in
   51                     # Guess yes on glibc systems.
   52             *-gnu*) gl_cv_func_stat_file_slash="guessing yes" ;;
   53                     # If we don't know, assume the worst.
   54             *)      gl_cv_func_stat_file_slash="guessing no" ;;
   55           esac
   56          ])
   57        rm -f conftest.tmp conftest.lnk])
   58   case $gl_cv_func_stat_dir_slash in
   59     *no) REPLACE_STAT=1
   60       AC_DEFINE([REPLACE_FUNC_STAT_DIR], [1], [Define to 1 if stat needs
   61         help when passed a directory name with a trailing slash]);;
   62   esac
   63   case $gl_cv_func_stat_file_slash in
   64     *no) REPLACE_STAT=1
   65       AC_DEFINE([REPLACE_FUNC_STAT_FILE], [1], [Define to 1 if stat needs
   66         help when passed a file name with a trailing slash]);;
   67   esac
   68 ])
   69 
   70 # Prerequisites of lib/stat.c.
   71 AC_DEFUN([gl_PREREQ_STAT], [:])