diff options
Diffstat (limited to 'src/pkg/syscall/mksyscall.pl')
-rwxr-xr-x | src/pkg/syscall/mksyscall.pl | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/pkg/syscall/mksyscall.pl b/src/pkg/syscall/mksyscall.pl index b4ece9a54..6d35fa689 100755 --- a/src/pkg/syscall/mksyscall.pl +++ b/src/pkg/syscall/mksyscall.pl @@ -28,6 +28,7 @@ my $plan9 = 0; my $openbsd = 0; my $netbsd = 0; my $dragonfly = 0; +my $nacl = 0; my $arm = 0; # 64-bit value should use (even, odd)-pair if($ARGV[0] eq "-b32") { @@ -53,6 +54,10 @@ if($ARGV[0] eq "-dragonfly") { $dragonfly = 1; shift; } +if($ARGV[0] eq "-nacl") { + $nacl = 1; + shift; +} if($ARGV[0] eq "-arm") { $arm = 1; shift; @@ -95,7 +100,7 @@ while(<>) { # Line must be of the form # func Open(path string, mode int, perm int) (fd int, errno error) # Split into name, in params, out params. - if(!/^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(SYS_[A-Z0-9_]+))?$/) { + if(!/^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*((?i)SYS_[A-Z0-9_]+))?$/) { print STDERR "$ARGV:$.: malformed //sys declaration\n"; $errors = 1; next; @@ -219,6 +224,9 @@ while(<>) { $sysname = "SYS_$func"; $sysname =~ s/([a-z])([A-Z])/${1}_$2/g; # turn FooBar into Foo_Bar $sysname =~ y/a-z/A-Z/; + if($nacl) { + $sysname =~ y/A-Z/a-z/; + } } # Actual call. |