Previously the libgo Makefile explicitly listed the set of files to
compile for each package. For packages that use build tags, this
required a lot of awkward automake conditionals in the Makefile.
This CL changes the build to look at the build tags in the files.
The new shell script libgo/match.sh does the matching. This required
adjusting a lot of build tags, and removing some files that are never
used. I verified that the exact same sets of files are compiled on
amd64 GNU/Linux. I also tested the build on i386 Solaris.
Writing match.sh revealed some bugs in the build tag handling that
already exists, in a slightly different form, in the gotest shell
script. This CL fixes those problems as well.
The old code used automake conditionals to handle systems that were
missing strerror_r and wait4. Rather than deal with those in Go, those
functions are now implemented in runtime/go-nosys.c when necessary, so
the Go code can simply assume that they exist.
The os testsuite looked for dir_unix.go, which was never built for gccgo
and has now been removed. I changed the testsuite to look for dir.go
instead.
Reviewed-on: https://go-review.googlesource.com/25546
From-SVN: r239189
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| bpf_bsd.go | Loading commit data... | |
| const_plan9.go | Loading commit data... | |
| creds_test.go | Loading commit data... | |
| dir_plan9.go | Loading commit data... | |
| env_plan9.go | Loading commit data... | |
| env_unix.go | Loading commit data... | |
| env_windows.go | Loading commit data... | |
| errno.c | Loading commit data... | |
| errors_plan9.go | Loading commit data... | |
| errstr.go | Loading commit data... | |
| errstr_linux.go | Loading commit data... | |
| exec_bsd.go | Loading commit data... | |
| exec_linux.go | Loading commit data... | |
| exec_linux_test.go | Loading commit data... | |
| exec_solaris_test.go | Loading commit data... | |
| exec_stubs.go | Loading commit data... | |
| exec_unix.go | Loading commit data... | |
| exec_unix_test.go | Loading commit data... | |
| exec_windows.go | Loading commit data... | |
| export_test.go | Loading commit data... | |
| export_unix_test.go | Loading commit data... | |
| libcall_bsd.go | Loading commit data... | |
| libcall_irix.go | Loading commit data... | |
| libcall_linux.go | Loading commit data... | |
| libcall_linux_386.go | Loading commit data... | |
| libcall_linux_alpha.go | Loading commit data... | |
| libcall_linux_amd64.go | Loading commit data... | |
| libcall_linux_s390.go | Loading commit data... | |
| libcall_linux_s390x.go | Loading commit data... | |
| libcall_linux_ustat.go | Loading commit data... | |
| libcall_linux_utimesnano.go | Loading commit data... | |
| libcall_posix.go | Loading commit data... | |
| libcall_posix_largefile.go | Loading commit data... | |
| libcall_posix_regfile.go | Loading commit data... | |
| libcall_posix_utimesnano.go | Loading commit data... | |
| libcall_solaris_386.go | Loading commit data... | |
| libcall_solaris_amd64.go | Loading commit data... | |
| libcall_solaris_sparc.go | Loading commit data... | |
| libcall_solaris_sparc64.go | Loading commit data... | |
| libcall_support.go | Loading commit data... | |
| libcall_uname.go | Loading commit data... | |
| libcall_wait4.go | Loading commit data... | |
| lsf_linux.go | Loading commit data... | |
| mksyscall.awk | Loading commit data... | |
| mmap_unix_test.go | Loading commit data... | |
| msan0.go | Loading commit data... | |
| netlink_linux.go | Loading commit data... | |
| pwd_plan9.go | Loading commit data... | |
| route_bsd.go | Loading commit data... | |
| route_darwin.go | Loading commit data... | |
| route_dragonfly.go | Loading commit data... | |
| route_freebsd.go | Loading commit data... | |
| route_freebsd_32bit.go | Loading commit data... | |
| route_freebsd_64bit.go | Loading commit data... | |
| route_netbsd.go | Loading commit data... | |
| route_openbsd.go | Loading commit data... | |
| security_windows.go | Loading commit data... | |
| signame.c | Loading commit data... | |
| sleep_rtems.go | Loading commit data... | |
| sleep_select.go | Loading commit data... | |
| sockcmsg_linux.go | Loading commit data... | |
| sockcmsg_unix.go | Loading commit data... | |
| socket.go | Loading commit data... | |
| socket_bsd.go | Loading commit data... | |
| socket_irix.go | Loading commit data... | |
| socket_linux.go | Loading commit data... | |
| socket_linux_ppc64x_type.go | Loading commit data... | |
| socket_linux_type.go | Loading commit data... | |
| socket_posix.go | Loading commit data... | |
| socket_solaris.go | Loading commit data... | |
| socket_xnet.go | Loading commit data... | |
| str.go | Loading commit data... | |
| syscall.go | Loading commit data... | |
| syscall_errno.go | Loading commit data... | |
| syscall_linux_386.go | Loading commit data... | |
| syscall_linux_alpha.go | Loading commit data... | |
| syscall_linux_amd64.go | Loading commit data... | |
| syscall_linux_mips64x.go | Loading commit data... | |
| syscall_linux_s390.go | Loading commit data... | |
| syscall_linux_s390x.go | Loading commit data... | |
| syscall_linux_test.go | Loading commit data... | |
| syscall_solaris.go | Loading commit data... | |
| syscall_stubs.go | Loading commit data... | |
| syscall_test.go | Loading commit data... | |
| syscall_unix.go | Loading commit data... | |
| syscall_unix_test.go | Loading commit data... | |
| wait.c | Loading commit data... |