~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/scripts/syscallhdr.sh

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /scripts/syscallhdr.sh (Version linux-6.12-rc7) and /scripts/syscallhdr.sh (Version linux-5.4.285)


  1 #!/bin/sh                                         
  2 # SPDX-License-Identifier: GPL-2.0-only           
  3 #                                                 
  4 # Generate a syscall number header.               
  5 #                                                 
  6 # Each line of the syscall table should have t    
  7 #                                                 
  8 # NR ABI NAME [NATIVE] [COMPAT]                   
  9 #                                                 
 10 # NR       syscall number                         
 11 # ABI      ABI name                               
 12 # NAME     syscall name                           
 13 # NATIVE   native entry point (optional)          
 14 # COMPAT   compat entry point (optional)          
 15                                                   
 16 set -e                                            
 17                                                   
 18 usage() {                                         
 19         echo >&2 "usage: $0 [--abis ABIS] [--e    
 20         echo >&2                                  
 21         echo >&2 "  INFILE    input syscall ta    
 22         echo >&2 "  OUTFILE   output header fi    
 23         echo >&2                                  
 24         echo >&2 "options:"                       
 25         echo >&2 "  --abis ABIS        ABI(s)     
 26         echo >&2 "  --emit-nr          Emit th    
 27         echo >&2 "  --offset OFFSET    The off    
 28         echo >&2 "  --prefix PREFIX    The pre    
 29         exit 1                                    
 30 }                                                 
 31                                                   
 32 # default unless specified by options             
 33 abis=                                             
 34 emit_nr=                                          
 35 offset=                                           
 36 prefix=                                           
 37                                                   
 38 while [ $# -gt 0 ]                                
 39 do                                                
 40         case $1 in                                
 41         --abis)                                   
 42                 abis=$(echo "($2)" | tr ',' '|    
 43                 shift 2;;                         
 44         --emit-nr)                                
 45                 emit_nr=1                         
 46                 shift 1;;                         
 47         --offset)                                 
 48                 offset=$2                         
 49                 shift 2;;                         
 50         --prefix)                                 
 51                 prefix=$2                         
 52                 shift 2;;                         
 53         -*)                                       
 54                 echo "$1: unknown option" >&2     
 55                 usage;;                           
 56         *)                                        
 57                 break;;                           
 58         esac                                      
 59 done                                              
 60                                                   
 61 if [ $# -ne 2 ]; then                             
 62         usage                                     
 63 fi                                                
 64                                                   
 65 infile="$1"                                       
 66 outfile="$2"                                      
 67                                                   
 68 guard=_UAPI_ASM_$(basename "$outfile" |           
 69         sed -e 'y/abcdefghijklmnopqrstuvwxyz/A    
 70         -e 's/[^A-Z0-9_]/_/g' -e 's/__/_/g')      
 71                                                   
 72 grep -E "^[0-9A-Fa-fXx]+[[:space:]]+$abis" "$i    
 73         echo "#ifndef $guard"                     
 74         echo "#define $guard"                     
 75         echo                                      
 76                                                   
 77         max=0                                     
 78         while read nr abi name native compat ;    
 79                                                   
 80                 max=$nr                           
 81                                                   
 82                 if [ -n "$offset" ]; then         
 83                         nr="($offset + $nr)"      
 84                 fi                                
 85                                                   
 86                 echo "#define __NR_$prefix$nam    
 87         done                                      
 88                                                   
 89         if [ -n "$emit_nr" ]; then                
 90                 echo                              
 91                 echo "#ifdef __KERNEL__"          
 92                 echo "#define __NR_${prefix}sy    
 93                 echo "#endif"                     
 94         fi                                        
 95                                                   
 96         echo                                      
 97         echo "#endif /* $guard */"                
 98 } > "$outfile"                                    
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php