zig/lib/std/c
Jakub Konka dd55b72949 std: introduce posix_spawn as an alt to fork-exec
Currently, the new API will only be available on macOS with
the intention of adding more POSIX systems to it incrementally
(such as Linux, etc.).

Changes:
* add `posix_spawn` wrappers in a separate container in
  `os/posix_spawn.zig`
* rewrite `ChildProcess.spawnPosix` using `posix_spawn` targeting macOS
  as `ChildProcess.spawnMacos`
* introduce a `posix_spawn` specific `std.c.waitpid` wrapper which
  does return an error in case the child process failed to exec - this
  is required for any process that was spawned using `posix_spawn`
  mechanism as, by definition, the errors returned by `posix_spawn`
  routine cover only the `fork`-equivalent; `pre-exec()` and `exec()`
  steps are covered by a catch-all error `ECHILD` returned by `waitpid`
  on unsuccessful execution, e.g., no such file error, etc.
2022-03-16 19:40:44 +01:00
..
darwin macos: add more mach primitives 2022-03-13 09:42:24 +01:00
darwin.zig std: introduce posix_spawn as an alt to fork-exec 2022-03-16 19:40:44 +01:00
dragonfly.zig Adds Linux support for POSIX file locking with fcntl 2022-02-15 13:22:50 +02:00
emscripten.zig remove redundant license headers from zig standard library 2021-08-24 12:25:09 -07:00
freebsd.zig Adds Linux support for POSIX file locking with fcntl 2022-02-15 13:22:50 +02:00
fuchsia.zig remove redundant license headers from zig standard library 2021-08-24 12:25:09 -07:00
haiku.zig add constant for haiku 2022-02-26 10:53:13 +02:00
hermit.zig std: reorganization that allows new usingnamespace semantics 2021-09-01 17:54:06 -07:00
linux.zig c/linux: Fix stat struct definition for SPARCv9 2022-03-13 16:48:02 -04:00
minix.zig remove redundant license headers from zig standard library 2021-08-24 12:25:09 -07:00
netbsd.zig Adds Linux support for POSIX file locking with fcntl 2022-02-15 13:22:50 +02:00
openbsd.zig fix formatting in openbsd.zig 2022-02-20 11:58:42 +02:00
solaris.zig Adds Linux support for POSIX file locking with fcntl 2022-02-15 13:22:50 +02:00
tokenizer.zig std lib API deprecations for the upcoming 0.9.0 release 2021-11-30 00:13:07 -07:00
wasi.zig stdlib: Add emulated CWD to std.os for WASI targets 2022-03-03 14:31:49 -07:00
windows.zig stage1, stage2: rename c_void to anyopaque (#10316) 2021-12-19 00:24:45 -05:00