Page Menu
Home
Musing Studio
Search
Configure Global Search
Log In
Files
F13895871
mkall.sh
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
6 KB
Subscribers
None
mkall.sh
View Options
#!/usr/bin/env bash
# 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.
# This script runs or (given -n) prints suggested commands to generate files for
# the Architecture/OS specified by the GOARCH and GOOS environment variables.
# See README.md for more information about how the build system works.
GOOSARCH
=
"
${
GOOS
}
_
${
GOARCH
}
"
# defaults
mksyscall
=
"go run mksyscall.go"
mkerrors
=
"./mkerrors.sh"
zerrors
=
"zerrors_
$GOOSARCH
.go"
mksysctl
=
""
zsysctl
=
"zsysctl_
$GOOSARCH
.go"
mksysnum
=
mktypes
=
run
=
"sh"
cmd
=
""
case
"
$1
"
in
-syscalls
)
for
i in zsyscall*go
do
# Run the command line that appears in the first line
# of the generated file to regenerate it.
sed 1q
$i
|
sed
's;^// ;;'
|
sh > _
$i
&&
gofmt < _
$i
>
$i
rm _
$i
done
exit
0
;;
-n
)
run
=
"cat"
cmd
=
"echo"
shift
esac
case
"
$#"
in
0)
;;
*)
echo 'usage: mkall.sh [-n]' 1>&2
exit 2
esac
if [[ "
$GOOS
" = "
linux
" ]] && [[ "
$GOARCH
" != "
sparc64
" ]]; then
# Use then new build system
# Files generated through docker (use
$cmd
so you can Ctl-C the build or run)
$cmd
docker build --tag generate:
$GOOS
$GOOS
$cmd
docker run --interactive --tty --volume
$(
dirname
"
$(
readlink -f
"
$0
"
)
"
)
:/build generate:
$GOOS
exit
fi
GOOSARCH_in=syscall_
$GOOSARCH
.go
case "
$GOOSARCH
" in
_* | *_ | _)
echo 'undefined
$GOOS_$GOARCH
:' "
$GOOSARCH
" 1>&2
exit 1
;;
aix_ppc)
mkerrors="
$mkerrors
-maix32
"
mksyscall="
./mksyscall_aix_ppc.pl -aix
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
aix_ppc64)
mkerrors="
$mkerrors
-maix64
"
mksyscall="
./mksyscall_aix_ppc64.pl -aix
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
darwin_386)
mkerrors="
$mkerrors
-m32
"
mksyscall="
go run mksyscall.go -l32
"
mksysnum="
./mksysnum_darwin.pl
$(
xcrun --show-sdk-path --sdk macosx
)
/usr/include/sys/syscall.h
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
darwin_amd64)
mkerrors="
$mkerrors
-m64
"
mksysnum="
./mksysnum_darwin.pl
$(
xcrun --show-sdk-path --sdk macosx
)
/usr/include/sys/syscall.h
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
darwin_arm)
mkerrors="
$mkerrors
"
mksysnum="
./mksysnum_darwin.pl
$(
xcrun --show-sdk-path --sdk iphoneos
)
/usr/include/sys/syscall.h
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
darwin_arm64)
mkerrors="
$mkerrors
-m64
"
mksysnum="
./mksysnum_darwin.pl
$(
xcrun --show-sdk-path --sdk iphoneos
)
/usr/include/sys/syscall.h
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
dragonfly_amd64)
mkerrors="
$mkerrors
-m64
"
mksyscall="
go run mksyscall.go -dragonfly
"
mksysnum="
curl -s
'http://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master'
|
./mksysnum_dragonfly.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
freebsd_386)
mkerrors="
$mkerrors
-m32
"
mksyscall="
go run mksyscall.go -l32
"
mksysnum="
curl -s
'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'
|
./mksysnum_freebsd.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
freebsd_amd64)
mkerrors="
$mkerrors
-m64
"
mksysnum="
curl -s
'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'
|
./mksysnum_freebsd.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
freebsd_arm)
mkerrors="
$mkerrors
"
mksyscall="
go run mksyscall.go -l32 -arm
"
mksysnum="
curl -s
'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'
|
./mksysnum_freebsd.pl
"
# Let the type of C char be signed for making the bare syscall
# API consistent across platforms.
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs -- -fsigned-char
"
;;
linux_sparc64)
GOOSARCH_in=syscall_linux_sparc64.go
unistd_h=/usr/include/sparc64-linux-gnu/asm/unistd.h
mkerrors="
$mkerrors
-m64
"
mksysnum="
./mksysnum_linux.pl
$unistd_h
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
netbsd_386)
mkerrors="
$mkerrors
-m32
"
mksyscall="
go run mksyscall.go -l32 -netbsd
"
mksysnum="
curl -s
'http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master'
|
./mksysnum_netbsd.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
netbsd_amd64)
mkerrors="
$mkerrors
-m64
"
mksyscall="
go run mksyscall.go -netbsd
"
mksysnum="
curl -s
'http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master'
|
./mksysnum_netbsd.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
netbsd_arm)
mkerrors="
$mkerrors
"
mksyscall="
go run mksyscall.go -l32 -netbsd -arm
"
mksysnum="
curl -s
'http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master'
|
./mksysnum_netbsd.pl
"
# Let the type of C char be signed for making the bare syscall
# API consistent across platforms.
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs -- -fsigned-char
"
;;
openbsd_386)
mkerrors="
$mkerrors
-m32
"
mksyscall="
go run mksyscall.go -l32 -openbsd
"
mksysctl="
./mksysctl_openbsd.pl
"
mksysnum="
curl -s
'http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'
|
./mksysnum_openbsd.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
openbsd_amd64)
mkerrors="
$mkerrors
-m64
"
mksyscall="
go run mksyscall.go -openbsd
"
mksysctl="
./mksysctl_openbsd.pl
"
mksysnum="
curl -s
'http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'
|
./mksysnum_openbsd.pl
"
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
openbsd_arm)
mkerrors="
$mkerrors
"
mksyscall="
go run mksyscall.go -l32 -openbsd -arm
"
mksysctl="
./mksysctl_openbsd.pl
"
mksysnum="
curl -s
'http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'
|
./mksysnum_openbsd.pl
"
# Let the type of C char be signed for making the bare syscall
# API consistent across platforms.
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs -- -fsigned-char
"
;;
solaris_amd64)
mksyscall="
./mksyscall_solaris.pl
"
mkerrors="
$mkerrors
-m64
"
mksysnum=
mktypes="
GOARCH
=
$GOARCH
go tool cgo -godefs
"
;;
*)
echo 'unrecognized
$GOOS_$GOARCH
: ' "
$GOOSARCH
" 1>&2
exit 1
;;
esac
(
if [ -n "
$mkerrors
" ]; then echo "
$mkerrors
|
gofmt >
$zerrors
"; fi
case "
$GOOS
" in
*)
syscall_goos="
syscall_
$GOOS
.go
"
case "
$GOOS
" in
darwin | dragonfly | freebsd | netbsd | openbsd)
syscall_goos="
syscall_bsd.go
$syscall_goos
"
;;
esac
if [ -n "
$mksyscall
" ]; then
if [ "
$GOOSARCH
" == "
aix_ppc64
" ]; then
# aix/ppc64 script generates files instead of writing to stdin.
echo "
$mksyscall
-tags
$GOOS
,
$GOARCH
$syscall_goos
$GOOSARCH_in
&&
gofmt -w zsyscall_
$GOOSARCH
.go
&&
gofmt -w zsyscall_
"
$GOOSARCH
"
_gccgo.go
&&
gofmt -w zsyscall_
"
$GOOSARCH
"
_gc.go
" ;
else
echo "
$mksyscall
-tags
$GOOS
,
$GOARCH
$syscall_goos
$GOOSARCH_in
|
gofmt >zsyscall_
$GOOSARCH
.go
";
fi
fi
esac
if [ -n "
$mksysctl
" ]; then echo "
$mksysctl
|
gofmt >
$zsysctl
"; fi
if [ -n "
$mksysnum
" ]; then echo "
$mksysnum
|
gofmt >zsysnum_
$GOOSARCH
.go
"; fi
if [ -n "
$mktypes
" ]; then
echo "
$mktypes
types_
$GOOS
.go
|
go run mkpost.go > ztypes_
$GOOSARCH
.go
";
fi
) |
$run
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Mar 13, 8:14 AM (13 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3654297
Attached To
rWCLI writeas-cli
Event Timeline
Log In to Comment