add linux_emul base, reorganize docs
[openbsd_emul.git] / linux_emul_base / linuxcalltab.awk
CommitLineData
cae36a52 1#!/bin/awk -f
2BEGIN {
3 nsys = 0
4}
5
6/^#/ {
7 next
8}
9
10{
11 i=$1
12 if(nsys > i){
13 print "BROKEN TABLE: "nsys" > "i
14 exit
15 }
16 while(nsys < i){
17 sysarg[nsys] = 0
18 sysnam[nsys] = "nosys"nsys
19 sysfun[nsys] = "sys_nosys"
20 nsys++;
21 }
22 sysarg[nsys] = $2
23 sysnam[nsys] = $3
24 sysfun[nsys] = $4
25 nsys++
26}
27
28END {
29 print "static Linuxcall linuxcalltab[] = {"
30 for(i=0; i<nsys; i++){
31 print " { /* "i" */"
32 print " .name = \""sysnam[i]"\","
33 print " .func = "sysfun[i]","
34 print " .stub = fcall"sysarg[i]","
35 print " },"
36 }
37 print "};"
38 print ""
39}