[PATCH 0/9] tools/nolibc: fix build issues on aarch64 after unistd cleanup

From: Willy Tarreau
Date: Thu Jan 21 2021 - 02:27:27 EST


Hi Paul,

as per the recent discussion with Mark, I've updated the nolibc header to
reflect latest upstream which is needed to build on arm64, and I performed
the few cleanups that Mark rightfully suggested.

The following patches were taken from the upstream code and this time I
carefully copied the original commit IDs in hope not to miss such fixes
anymore in the future.

I've build-tested these on x86_64, i586, arm(v5 & v7), arm64, mips and
mipsel, using compilers ranging from gcc 3.4 to gcc 9.3 so I think we're
good for these archs now.

Just let me know if you prefer a pull request, as I can do that as well.

Thanks!
Willy


Willy Tarreau (9):
tools/nolibc: the definition dup() was missing
tools/nolibc: make dup2() rely on dup3() when available
tools/nolibc: make getpgrp() fall back to getpgid(0)
tools/nolibc: implement fork() based on clone()
tools/nolibc: implement poll() based on ppoll()
tools/nolibc: get timeval, timespec and timezone from linux/time.h
tools/nolibc: remove incorrect definitions of __ARCH_WANT_*
tools/nolibc: emit a detailed error when missing alternate syscall
number definitions
tools/nolibc: fix position of -lgcc in the documented example

tools/include/nolibc/nolibc.h | 153 +++++++++++++++++++++++++---------
1 file changed, 115 insertions(+), 38 deletions(-)

--
2.28.0