annotate lib/execute.h @ 7733:9d60f39f35c1

* MODULES.html.sh: New module wctype. * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files. * lib/fnmatch.c: Don't bother to include <wchar.h> before <wctype.h>, since the new wctype module should fix this. * lib/quotearg.c: Include <wctype.h> unconditionally, since the wctype module should arrange for it. * lib/regex_internal.h: Likewise. * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint, since the wctype module should handle this now. * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h. * modules/fnmatch (Depends-on): Add wctype. * modules/quotearg (Depends-on): Likewise. * modules/regex (Depends-on): Likewise.
author Paul Eggert <eggert@cs.ucla.edu>
date Fri, 22 Dec 2006 00:21:54 +0000
parents a48fb0e98c8c
children bbbbbf4cd1c5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4936
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
1 /* Creation of autonomous subprocesses.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
2 Copyright (C) 2001-2003 Free Software Foundation, Inc.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
3 Written by Bruno Haible <haible@clisp.cons.org>, 2001.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
4
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
5 This program is free software; you can redistribute it and/or modify
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
6 it under the terms of the GNU General Public License as published by
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
7 the Free Software Foundation; either version 2, or (at your option)
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
8 any later version.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
9
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
10 This program is distributed in the hope that it will be useful,
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
13 GNU General Public License for more details.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
14
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
16 along with this program; if not, write to the Free Software Foundation,
5848
a48fb0e98c8c *** empty log message ***
Paul Eggert <eggert@cs.ucla.edu>
parents: 4936
diff changeset
17 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
4936
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
18
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
19 #ifndef _EXECUTE_H
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
20 #define _EXECUTE_H
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
21
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
22 #include <stdbool.h>
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
23
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
24 /* Execute a command, optionally redirecting any of the three standard file
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
25 descriptors to /dev/null. Return its exit code.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
26 If it didn't terminate correctly, exit if exit_on_error is true, otherwise
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
27 return 127.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
28 If ignore_sigpipe is true, consider a subprocess termination due to SIGPIPE
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
29 as equivalent to a success. This is suitable for processes whose only
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
30 purpose is to write to standard output.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
31 If slave_process is true, the child process will be terminated when its
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
32 creator receives a catchable fatal signal.
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
33 It is recommended that no signal is blocked or ignored while execute()
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
34 is called. See pipe.h for the reason. */
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
35 extern int execute (const char *progname,
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
36 const char *prog_path, char **prog_argv,
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
37 bool ignore_sigpipe,
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
38 bool null_stdin, bool null_stdout, bool null_stderr,
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
39 bool slave_process, bool exit_on_error);
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
40
0fb731aa9b43 New module 'execute'.
Bruno Haible <bruno@clisp.org>
parents:
diff changeset
41 #endif /* _EXECUTE_H */