cmd/go: bring in final version of gccgo pkg-config support

This updates gccgo to the final version of https://golang.org/cl/18790,
    by Michael Hudson-Doyle.
    
    Update golang/go#11739.
    
    Reviewed-on: https://go-review.googlesource.com/22400

From-SVN: r235380
This commit is contained in:
Ian Lance Taylor 2016-04-23 00:41:03 +00:00
parent cd32366081
commit a38f74e823
2 changed files with 12 additions and 3 deletions

View File

@ -1,4 +1,4 @@
ff29ea8e4e69eb94958aef4388da09a61b2b52b6 97b358f525584e45fa2e3d83fc7d3a091900927a
The first line of this file holds the git revision number of the last The first line of this file holds the git revision number of the last
merge done from the gofrontend repository. merge done from the gofrontend repository.

View File

@ -2647,9 +2647,18 @@ func (tools gccgoToolchain) ld(b *builder, root *action, out string, allactions
if err != nil { if err != nil {
return err return err
} }
const ldflagsPrefix = "_CGO_LDFLAGS="
for _, line := range strings.Split(string(flags), "\n") { for _, line := range strings.Split(string(flags), "\n") {
if strings.HasPrefix(line, "_CGO_LDFLAGS=") { if strings.HasPrefix(line, ldflagsPrefix) {
cgoldflags = append(cgoldflags, strings.Fields(line[13:])...) newFlags := strings.Fields(line[len(ldflagsPrefix):])
for _, flag := range newFlags {
// Every _cgo_flags file has -g and -O2 in _CGO_LDFLAGS
// but they don't mean anything to the linker so filter
// them out.
if flag != "-g" && !strings.HasPrefix(flag, "-O") {
cgoldflags = append(cgoldflags, flag)
}
}
} }
} }
return nil return nil