From fc00c656c96528112d05cf0edf8631bd5eaea446 Mon Sep 17 00:00:00 2001 From: Kacper Date: Sun, 7 Dec 2025 20:10:31 +0100 Subject: Add build system scaffolding and libc headers --- lib/libc/unistd/execl.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 lib/libc/unistd/execl.c (limited to 'lib/libc/unistd/execl.c') diff --git a/lib/libc/unistd/execl.c b/lib/libc/unistd/execl.c new file mode 100644 index 00000000..5dc7bc74 --- /dev/null +++ b/lib/libc/unistd/execl.c @@ -0,0 +1,26 @@ +#include +#include +#include + +int execl(const char *path, const char *argv0, ...) +{ + int argc; + va_list ap; + va_start(ap, argv0); + + argc = 1; + while (va_arg(ap, const char *) != NULL) { + argc++; + } + va_end(ap); + + char *argv[argc + 1]; + va_start(ap, argv0); + for (int i = 1; i < argc; i++) { + argv[i] = (char *)va_arg(ap, const char *); + } + argv[argc] = NULL; + va_end(ap); + + return execvp(path, argv); +} -- cgit v1.2.3