On Monday, February 17, 2020, Laurent Vivier <laur...@vivier.eu> wrote:

> scripts/update-syscalltbl.sh has the list of syscall.tbl to update and
> can copy them from the linux source directory
>
> Signed-off-by: Laurent Vivier <laur...@vivier.eu>
> ---


Reviewed-by: Aleksandar Markovic <amarko...@wavecomp.com>


>  MAINTAINERS                  |  1 +
>  scripts/update-syscalltbl.sh | 49 ++++++++++++++++++++++++++++++++++++
>  2 files changed, 50 insertions(+)
>  create mode 100755 scripts/update-syscalltbl.sh
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 1740a4fddc14..dac93f447544 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -2422,6 +2422,7 @@ S: Maintained
>  F: linux-user/
>  F: default-configs/*-linux-user.mak
>  F: scripts/qemu-binfmt-conf.sh
> +F: scripts/update-syscalltbl.sh
>
>  Tiny Code Generator (TCG)
>  -------------------------
> diff --git a/scripts/update-syscalltbl.sh b/scripts/update-syscalltbl.sh
> new file mode 100755
> index 000000000000..2d23e5680075
> --- /dev/null
> +++ b/scripts/update-syscalltbl.sh
> @@ -0,0 +1,49 @@
> +TBL_LIST="\
> +arch/alpha/kernel/syscalls/syscall.tbl,linux-user/alpha/syscall.tbl \
> +arch/arm/tools/syscall.tbl,linux-user/arm/syscall.tbl \
> +arch/m68k/kernel/syscalls/syscall.tbl,linux-user/m68k/syscall.tbl \
> +arch/microblaze/kernel/syscalls/syscall.tbl,linux-user/microblaze/syscall.tbl
> \
> +arch/mips/kernel/syscalls/syscall_n32.tbl,linux-user/mips64/syscall_n32.tbl
> \
> +arch/mips/kernel/syscalls/syscall_n64.tbl,linux-user/mips64/syscall_n64.tbl
> \
> +arch/mips/kernel/syscalls/syscall_o32.tbl,linux-user/mips/syscall_o32.tbl
> \
> +arch/parisc/kernel/syscalls/syscall.tbl,linux-user/hppa/syscall.tbl \
> +arch/powerpc/kernel/syscalls/syscall.tbl,linux-user/ppc/syscall.tbl \
> +arch/s390/kernel/syscalls/syscall.tbl,linux-user/s390x/syscall.tbl \
> +arch/sh/kernel/syscalls/syscall.tbl,linux-user/sh4/syscall.tbl \
> +arch/sparc/kernel/syscalls/syscall.tbl,linux-user/sparc64/syscall.tbl \
> +arch/sparc/kernel/syscalls/syscall.tbl,linux-user/sparc/syscall.tbl \
> +arch/x86/entry/syscalls/syscall_32.tbl,linux-user/i386/syscall_32.tbl \
> +arch/x86/entry/syscalls/syscall_64.tbl,linux-user/x86_64/syscall_64.tbl \
> +arch/xtensa/kernel/syscalls/syscall.tbl,linux-user/xtensa/syscall.tbl\
> +"
> +
> +linux="$1"
> +output="$2"
> +
> +if [ -z "$linux" ] || ! [ -d "$linux" ]; then
> +    cat << EOF
> +usage: update-syscalltbl.sh LINUX_PATH [OUTPUT_PATH]
> +
> +LINUX_PATH      Linux kernel directory to obtain the syscall.tbl from
> +OUTPUT_PATH     output directory, usually the qemu source tree (default:
> $PWD)
> +EOF
> +    exit 1
> +fi
> +
> +if [ -z "$output" ]; then
> +    output="$PWD"
> +fi
> +
> +for entry in $TBL_LIST; do
> +    OFS="$IFS"
> +    IFS=,
> +    set $entry
> +    src=$1
> +    dst=$2
> +    IFS="$OFS"
> +    if ! cp "$linux/$src" "$output/$dst" ; then
> +        echo "Cannot copy $linux/$src to $output/$dst" 1>&2
> +        exit 1
> +    fi
> +done
> +
> --
> 2.24.1
>
>
>

Reply via email to