1*4882a593Smuzhiyun#!/bin/sh 2*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 3*4882a593Smuzhiyun 4*4882a593Smuzhiyunin="$1" 5*4882a593Smuzhiyunout="$2" 6*4882a593Smuzhiyunmy_abis=`echo "($3)" | tr ',' '|'` 7*4882a593Smuzhiyunprefix="$4" 8*4882a593Smuzhiyunoffset="$5" 9*4882a593Smuzhiyun 10*4882a593Smuzhiyunfileguard=_ASM_X86_`basename "$out" | sed \ 11*4882a593Smuzhiyun -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ 12*4882a593Smuzhiyun -e 's/[^A-Z0-9_]/_/g' -e 's/__/_/g'` 13*4882a593Smuzhiyungrep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | ( 14*4882a593Smuzhiyun echo "#ifndef ${fileguard}" 15*4882a593Smuzhiyun echo "#define ${fileguard} 1" 16*4882a593Smuzhiyun echo "" 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun max=0 19*4882a593Smuzhiyun while read nr abi name entry ; do 20*4882a593Smuzhiyun if [ -z "$offset" ]; then 21*4882a593Smuzhiyun echo "#define __NR_${prefix}${name} $nr" 22*4882a593Smuzhiyun else 23*4882a593Smuzhiyun echo "#define __NR_${prefix}${name} ($offset + $nr)" 24*4882a593Smuzhiyun fi 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun max=$nr 27*4882a593Smuzhiyun done 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun echo "" 30*4882a593Smuzhiyun echo "#ifdef __KERNEL__" 31*4882a593Smuzhiyun echo "#define __NR_${prefix}syscall_max $max" 32*4882a593Smuzhiyun echo "#endif" 33*4882a593Smuzhiyun echo "" 34*4882a593Smuzhiyun echo "#endif /* ${fileguard} */" 35*4882a593Smuzhiyun) > "$out" 36