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 |
|---|---|---|
| .. | ||
| big | Loading commit data... | |
| cmplx | Loading commit data... | |
| rand | Loading commit data... | |
| abs.go | Loading commit data... | |
| acosh.go | Loading commit data... | |
| all_test.go | Loading commit data... | |
| asin.go | Loading commit data... | |
| asinh.go | Loading commit data... | |
| atan.go | Loading commit data... | |
| atan2.go | Loading commit data... | |
| atanh.go | Loading commit data... | |
| bits.go | Loading commit data... | |
| cbrt.go | Loading commit data... | |
| const.go | Loading commit data... | |
| copysign.go | Loading commit data... | |
| dim.go | Loading commit data... | |
| erf.go | Loading commit data... | |
| exp.go | Loading commit data... | |
| expm1.go | Loading commit data... | |
| export_test.go | Loading commit data... | |
| floor.go | Loading commit data... | |
| floor_asm.go | Loading commit data... | |
| frexp.go | Loading commit data... | |
| gamma.go | Loading commit data... | |
| hypot.go | Loading commit data... | |
| j0.go | Loading commit data... | |
| j1.go | Loading commit data... | |
| jn.go | Loading commit data... | |
| ldexp.go | Loading commit data... | |
| lgamma.go | Loading commit data... | |
| log.go | Loading commit data... | |
| log10.go | Loading commit data... | |
| log1p.go | Loading commit data... | |
| logb.go | Loading commit data... | |
| mod.go | Loading commit data... | |
| modf.go | Loading commit data... | |
| nextafter.go | Loading commit data... | |
| pow.go | Loading commit data... | |
| pow10.go | Loading commit data... | |
| remainder.go | Loading commit data... | |
| signbit.go | Loading commit data... | |
| sin.go | Loading commit data... | |
| sincos.go | Loading commit data... | |
| sinh.go | Loading commit data... | |
| sqrt.go | Loading commit data... | |
| tan.go | Loading commit data... | |
| tanh.go | Loading commit data... | |
| unsafe.go | Loading commit data... |