Our devel/boost uses waitid(2) but OpenBSD does not implement it yet.

In file included from /usr/local/include/boost/process.hpp:25:
In file included from /usr/local/include/boost/process/group.hpp:32:
/usr/local/include/boost/process/detail/posix/wait_group.hpp:38:17: error: no 
member named 'waitid' in the global namespace
         ret = ::waitid(P_PGID, p.grp, &status, WEXITED | WNOHANG);
               ~~^
/usr/local/include/boost/process/detail/posix/wait_group.hpp:38:24: error: use 
of undeclared identifier 'P_PGID'
         ret = ::waitid(P_PGID, p.grp, &status, WEXITED | WNOHANG);
                        ^
/usr/local/include/boost/process/detail/posix/wait_group.hpp:38:48: error: use 
of undeclared identifier 'WEXITED'
         ret = ::waitid(P_PGID, p.grp, &status, WEXITED | WNOHANG);
                                                ^
/usr/local/include/boost/process/detail/posix/wait_group.hpp:74:17: error: no 
member named 'waitid' in the global namespace
         ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG);
               ~~^
/usr/local/include/boost/process/detail/posix/wait_group.hpp:74:24: error: use 
of undeclared identifier 'P_PGID'
         ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG);
                        ^
/usr/local/include/boost/process/detail/posix/wait_group.hpp:74:49: error: use 
of undeclared identifier 'WEXITED'
         ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG);
                                                 ^
/usr/local/include/boost/process/detail/posix/wait_group.hpp:74:59: error: use 
of undeclared identifier 'WSTOPPED'
         ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG);


Brad (boost co-maintainer) has found out the following, which I would
like to share here and ask for feedback:

waitid(2) is part of newer POSIX. Looks like waitid(2) was introduced
around Boost 1.69.

https://github.com/boostorg/process/commits/develop/include/boost/process/detail/posix/wait_group.hpp
https://github.com/boostorg/process/commit/eea73753b572ec5df69b2a624cbacf7569fde835

NetBSD imported it in 2016:
https://github.com/NetBSD/src/commit/1abafffcad6331f872b7d8e74ea533ed83e864b4

Is there anything against importing this into OpenBSD? Does anyone have
this in their diff stack already? I would love to test it with an port
witch depends on boot/process.hpp

Rafael

Reply via email to