aboutgitcodelistschat:MatrixIRC
path: root/scripts
diff options
context:
space:
mode:
authorStefano Brivio <sbrivio@redhat.com>2023-05-02 09:48:50 +0200
committerStefano Brivio <sbrivio@redhat.com>2023-05-02 10:39:32 +0200
commit82b77505f9420f11d614c2ae0f74153ca4ee3cb5 (patch)
treeec93abd39cd8c7ff2818c7446da6cc01864b2ae1 /scripts
parenta2c20b2caf4e9cedb32b0930ffd7ca2e9ec72086 (diff)
downloadseitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.tar
seitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.tar.gz
seitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.tar.bz2
seitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.tar.lz
seitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.tar.xz
seitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.tar.zst
seitan-82b77505f9420f11d614c2ae0f74153ca4ee3cb5.zip
cooker updates spilling all over the place
Only tangentially related: - make seitan C99 again, so that I can build cooker without warnings - make Makefiles make use of the usual conventions about assigning directory paths in variables, drop numbers.h as requirement for cooker and make it convenient to run stand-alone Makefiles - fix up nr_syscalls.sh to be POSIX, otherwise it will give syntax errors on my system - define a single, common way to refer to offsets in gluten, and functions to use those offsets in a safe way. Immediates are gone: cooker will write any bit of "data" to the read-only section - call const what has to be const - define on-disk layout for gluten - add OP_NR (to check syscall numbers), rename OP_COPY_ARGS to OP_LOAD (it loads _selected_ stuff from arguments) As for cooker itself: - drop ARG_ and arg_ prefixes from struct names, and similar - add/rework functions to build OP_NR, OP_LOAD, OP_CMP, and to write constant data to gluten - add parsing for "compound" arguments, but that's not completely hooked into evaluation for numeric arguments yet Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/nr_syscalls.sh44
1 files changed, 22 insertions, 22 deletions
diff --git a/scripts/nr_syscalls.sh b/scripts/nr_syscalls.sh
index 380d6f1..5110a9b 100755
--- a/scripts/nr_syscalls.sh
+++ b/scripts/nr_syscalls.sh
@@ -27,31 +27,31 @@ FOOTER_NUMBERS="};
#endif"
-syscalls=(
- "accept"
- "bind"
- "connect"
- "getpeername"
- "getsockname"
- "getsockopt"
- "listen"
- "mount"
- "openat"
- "recvfrom"
- "recvmmsg"
- "recvmsg"
- "sendmmsg"
- "sendmsg"
- "sendto"
- "setsockopt"
- "shutdown"
- "socket"
- "socketpair"
-)
+syscalls="
+ accept
+ bind
+ connect
+ getpeername
+ getsockname
+ getsockopt
+ listen
+ mount
+ openat
+ recvfrom
+ recvmmsg
+ recvmsg
+ sendmmsg
+ sendmsg
+ sendto
+ setsockopt
+ shutdown
+ socket
+ socketpair
+"
printf '%s\n' "${HEADER_NUMBERS}" > "${OUT_NUMBERS}"
# syscall_nr - Get syscall number from compiler, also note in numbers.h
-__in="$(printf "#include <asm-generic/unistd.h>\n#include <sys/syscall.h>\n__NR_%s" ${syscalls[@]})"
+__in="$(for c in ${syscalls}; do printf "#include <asm-generic/unistd.h>\n#include <sys/syscall.h>\n__NR_%s" $c; done)"
__out="$(echo "${__in}" |cc -E -xc - -o - |sed -n '/\#.*$/!p'| sed '/^$/d')"
awk -v AS="${syscalls[*]}" -v BS="${__out[*]}" \