fuzz: use qemu_get_exec_dir
[qemu.git] / scripts / update-syscalltbl.sh
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 \
4 arch/m68k/kernel/syscalls/syscall.tbl,linux-user/m68k/syscall.tbl \
5 arch/microblaze/kernel/syscalls/syscall.tbl,linux-user/microblaze/syscall.tbl \
6 arch/mips/kernel/syscalls/syscall_n32.tbl,linux-user/mips64/syscall_n32.tbl \
7 arch/mips/kernel/syscalls/syscall_n64.tbl,linux-user/mips64/syscall_n64.tbl \
8 arch/mips/kernel/syscalls/syscall_o32.tbl,linux-user/mips/syscall_o32.tbl \
9 arch/parisc/kernel/syscalls/syscall.tbl,linux-user/hppa/syscall.tbl \
10 arch/powerpc/kernel/syscalls/syscall.tbl,linux-user/ppc/syscall.tbl \
11 arch/s390/kernel/syscalls/syscall.tbl,linux-user/s390x/syscall.tbl \
12 arch/sh/kernel/syscalls/syscall.tbl,linux-user/sh4/syscall.tbl \
13 arch/sparc/kernel/syscalls/syscall.tbl,linux-user/sparc64/syscall.tbl \
14 arch/sparc/kernel/syscalls/syscall.tbl,linux-user/sparc/syscall.tbl \
15 arch/x86/entry/syscalls/syscall_32.tbl,linux-user/i386/syscall_32.tbl \
16 arch/x86/entry/syscalls/syscall_64.tbl,linux-user/x86_64/syscall_64.tbl \
17 arch/xtensa/kernel/syscalls/syscall.tbl,linux-user/xtensa/syscall.tbl\
18 "
19
20 linux="$1"
21 output="$2"
22
23 if [ -z "$linux" ] || ! [ -d "$linux" ]; then
24 cat << EOF
25 usage: update-syscalltbl.sh LINUX_PATH [OUTPUT_PATH]
26
27 LINUX_PATH Linux kernel directory to obtain the syscall.tbl from
28 OUTPUT_PATH output directory, usually the qemu source tree (default: $PWD)
29 EOF
30 exit 1
31 fi
32
33 if [ -z "$output" ]; then
34 output="$PWD"
35 fi
36
37 for entry in $TBL_LIST; do
38 OFS="$IFS"
39 IFS=,
40 set $entry
41 src=$1
42 dst=$2
43 IFS="$OFS"
44 if ! cp "$linux/$src" "$output/$dst" ; then
45 echo "Cannot copy $linux/$src to $output/$dst" 1>&2
46 exit 1
47 fi
48 done
49