summaryrefslogtreecommitdiffstats
path: root/src/xspawn.c
Commit message (Collapse)AuthorAgeFilesLines
* xspawn: API tweaksTavian Barnes2023-11-151-22/+30
|
* Initial support for Cosmopolitan LibcTavian Barnes2023-11-101-1/+24
|
* xspawn: Do $PATH resolution up-frontTavian Barnes2023-11-071-21/+19
| | | | | | | | | posix_spawnp() is typically implemented like execvp(), i.e., by repeatedly trying execv() with each $PATH component until it succeeds. This is much slower than resolving the executable path up-front and then calling execv() once, so do that. Fixes: https://github.com/tavianator/bfs/pull/127#issuecomment-1795095126
* xspawn: Wrap the real posix_spawn() if possibleTavian Barnes2023-11-061-45/+122
| | | | Fixes #47.
* bfstd: New xwaitpid() wrapperTavian Barnes2023-10-311-1/+1
|
* Formatting fixesTavian Barnes2023-09-271-1/+1
|
* Use the new list macrosTavian Barnes2023-09-251-6/+5
|
* alloc: New header for memory allocation utilitiesTavian Barnes2023-06-201-1/+2
|
* list: Return the removed item from SLIST_POP()Tavian Barnes2023-05-201-3/+1
|
* config: Provide <stdalign.h> and <stdbool.h>Tavian Barnes2023-05-111-1/+0
| | | | In anticipation of C23, since those headers won't be necessary any more.
* style: Don't use tabs to indent preprocessor directivesTavian Barnes2023-05-031-1/+1
|
* list: Use macros instead of type-erased listsTavian Barnes2023-03-311-7/+8
|
* xspawn: Use list.h for the action listTavian Barnes2023-03-291-19/+17
|
* Replace license boilerplate with SPDX tagsTavian Barnes2023-01-251-15/+2
| | | | | | | And while I'm at it, remove years from copyright declarations. Link: https://spdx.dev/about/ Link: https://daniel.haxx.se/blog/2023/01/08/copyright-without-years/
* Fix includesTavian Barnes2022-11-061-0/+2
|
* bfstd: Rename from util and reorganize itTavian Barnes2022-11-061-1/+1
|
* config: Split out some of util.h into a new headerTavian Barnes2022-11-061-0/+1
|
* util: Get rid of BFS_HAS_INCLUDE() wrapper for __has_include()Tavian Barnes2022-11-061-1/+1
| | | | | | | | | Since __has_include() needs special preprocessing rules (e.g. not expanding `linux` in `__has_include(<linux/stat.h>)`, macros that expand to __has_include() do not necessarily behave correctly. Instead, we have to directly test `#if __has_include(...)`. See https://bugs.llvm.org/show_bug.cgi?id=37990 for more details.
* xspawn: Use _PATH_DEFPATH if _CS_PATH is not definedTavian Barnes2022-11-061-2/+10
| | | | | And set errno correctly if neither one is. Fixes tests/posix/exec_nopath on Android.
* util: Stub out confstr() on AndroidTavian Barnes2022-10-171-3/+5
|
* Source / Include Folder (#88)トトも2022-04-161-0/+318
Moved Source Files Into `src` Folder