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