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 |
|---|---|---|
| .. | ||
| exec | Loading commit data... | |
| signal | Loading commit data... | |
| user | Loading commit data... | |
| dir.go | Loading commit data... | |
| dir_largefile.go | Loading commit data... | |
| dir_plan9.go | Loading commit data... | |
| dir_regfile.go | Loading commit data... | |
| doc.go | Loading commit data... | |
| env.go | Loading commit data... | |
| env_test.go | Loading commit data... | |
| env_unix_test.go | Loading commit data... | |
| error.go | Loading commit data... | |
| error_plan9.go | Loading commit data... | |
| error_test.go | Loading commit data... | |
| error_unix.go | Loading commit data... | |
| error_unix_test.go | Loading commit data... | |
| error_windows.go | Loading commit data... | |
| error_windows_test.go | Loading commit data... | |
| exec.go | Loading commit data... | |
| exec_plan9.go | Loading commit data... | |
| exec_posix.go | Loading commit data... | |
| exec_unix.go | Loading commit data... | |
| exec_windows.go | Loading commit data... | |
| export_test.go | Loading commit data... | |
| file.go | Loading commit data... | |
| file_plan9.go | Loading commit data... | |
| file_posix.go | Loading commit data... | |
| file_unix.go | Loading commit data... | |
| getwd.go | Loading commit data... | |
| getwd_darwin.go | Loading commit data... | |
| os_test.go | Loading commit data... | |
| os_unix_test.go | Loading commit data... | |
| path.go | Loading commit data... | |
| path_plan9.go | Loading commit data... | |
| path_test.go | Loading commit data... | |
| path_unix.go | Loading commit data... | |
| path_windows.go | Loading commit data... | |
| pipe_bsd.go | Loading commit data... | |
| pipe_linux.go | Loading commit data... | |
| pipe_test.go | Loading commit data... | |
| proc.go | Loading commit data... | |
| stat.go | Loading commit data... | |
| stat_atim.go | Loading commit data... | |
| stat_atimespec.go | Loading commit data... | |
| stat_dragonfly.go | Loading commit data... | |
| stat_nacl.go | Loading commit data... | |
| stat_plan9.go | Loading commit data... | |
| stat_solaris.go | Loading commit data... | |
| sticky_bsd.go | Loading commit data... | |
| sticky_notbsd.go | Loading commit data... | |
| str.go | Loading commit data... | |
| sys_bsd.go | Loading commit data... | |
| sys_darwin.go | Loading commit data... | |
| sys_freebsd.go | Loading commit data... | |
| sys_linux.go | Loading commit data... | |
| sys_nacl.go | Loading commit data... | |
| sys_plan9.go | Loading commit data... | |
| sys_uname.go | Loading commit data... | |
| sys_unix.go | Loading commit data... | |
| types.go | Loading commit data... | |
| types_plan9.go | Loading commit data... | |
| types_unix.go | Loading commit data... | |
| types_windows.go | Loading commit data... | |
| wait_unimp.go | Loading commit data... | |
| wait_wait6.go | Loading commit data... | |
| wait_waitid.go | Loading commit data... |