annotate m4/tmpfile.m4 @ 19484:10eb9086bea0

maint: Run 'make update-copyright'
author Paul Eggert <eggert@cs.ucla.edu>
date Mon, 01 Jan 2018 00:57:25 +0000
parents 12df2165ec1c
children beb2ad957aca
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15128
c7623a5ec63d tmpfile: Move AC_LIBOBJ invocations to module description.
Bruno Haible <bruno@clisp.org>
parents: 14079
diff changeset
1 # tmpfile.m4 serial 2
19484
10eb9086bea0 maint: Run 'make update-copyright'
Paul Eggert <eggert@cs.ucla.edu>
parents: 18626
diff changeset
2 # Copyright (C) 2007, 2009-2018 Free Software Foundation, Inc.
8162
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
3 # This file is free software; the Free Software Foundation
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
4 # gives unlimited permission to copy and/or distribute it,
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
5 # with or without modifications, as long as this notice is preserved.
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
6
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
7 # Written by Ben Pfaff.
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
8
13137
fd3c9fa89efe tmpfile: Fix C++ test error on mingw.
Bruno Haible <bruno@clisp.org>
parents: 12559
diff changeset
9 # Check whether to use a replacement tmpfile() function.
fd3c9fa89efe tmpfile: Fix C++ test error on mingw.
Bruno Haible <bruno@clisp.org>
parents: 12559
diff changeset
10
8162
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
11 # The native Windows tmpfile function always tries to put the temporary
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
12 # file in the root directory. (This behaviour is even documented in
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
13 # Microsoft's documentation!) This often fails for ordinary users who
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
14 # don't have the permissions to write in the root directory.
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
15 #
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
16 # We can't test for tmpfile even at runtime, since our test program
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
17 # might be running with privileges that allow it to write to the root
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
18 # directory, even though tmpfile wouldn't work in general. Instead,
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
19 # just test for a Windows platform (excluding Cygwin).
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
20
13138
0ea8feb1eb60 Rename gl_TMPFILE.
Bruno Haible <bruno@clisp.org>
parents: 13137
diff changeset
21 AC_DEFUN([gl_FUNC_TMPFILE], [
13137
fd3c9fa89efe tmpfile: Fix C++ test error on mingw.
Bruno Haible <bruno@clisp.org>
parents: 12559
diff changeset
22 AC_REQUIRE([gl_STDIO_H_DEFAULTS])
8162
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
23 AC_CACHE_CHECK([whether tmpfile should be overridden],
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
24 [gl_cv_func_tmpfile_unusable],
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
25 [AC_EGREP_CPP([choke me], [
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
26 #if (defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
27 choke me
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
28 #endif
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
29 ],
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
30 [gl_cv_func_tmpfile_unusable=yes],
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
31 [gl_cv_func_tmpfile_unusable=no])])
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
32 if test $gl_cv_func_tmpfile_unusable = yes; then
13137
fd3c9fa89efe tmpfile: Fix C++ test error on mingw.
Bruno Haible <bruno@clisp.org>
parents: 12559
diff changeset
33 REPLACE_TMPFILE=1
8162
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
34 fi
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
35 ])
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
36
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
37 # Prerequisites of lib/tmpfile.c.
46995f2e94ca New module 'tmpfile'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
38 AC_DEFUN([gl_PREREQ_TMPFILE], [:])