From 97d8e4e174133a4d1d2171380e510eb4dea8f5ea Mon Sep 17 00:00:00 2001 From: Mikio Hara Date: Sun, 15 Mar 2015 08:30:22 +0900 Subject: [PATCH] ipv6: fix build on go1.4 and below Fixes golang/go#10164. Change-Id: Ifcef660e4840cfcfa2f72a2be08541cad2b90440 Reviewed-on: https://go-review.googlesource.com/7611 Reviewed-by: Minux Ma --- ipv6/gen.go | 12 +++++++----- ipv6/zsys_linux_ppc64.go | 2 ++ ipv6/zsys_linux_ppc64le.go | 2 ++ 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/ipv6/gen.go b/ipv6/gen.go index 329cf1d9..d9186c55 100644 --- a/ipv6/gen.go +++ b/ipv6/gen.go @@ -52,12 +52,14 @@ func genzsys() error { if err != nil { return err } - switch runtime.GOOS { - case "dragonfly", "solaris": - // The ipv6 pacakge still supports go1.2, and so we - // need to take care of additional platforms in go1.3 - // and above for working with go1.2. + // The ipv6 pacakge still supports go1.2, and so we need to + // take care of additional platforms in go1.3 and above for + // working with go1.2. + switch { + case runtime.GOOS == "dragonfly" || runtime.GOOS == "solaris": b = bytes.Replace(b, []byte("package ipv6\n"), []byte("// +build "+runtime.GOOS+"\n\npackage ipv6\n"), 1) + case runtime.GOOS == "linux" && (runtime.GOARCH == "arm64" || runtime.GOARCH == "ppc64" || runtime.GOARCH == "ppc64le"): + b = bytes.Replace(b, []byte("package ipv6\n"), []byte("// +build "+runtime.GOOS+","+runtime.GOARCH+"\n\npackage ipv6\n"), 1) } b, err = format.Source(b) if err != nil { diff --git a/ipv6/zsys_linux_ppc64.go b/ipv6/zsys_linux_ppc64.go index 2f742e95..b99b8a51 100644 --- a/ipv6/zsys_linux_ppc64.go +++ b/ipv6/zsys_linux_ppc64.go @@ -1,6 +1,8 @@ // Created by cgo -godefs - DO NOT EDIT // cgo -godefs defs_linux.go +// +build linux,ppc64 + package ipv6 const ( diff --git a/ipv6/zsys_linux_ppc64le.go b/ipv6/zsys_linux_ppc64le.go index 2f742e95..992b56e2 100644 --- a/ipv6/zsys_linux_ppc64le.go +++ b/ipv6/zsys_linux_ppc64le.go @@ -1,6 +1,8 @@ // Created by cgo -godefs - DO NOT EDIT // cgo -godefs defs_linux.go +// +build linux,ppc64le + package ipv6 const (