Page Menu
Home
Musing Studio
Search
Configure Global Search
Log In
Files
F12142788
mksysnum_freebsd.pl
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
1 KB
Subscribers
None
mksysnum_freebsd.pl
View Options
#!/usr/bin/env perl
# Copyright 2009 The Go Authors. All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.
#
# Generate system call table for FreeBSD from master list
# (for example, /usr/src/sys/kern/syscalls.master).
use
strict
;
if
(
$
ENV
{
'GOARCH'
}
eq
""
||
$
ENV
{
'GOOS'
}
eq
""
)
{
print
STDERR
"GOARCH or GOOS not defined in environment\n"
;
exit
1
;
}
my
$
command
=
"mksysnum_freebsd.pl "
.
join
(
' '
,
@
ARGV
);
print
<<
EOF
;
//
$
command
//
Code
generated
by
the
command
above
;
see
README
.
md
.
DO
NOT
EDIT
.
//
+
build
$
ENV
{
'GOARCH'
},
$
ENV
{
'GOOS'
}
package
unix
const
(
EOF
while
(
<>
){
if
(
/^
([
0
-
9
]
+
)
\s+\
S
+\s+
(
?:
NO
)
?
STD
\s+
({
\
S
+\s+
(
\w+
).
*
)
$
/
){
my
$
num
=
$
1
;
my
$
proto
=
$
2
;
my
$
name
=
"SYS_$3"
;
$
name
=~
y
/
a
-
z
/
A
-
Z
/
;
#
There
are
multiple
entries
for
enosys
and
nosys
,
so
comment
them
out
.
if
(
$
name
=~
/^
SYS_E
?
NOSYS
$
/
){
$
name
=
"// $name"
;
}
if
(
$
name
eq
'SYS_SYS_EXIT'
){
$
name
=
'SYS_EXIT'
;
}
print
" $name = $num; // $proto\n"
;
}
}
print
<<
EOF
;
)
EOF
File Metadata
Details
Attached
Mime Type
text/x-perl
Expires
Fri, Oct 10, 1:36 AM (1 d, 1 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3440965
Attached To
rWCLI writeas-cli
Event Timeline
Log In to Comment