/* * This file is part of Jehanne. * * Copyright (C) 2022 Giacomo Tesio * * Jehanne is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, version 3 of the License. * * Jehanne is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Jehanne. If not, see . */ /* automatically generated by syscallh.rc.template */ #! fn toPascalCase { #! sed 's/^\(.\)\(.\+\)/echo -n \1 | tr a-z A-Z; echo \2/g' | rc #! } typedef enum Syscalls { #! ifs=' #! ' #! CONFIGURATION=`{sed -n '/^$/!{/^#/!p}' $JEHANNE/sys/src/sysconf/syscalls.rc.confs} #! for (line in $CONFIGURATION){ #! eval $line #! ENUM_NAME=Sys`{echo $NAME|toPascalCase} $ENUM_NAME = $ID, #! } } Syscalls; #ifndef KERNEL #! . $JEHANNE/sys/src/kern/$ARCH/registry-$ARCH.rc.conf #! ifs=' #! ' #! CONFIGURATION=`{sed -n '/^$/!{/^#/!p}' $JEHANNE/sys/src/sysconf/syscalls.rc.confs} #! for (line in $CONFIGURATION){ #! eval $line #! OTHERARGS=() #! if( ! ~ 1 $#ARGS){ #! OTHERARGS=(', '^$ARGS(2-)) #! } extern $RET sys_$NAME($ARGS(1) $"OTHERARGS); #! } #endif