Define mkostemp(s) and <spawn.h> bindings on DragonFly#4291
Conversation
define functions (identical to FreeBSD): - posix_spawn - posix_spawnp - posix_spawnattr_init - posix_spawnattr_destroy - posix_spawnattr_getsigdefault - posix_spawnattr_setsigdefault - posix_spawnattr_getsigmask - posix_spawnattr_setsigmask - posix_spawnattr_getflags - posix_spawnattr_setflags - posix_spawnattr_getpgroup - posix_spawnattr_setpgroup - posix_spawnattr_getschedpolicy - posix_spawnattr_setschedpolicy - posix_spawnattr_getschedparam - posix_spawnattr_setschedparam - posix_spawn_file_actions_init - posix_spawn_file_actions_destroy - posix_spawn_file_actions_addopen - posix_spawn_file_actions_addclose - posix_spawn_file_actions_adddup2 define constants (identical to FreeBSD): - POSIX_SPAWN_RESETIDS - POSIX_SPAWN_SETPGROUP - POSIX_SPAWN_SETSCHEDPARAM - POSIX_SPAWN_SETSCHEDULER - POSIX_SPAWN_SETSIGDEF - POSIX_SPAWN_SETSIGMASK
|
The signatures look correct to me, but a lot of these are defined in
Are permalinks to Dragonfly's libc headers available anywhere? Cc @asomers for the FreeBSD family, I'm not sure if we have a dedicated person for Dragonfly. |
|
actually all the changes are shared with FreeBSD. So I didn't realize the "mod.rs" in the parent directory was "shared" between FreeBSD and DragonFly. I was attempted to fix DragonFly without touching FreeBSD. However, I can certainly relocate the definitions from Freebsd/mod.rs to the parent mod.rs, and drop the changes to dragonfly/mod.rs, if that's what is desired. |
That would be preferable if they work for both, we try to keep definitions deduplicated where possible.
#4290 merged a few hours ago which added a function at the end of the same block, not much of a conflict but it can't merge automatically. |
|
I'm probably going to make another branch, push another PR, and close this one with a reference. |
|
replacement PR: #4294 |
They are as-is with a merge commit (GH doesn't allow much configuration with merge queues), I ask the author to squash/clean up history if needed. Atomic commits are fine as long as it builds between (since I do a lot of cherry picks). |
Description
This changeset defines bindings for mkostemp, mkostemps, and the <spawn.h> functions on DragonFly.
These are required to build fish 4.0.0 (https://github.com/fish-shell/fish-shell)
Sources
<spawn.h>
<stdlib.h>
Checklist
libc-test/semverhave been updated*LASTor*MAXareincluded (see #3131)
cd libc-test && cargo test --target mytarget);especially relevant for platforms that may not be checked in CI