[GRASS-dev] Re: 'g.gui wxpython' won't work in wingrass as wxgui is
a shell script
Ivan Shmakov
ivan at theory.asu.ru
Thu Feb 28 12:51:21 EST 2008
>>>>> Glynn Clements <glynn at gclements.plus.com> writes:
[...]
>> So far as a Windows implementation of G_spawn_ex() is concerned, a
>> partial implementation using spawnvp() or spawnvpe() should be
>> relatively straightforward, and better than nothing.
> I have also committed a minimal Windows implementation of
> G_[v]spawn_ex(), as outlined below. It hasn't been tested yet,
> though.
JFYI: Gnulib contains execute (), which is meant to spawn
processes on the POSIX and W32 systems in a portable manner:
$ nl -ba gnulib/lib/execute.h
...
23 /* Execute a command, optionally redirecting any of the three standard file
24 descriptors to /dev/null. Return its exit code.
25 If it didn't terminate correctly, exit if exit_on_error is true, otherwise
26 return 127.
27 If ignore_sigpipe is true, consider a subprocess termination due to SIGPIPE
28 as equivalent to a success. This is suitable for processes whose only
29 purpose is to write to standard output.
30 If slave_process is true, the child process will be terminated when its
31 creator receives a catchable fatal signal.
32 It is recommended that no signal is blocked or ignored while execute()
33 is called. See pipe.h for the reason. */
34 extern int execute (const char *progname,
35 const char *prog_path, char **prog_argv,
36 bool ignore_sigpipe,
37 bool null_stdin, bool null_stdout, bool null_stderr,
38 bool slave_process, bool exit_on_error);
...
$
Apparently, the only problem preventing the use of Gnulib in
GRASS is that it may require a newer Autoconf. (I'm still
planning to get my hands on both of these problems.)
[...]
More information about the grass-dev
mailing list