Hello community, here is the log from the commit of package go for openSUSE:Factory checked in at 2016-11-04 21:02:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/go (Old) and /work/SRC/openSUSE:Factory/.go.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "go" Changes: -------- --- /work/SRC/openSUSE:Factory/go/go.changes 2016-09-01 14:03:29.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.go.new/go.changes 2016-11-04 21:02:27.000000000 +0100 @@ -1,0 +2,47 @@ +Thu Nov 3 16:17:51 UTC 2016 - jmassaguerpla@suse.com + +- Make sure we build go using gcc-go in Factory cause there is no go1.4 + +------------------------------------------------------------------- +Mon Sep 26 14:29:33 UTC 2016 - jmassaguerpla@suse.com + +- update to go1.7.0 (bsc#996303) + + Most of its changes are in the implementation of the toolchain, + runtime, and libraries. There is one minor change to the language + specification. + + The release adds a port to IBM LinuxOne; updates the x86-64 compiler + back end to generate more efficient code; includes the context package, + promoted from the x/net subrepository and now used in the standard + library; and adds support in the testing package for creating + hierarchies of tests and benchmarks. The release also finalizes + the vendoring support started in Go 1.5, making it a standard feature. + + more at: https://golang.org/doc/go1.7 + + Review patches: + - armv6l.patch + - fix_certificates_lookup.patch, + - go-1.5-install-dont-reinstall-stdlibs.patch + - gcc5-go.patch + +------------------------------------------------------------------- +Fri Sep 23 15:25:15 UTC 2016 - jmassaguerpla@suse.com + +- Reverting to use gcc-go instead of go1.4 for Factory and Leap + The fallback boostrap method via go1.4 does not work for Factory because + of a known bug with binutils 2.27 https://github.com/golang/go/issues/16906. + Leap will work but we don't have go1.4 in there. + +------------------------------------------------------------------- +Wed Sep 21 15:35:51 UTC 2016 - jmassaguerpla@suse.com + +- update to gcc6-go for Factory +- add gcc6-go.patch for Factory +- build with gcc-go for aarch64, ppc64le and ppc64, but for x86_64 + always use go1.4, as it should be according to + https://golang.org/doc/install/source#go14 + + +------------------------------------------------------------------- Old: ---- go1.6.3.src.tar.gz New: ---- gcc6-go.patch go1.7.src.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ go.spec ++++++ --- /var/tmp/diff_new_pack.c00YeD/_old 2016-11-04 21:02:29.000000000 +0100 +++ /var/tmp/diff_new_pack.c00YeD/_new 2016-11-04 21:02:29.000000000 +0100 @@ -16,23 +16,29 @@ # +# By default use go and not gccgo +%define with_gccgo 0 + +# The fallback boostrap method via go1.4 does not work for Factory because +# of a known bug with binutils 2.27 https://github.com/golang/go/issues/16906. +# Leap will work but we don't have go1.4 in there. %if 0%{?suse_version} > 1320 +# openSUSE Factory %define with_gccgo 1 %else %if 0%{?suse_version} == 1315 && 0%{?is_opensuse} +# openSUSE Leap %define with_gccgo 1 -%else +%endif +%endif + # The fallback bootstrap method via go1.4 doesn't work # for aarch64 nor ppc64le because go 1.4 did not support that architecture. -%ifarch aarch64 ppc64le +%ifarch aarch64 ppc64le ppc64 %define with_gccgo 1 -%else -%define with_gccgo 0 -%endif -%endif %endif -%define go_api 1.6 +%define go_api 1.7 # shared library support %define shared_supported %(echo "%{go_api} >= 1.5" | bc -l) @@ -54,13 +60,13 @@ %endif Name: go -Version: 1.6.3 +Version: 1.7.0 Release: 0 Summary: A compiled, garbage-collected, concurrent programming language License: BSD-3-Clause Group: Development/Languages/Other Url: http://golang.org -Source0: http://golang.org/dl/go%{version}.src.tar.gz +Source0: http://golang.org/dl/go1.7.src.tar.gz Source1: go-rpmlintrc Source2: go.sh Source4: README.SUSE @@ -84,10 +90,15 @@ Patch7: fix_certificates_lookup.patch # PATCH-FIX-UPSTREAM marguerite@opensuse.org - find /usr/bin/go-5 when bootstrapping with gcc5-go Patch8: gcc5-go.patch +Patch9: gcc6-go.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # boostrap %if %{with_gccgo} +%if 0%{?suse_version} > 1320 +BuildRequires: gcc6-go +%else BuildRequires: gcc5-go +%endif %else BuildRequires: go1.4 %endif @@ -147,8 +158,12 @@ %endif %patch7 -p1 %if %{with_gccgo} +%if 0%{?suse_version} > 1320 +%patch9 -p1 +%else %patch8 -p1 %endif +%endif cp %{SOURCE4} . # setup go_arch (BSD-like scheme) ++++++ armv6l.patch ++++++ --- /var/tmp/diff_new_pack.c00YeD/_old 2016-11-04 21:02:29.000000000 +0100 +++ /var/tmp/diff_new_pack.c00YeD/_new 2016-11-04 21:02:29.000000000 +0100 @@ -1,6 +1,8 @@ ---- a/src/runtime/os2_linux_generic.go -+++ b/src/runtime/os2_linux_generic.go -@@ -6,7 +6,7 @@ +diff --git a/go/src/runtime/os_linux_generic.go b/b/src/runtime/os_linux_generic.go +index a16d140..8351ffb 100644 +--- a/go/src/runtime/os_linux_generic.go ++++ b/b/src/runtime/os_linux_generic.go +@@ -11,7 +11,7 @@ package runtime const ( _SS_DISABLE = 2 ++++++ fix_certificates_lookup.patch ++++++ --- /var/tmp/diff_new_pack.c00YeD/_old 2016-11-04 21:02:29.000000000 +0100 +++ /var/tmp/diff_new_pack.c00YeD/_new 2016-11-04 21:02:29.000000000 +0100 @@ -1,27 +1,8 @@ diff --git a/src/crypto/x509/root_unix.go b/src/crypto/x509/root_unix.go -index 9f06f9d..b3b2bb8 100644 +index 7bcb3d6..7755293 100644 --- a/src/crypto/x509/root_unix.go +++ b/src/crypto/x509/root_unix.go -@@ -6,13 +6,15 @@ - - package x509 - --import "io/ioutil" -+import ( -+ "io/ioutil" -+ "os" -+) - - // Possible directories with certificate files; stop after successfully - // reading at least one file from a directory. - var certDirectories = []string{ -- "/etc/ssl/certs", // SLES10/SLES11, https://golang.org/issue/12139 -- "/system/etc/security/cacerts", // Android -+ "/etc/ssl/certs", // SLES10/SLES11, https://golang.org/issue/12139 - } - - func (c *Certificate) systemVerify(opts *VerifyOptions) (chains [][]*Certificate, err error) { -@@ -30,22 +32,26 @@ func initSystemRoots() { +@@ -36,6 +37,8 @@ func loadSystemRoots() (*CertPool, error) { } } @@ -30,6 +11,8 @@ for _, directory := range certDirectories { fis, err := ioutil.ReadDir(directory) if err != nil { +@@ -44,16 +47,18 @@ func loadSystemRoots() (*CertPool, error) { + } continue } - rootsAdded := false @@ -43,13 +26,11 @@ } } - if rootsAdded { -- systemRoots = roots -- return +- return roots, nil - } + } -+ + if rootsAdded { -+ systemRoots = roots ++ return roots, nil } - // All of the files failed to load. systemRoots will be nil which will + return nil, firstErr ++++++ gcc5-go.patch ++++++ --- /var/tmp/diff_new_pack.c00YeD/_old 2016-11-04 21:02:29.000000000 +0100 +++ /var/tmp/diff_new_pack.c00YeD/_new 2016-11-04 21:02:29.000000000 +0100 @@ -1,8 +1,29 @@ +diff --git a/src/make.rc b/src/make.rc +index 243f83c..82bdd8d 100755 +--- a/src/make.rc ++++ b/src/make.rc +@@ -46,13 +46,13 @@ echo cmd/dist + GOROOT = `{cd .. && pwd} + if(! ~ $#GOROOT_BOOTSTRAP 1) + GOROOT_BOOTSTRAP = $home/go1.4 +-if(! test -x $GOROOT_BOOTSTRAP/bin/go){ +- echo 'ERROR: Cannot find '$GOROOT_BOOTSTRAP'/bin/go.' >[1=2] ++if(! test -x $GOROOT_BOOTSTRAP/bin/go-5){ ++ echo 'ERROR: Cannot find '$GOROOT_BOOTSTRAP'/bin/go-5.' >[1=2] + echo 'Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.' >[1=2] + exit bootstrap + } + rm -f cmd/dist/dist +-GOROOT=$GOROOT_BOOTSTRAP GOOS='' GOARCH='' $GOROOT_BOOTSTRAP/bin/go build -o cmd/dist/dist ./cmd/dist ++GOROOT=$GOROOT_BOOTSTRAP GOOS='' GOARCH='' $GOROOT_BOOTSTRAP/bin/go-5 build -o cmd/dist/dist ./cmd/dist + + eval `{./cmd/dist/dist env -9} + echo diff --git a/src/make.bash b/src/make.bash -index 2531ca4..12f1aa1 100755 +index 1a1412a..1b2dfd4 100755 --- a/src/make.bash +++ b/src/make.bash -@@ -112,8 +112,8 @@ echo '##### Building Go bootstrap tool.' +@@ -118,8 +118,8 @@ echo '##### Building Go bootstrap tool.' echo cmd/dist export GOROOT="$(cd .. && pwd)" GOROOT_BOOTSTRAP=${GOROOT_BOOTSTRAP:-$HOME/go1.4} @@ -13,7 +34,7 @@ echo "Set \$GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4." >&2 exit 1 fi -@@ -123,7 +123,7 @@ if [ "$GOROOT_BOOTSTRAP" == "$GOROOT" ]; then +@@ -129,7 +129,7 @@ if [ "$GOROOT_BOOTSTRAP" == "$GOROOT" ]; then exit 1 fi rm -f cmd/dist/dist @@ -22,37 +43,16 @@ # -e doesn't propagate out of eval, so check success by hand. eval $(./cmd/dist/dist env -p || echo FAIL=true) -diff --git a/src/make.rc b/src/make.rc -index 6016204..2223092 100755 ---- a/src/make.rc -+++ b/src/make.rc -@@ -46,13 +46,13 @@ echo cmd/dist - GOROOT = `{cd .. && pwd} - if(! ~ $#GOROOT_BOOTSTRAP 1) - GOROOT_BOOTSTRAP = $home/go1.4 --if(! test -x $GOROOT_BOOTSTRAP/bin/go){ -- echo 'ERROR: Cannot find '$GOROOT_BOOTSTRAP'/bin/go.' >[1=2] -+if(! test -x $GOROOT_BOOTSTRAP/bin/go-5){ -+ echo 'ERROR: Cannot find '$GOROOT_BOOTSTRAP'/bin/go-5.' >[1=2] - echo 'Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.' >[1=2] - exit bootstrap - } - rm -f cmd/dist/dist --GOROOT=$GOROOT_BOOTSTRAP GOOS='' GOARCH='' $GOROOT_BOOTSTRAP/bin/go build -o cmd/dist/dist ./cmd/dist -+GOROOT=$GOROOT_BOOTSTRAP GOOS='' GOARCH='' $GOROOT_BOOTSTRAP/bin/go-5 build -o cmd/dist/dist ./cmd/dist - - eval `{./cmd/dist/dist env -9} - echo diff --git a/src/cmd/dist/buildtool.go b/src/cmd/dist/buildtool.go -index 20d9535..26cfb20 100644 +index a535316..ea739eb 100644 --- a/src/cmd/dist/buildtool.go +++ b/src/cmd/dist/buildtool.go -@@ -111,7 +111,7 @@ func bootstrapBuildTools() { - os.Setenv("GOHOSTARCH", "") - - // Run Go 1.4 to build binaries. -- run(workspace, ShowOutput|CheckExit, pathf("%s/bin/go", goroot_bootstrap), "install", "-v", "bootstrap/...") -+ run(workspace, ShowOutput|CheckExit, pathf("%s/bin/go-5", goroot_bootstrap), "install", "-v", "bootstrap/...") +@@ -119,7 +119,7 @@ func bootstrapBuildTools() { + // Run Go 1.4 to build binaries. Use -gcflags=-l to disable inlining to + // workaround bugs in Go 1.4's compiler. See discussion thread: + // https://groups.google.com/d/msg/golang-dev/Ss7mCKsvk8w/Gsq7VYI0AwAJ +- run(workspace, ShowOutput|CheckExit, pathf("%s/bin/go", goroot_bootstrap), "install", "-gcflags=-l", "-v", "bootstrap/...") ++ run(workspace, ShowOutput|CheckExit, pathf("%s/bin/go-5", goroot_bootstrap), "install", "-gcflags=-l", "-v", "bootstrap/...") // Copy binaries into tool binary directory. for _, name := range bootstrapDirs { ++++++ gcc6-go.patch ++++++ diff --git a/src/cmd/dist/buildtool.go b/src/cmd/dist/buildtool.go index a535316..ea739eb 100644 --- a/src/cmd/dist/buildtool.go +++ b/src/cmd/dist/buildtool.go @@ -119,7 +119,7 @@ func bootstrapBuildTools() { // Run Go 1.4 to build binaries. Use -gcflags=-l to disable inlining to // workaround bugs in Go 1.4's compiler. See discussion thread: // https://groups.google.com/d/msg/golang-dev/Ss7mCKsvk8w/Gsq7VYI0AwAJ - run(workspace, ShowOutput|CheckExit, pathf("%s/bin/go", goroot_bootstrap), "install", "-gcflags=-l", "-v", "bootstrap/...") + run(workspace, ShowOutput|CheckExit, pathf("%s/bin/go-6", goroot_bootstrap), "install", "-gcflags=-l", "-v", "bootstrap/...") // Copy binaries into tool binary directory. for _, name := range bootstrapDirs { diff --git a/src/make.bash b/src/make.bash index 1a1412a..1b2dfd4 100755 --- a/src/make.bash +++ b/src/make.bash @@ -118,8 +118,8 @@ echo '##### Building Go bootstrap tool.' echo cmd/dist export GOROOT="$(cd .. && pwd)" GOROOT_BOOTSTRAP=${GOROOT_BOOTSTRAP:-$HOME/go1.4} -if [ ! -x "$GOROOT_BOOTSTRAP/bin/go" ]; then - echo "ERROR: Cannot find $GOROOT_BOOTSTRAP/bin/go." >&2 +if [ ! -x "$GOROOT_BOOTSTRAP/bin/go-6" ]; then + echo "ERROR: Cannot find $GOROOT_BOOTSTRAP/bin/go-6." >&2 echo "Set \$GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4." >&2 exit 1 fi @@ -129,7 +129,7 @@ if [ "$GOROOT_BOOTSTRAP" == "$GOROOT" ]; then exit 1 fi rm -f cmd/dist/dist -GOROOT="$GOROOT_BOOTSTRAP" GOOS="" GOARCH="" "$GOROOT_BOOTSTRAP/bin/go" build -o cmd/dist/dist ./cmd/dist +GOROOT="$GOROOT_BOOTSTRAP" GOOS="" GOARCH="" "$GOROOT_BOOTSTRAP/bin/go-6" build -o cmd/dist/dist ./cmd/dist # -e doesn't propagate out of eval, so check success by hand. eval $(./cmd/dist/dist env -p || echo FAIL=true) diff --git a/src/make.rc b/src/make.rc index 243f83c..82bdd8d 100755 --- a/src/make.rc +++ b/src/make.rc @@ -46,13 +46,13 @@ echo cmd/dist GOROOT = `{cd .. && pwd} if(! ~ $#GOROOT_BOOTSTRAP 1) GOROOT_BOOTSTRAP = $home/go1.4 -if(! test -x $GOROOT_BOOTSTRAP/bin/go){ - echo 'ERROR: Cannot find '$GOROOT_BOOTSTRAP'/bin/go.' >[1=2] +if(! test -x $GOROOT_BOOTSTRAP/bin/go-6){ + echo 'ERROR: Cannot find '$GOROOT_BOOTSTRAP'/bin/go-6.' >[1=2] echo 'Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.' >[1=2] exit bootstrap } rm -f cmd/dist/dist -GOROOT=$GOROOT_BOOTSTRAP GOOS='' GOARCH='' $GOROOT_BOOTSTRAP/bin/go build -o cmd/dist/dist ./cmd/dist +GOROOT=$GOROOT_BOOTSTRAP GOOS='' GOARCH='' $GOROOT_BOOTSTRAP/bin/go-6 build -o cmd/dist/dist ./cmd/dist eval `{./cmd/dist/dist env -9} echo ++++++ go-1.5-install-dont-reinstall-stdlibs.patch ++++++ --- /var/tmp/diff_new_pack.c00YeD/_old 2016-11-04 21:02:29.000000000 +0100 +++ /var/tmp/diff_new_pack.c00YeD/_new 2016-11-04 21:02:29.000000000 +0100 @@ -1,16 +1,16 @@ -Index: go/src/cmd/go/pkg.go -=================================================================== ---- go.orig/src/cmd/go/pkg.go -+++ go/src/cmd/go/pkg.go -@@ -1374,6 +1374,13 @@ func isStale(p *Package) bool { - return false +diff --git a/src/cmd/go/pkg.go b/src/cmd/go/pkg.go +index 07aa3ff..3f4836b 100644 +--- a/src/cmd/go/pkg.go ++++ b/src/cmd/go/pkg.go +@@ -1457,6 +1457,13 @@ func isStale(p *Package) (bool, string) { + return false, "standard package in Go release distribution" } + // openSUSE bnc#776058 + // Only root user can reinstall a std library from a dependancy, all other + // users should *never* have to do this. + if os.Getuid() != 0 && p.Standard { -+ return false ++ return false, "only root can reinstall a std library from a dependency" + } + // Time-based staleness. ++++++ go1.6.3.src.tar.gz -> go1.7.src.tar.gz ++++++ /work/SRC/openSUSE:Factory/go/go1.6.3.src.tar.gz /work/SRC/openSUSE:Factory/.go.new/go1.7.src.tar.gz differ: char 13, line 1