Hi/2.

Bruno Haible wrote:
> Hi,
> 
> KO Myung-Hun wrote:
>> These patches allow to use a directory argument of create_pipe() on
>> OS/2 kLIBC.
> 
> Four things I don't understand:
> 
> - You still don't have posix_spawn support for this platform?
>   With posix_spawn working, no extra code would be needed in spawn-pipe.c.
>   Is os2-spawn.[hc] working or not?
> 

posix_spawn support is on OS/2 kLIBC, but it's partial. Especially, a
change directory feature is not supported.

os2-spawn.[ch] does not include any codes for spawn itself, but codes
for preparing.

> - What is the point of adding wait() and waitid() in patch 1? Nothing in
>   spawn-pipe.c nor wait-process.c uses wait(), waitid().
> 

spawn-pipe.c returns a pid of a child process. If it passes to wait()
and/or waitid(), wait() and waitid() of libcx should be used.

GNULIB does not allow to use wait(), waitid() and/or waitpid() for a pid
of a child process returned by spawn-pipe.c ?

> - What is the point of the module dependency changes in patch 2?
> 

Normal wait(), waitid() and waitpid() of kLIBC do not understand a pid
of a child process returned by spawn2() of libcx. Frankly speaking,
spawn2() returns a pid of a grand child because it uses a intermediate
process to support some features such as changing directory when
launching a child process if P_2_THREADSAFE is specified.

See the following link for details:


https://github.com/bitwiseworks/libcx/blob/master/src/spawn/libcx/spawn2.h#L194

> - Why is there a separate libcx0? Why is its functionality not folded into
>   libc?
> 

I know, it's a final goal of libcx project. See for details:


https://github.com/bitwiseworks/libcx/blob/master/README.md#libcx---klibc-extension-library

Thanks!

-- 
KO Myung-Hun

Korean OS/2 User Community : https://www.os2.kr/

Reply via email to