strtod-obsolete: Fix license.
[gnulib/ericb.git] / m4 / truncate.m4
blob9d348ebfc3171e8b37ad7c98d1ec030ca542fa59
1 # truncate.m4 serial 1   -*- Autoconf -*-
2 dnl Copyright (C) 2017 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
7 AC_DEFUN([gl_FUNC_TRUNCATE],
9   AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
10   AC_CHECK_FUNCS_ONCE([truncate])
11   if test $ac_cv_func_truncate = yes; then
12     m4_ifdef([gl_LARGEFILE], [
13       AC_REQUIRE([AC_CANONICAL_HOST])
14       case "$host_os" in
15         mingw*)
16           dnl Native Windows, and Large File Support is requested.
17           dnl The mingw64 truncate64() function is based on ftruncate64(),
18           dnl which is unreliable (it may delete the file, see
19           dnl <http://mingw-w64.sourcearchive.com/documentation/2.0-1/ftruncate64_8c_source.html>).
20           dnl Use gnulib's ftruncate() and truncate() implementation instead.
21           REPLACE_TRUNCATE=1
22           ;;
23       esac
24     ], [
25       :
26     ])
27   else
28     HAVE_TRUNCATE=0
29   fi
32 # Prerequisites of lib/truncate.c.
33 AC_DEFUN([gl_PREREQ_TRUNCATE], [:])