summaryrefslogtreecommitdiff
path: root/libgo/go/strings
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2016-08-06 00:36:33 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2016-08-06 00:36:33 +0000
commite0f69f36ea1e068cb9aa48ea0d274b98530f2488 (patch)
tree8925fdf222aa5a7635a6eb748602b694043eafb7 /libgo/go/strings
parentd712e9a7e2ec4de5e6e9f72b85b620e719757ee3 (diff)
downloadgcc-e0f69f36ea1e068cb9aa48ea0d274b98530f2488.tar.gz
libgo: change build procedure to use build tags
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
Diffstat (limited to 'libgo/go/strings')
-rw-r--r--libgo/go/strings/strings_amd64.go2
-rw-r--r--libgo/go/strings/strings_generic.go2
2 files changed, 2 insertions, 2 deletions
diff --git a/libgo/go/strings/strings_amd64.go b/libgo/go/strings/strings_amd64.go
index 55bf2d2f6fc..4b06f8a0c18 100644
--- a/libgo/go/strings/strings_amd64.go
+++ b/libgo/go/strings/strings_amd64.go
@@ -2,6 +2,8 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
+// +build ignore
+
package strings
// indexShortStr returns the index of the first instance of c in s, or -1 if c is not present in s.
diff --git a/libgo/go/strings/strings_generic.go b/libgo/go/strings/strings_generic.go
index d356f50f877..aef2c1e355b 100644
--- a/libgo/go/strings/strings_generic.go
+++ b/libgo/go/strings/strings_generic.go
@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// +build !amd64
-
package strings
// TODO: implements short string optimization on non amd64 platforms