Laurent Vivier | e3a6c82 | 2020-03-10 11:34:00 +0100 | [diff] [blame] | 1 | TBL_LIST="\ |
| 2 | arch/alpha/kernel/syscalls/syscall.tbl,linux-user/alpha/syscall.tbl \ |
| 3 | arch/arm/tools/syscall.tbl,linux-user/arm/syscall.tbl \ |
Laurent Vivier | f5afe73 | 2024-09-20 17:10:29 +0200 | [diff] [blame] | 4 | scripts/syscall.tbl,linux-user/aarch64/syscall_64.tbl \ |
Laurent Vivier | e7e6cc5 | 2024-09-20 17:10:32 +0200 | [diff] [blame] | 5 | scripts/syscall.tbl,linux-user/hexagon/syscall.tbl \ |
Laurent Vivier | c52e405 | 2024-09-20 17:10:33 +0200 | [diff] [blame] | 6 | scripts/syscall.tbl,linux-user/loongarch64/syscall.tbl \ |
Laurent Vivier | e3a6c82 | 2020-03-10 11:34:00 +0100 | [diff] [blame] | 7 | arch/m68k/kernel/syscalls/syscall.tbl,linux-user/m68k/syscall.tbl \ |
| 8 | arch/microblaze/kernel/syscalls/syscall.tbl,linux-user/microblaze/syscall.tbl \ |
| 9 | arch/mips/kernel/syscalls/syscall_n32.tbl,linux-user/mips64/syscall_n32.tbl \ |
| 10 | arch/mips/kernel/syscalls/syscall_n64.tbl,linux-user/mips64/syscall_n64.tbl \ |
| 11 | arch/mips/kernel/syscalls/syscall_o32.tbl,linux-user/mips/syscall_o32.tbl \ |
Laurent Vivier | 656a46f | 2024-09-20 17:10:30 +0200 | [diff] [blame] | 12 | scripts/syscall.tbl,linux-user/openrisc/syscall.tbl \ |
Laurent Vivier | e3a6c82 | 2020-03-10 11:34:00 +0100 | [diff] [blame] | 13 | arch/parisc/kernel/syscalls/syscall.tbl,linux-user/hppa/syscall.tbl \ |
| 14 | arch/powerpc/kernel/syscalls/syscall.tbl,linux-user/ppc/syscall.tbl \ |
Laurent Vivier | 5281a19 | 2024-09-20 17:10:31 +0200 | [diff] [blame] | 15 | scripts/syscall.tbl,linux-user/riscv/syscall.tbl \ |
Laurent Vivier | e3a6c82 | 2020-03-10 11:34:00 +0100 | [diff] [blame] | 16 | arch/s390/kernel/syscalls/syscall.tbl,linux-user/s390x/syscall.tbl \ |
| 17 | arch/sh/kernel/syscalls/syscall.tbl,linux-user/sh4/syscall.tbl \ |
| 18 | arch/sparc/kernel/syscalls/syscall.tbl,linux-user/sparc64/syscall.tbl \ |
| 19 | arch/sparc/kernel/syscalls/syscall.tbl,linux-user/sparc/syscall.tbl \ |
| 20 | arch/x86/entry/syscalls/syscall_32.tbl,linux-user/i386/syscall_32.tbl \ |
| 21 | arch/x86/entry/syscalls/syscall_64.tbl,linux-user/x86_64/syscall_64.tbl \ |
| 22 | arch/xtensa/kernel/syscalls/syscall.tbl,linux-user/xtensa/syscall.tbl\ |
| 23 | " |
| 24 | |
| 25 | linux="$1" |
| 26 | output="$2" |
| 27 | |
| 28 | if [ -z "$linux" ] || ! [ -d "$linux" ]; then |
| 29 | cat << EOF |
| 30 | usage: update-syscalltbl.sh LINUX_PATH [OUTPUT_PATH] |
| 31 | |
| 32 | LINUX_PATH Linux kernel directory to obtain the syscall.tbl from |
| 33 | OUTPUT_PATH output directory, usually the qemu source tree (default: $PWD) |
| 34 | EOF |
| 35 | exit 1 |
| 36 | fi |
| 37 | |
| 38 | if [ -z "$output" ]; then |
| 39 | output="$PWD" |
| 40 | fi |
| 41 | |
| 42 | for entry in $TBL_LIST; do |
| 43 | OFS="$IFS" |
| 44 | IFS=, |
| 45 | set $entry |
| 46 | src=$1 |
| 47 | dst=$2 |
| 48 | IFS="$OFS" |
| 49 | if ! cp "$linux/$src" "$output/$dst" ; then |
| 50 | echo "Cannot copy $linux/$src to $output/$dst" 1>&2 |
| 51 | exit 1 |
| 52 | fi |
| 53 | done |
| 54 | |