1# rmdir.m4 serial 18
2dnl Copyright (C) 2002, 2005, 2009-2020 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_RMDIR],
8[
9  AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
10  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
11  dnl Detect cygwin 1.5.x bug.
12  AC_CHECK_HEADERS_ONCE([unistd.h])
13  AC_CACHE_CHECK([whether rmdir works], [gl_cv_func_rmdir_works],
14    [mkdir conftest.dir
15     touch conftest.file
16     AC_RUN_IFELSE(
17       [AC_LANG_PROGRAM(
18         [[#include <stdio.h>
19           #include <errno.h>
20           #if HAVE_UNISTD_H
21           # include <unistd.h>
22           #else /* on Windows with MSVC */
23           # include <direct.h>
24           #endif
25         ]GL_MDA_DEFINES],
26         [[int result = 0;
27           if (!rmdir ("conftest.file/"))
28             result |= 1;
29           else if (errno != ENOTDIR)
30             result |= 2;
31           if (!rmdir ("conftest.dir/./"))
32             result |= 4;
33           return result;
34         ]])],
35       [gl_cv_func_rmdir_works=yes], [gl_cv_func_rmdir_works=no],
36       [case "$host_os" in
37                           # Guess yes on Linux systems.
38          linux-* | linux) gl_cv_func_rmdir_works="guessing yes" ;;
39                           # Guess yes on glibc systems.
40          *-gnu* | gnu*)   gl_cv_func_rmdir_works="guessing yes" ;;
41                           # Guess no on native Windows.
42          mingw*)          gl_cv_func_rmdir_works="guessing no" ;;
43                           # If we don't know, obey --enable-cross-guesses.
44          *)               gl_cv_func_rmdir_works="$gl_cross_guess_normal" ;;
45        esac
46       ])
47     rm -rf conftest.dir conftest.file])
48  case "$gl_cv_func_rmdir_works" in
49    *yes) ;;
50    *)
51      REPLACE_RMDIR=1
52      ;;
53  esac
54])
55