[tor-dev] Go version in Gitian descriptors

sycamoreone sycamoreone at riseup.net
Mon Jan 4 15:12:39 UTC 2016


isis:
> Tim Wilson-Brown - teor transcribed 12K bytes:
>>
>> Note the go bootstrap process has changed now that go is entirely written in go:
>>
>> The new build process for Go 1.x (x ≥ 5) will be:
>>
>> 	• Build cmd/dist with Go 1.4.
>> 	• Using dist, build Go 1.x compiler toolchain with Go 1.4.
>> 	• Using dist, rebuild Go 1.x compiler toolchain with itself.
>> 	• Using dist, build Go 1.x cmd/go (as go_bootstrap) with Go 1.x compiler toolchain.
>> 	• Using go_bootstrap, build the remaining Go 1.x standard library and commands.
>>
>> https://docs.google.com/document/d/1OaatvGhEAq7VseQ9kkavxKNAfepWy2yhPUBs96FGV28/edit?pref=2&pli=1
>>
>> Tim Wilson-Brown (teor)
> 
> I've not tried it yet, but it's my understanding that gccgo can still be used
> to compile go-1.5:
> 
> https://github.com/golang/go/issues/10092
> 
> So another route might be to modify our build of GCC to include gccgo, then
> use that to bootstrap the official Go compiler.

I never tried using gccgo to bootstrap as using go_1.4 is rather easy in
practice using the official tooling:

  # 1. Build a go1.4 using GCC.

  git clone https://github.com/golang/go.git
  cp -r go go_bootstrap
  ( cd go_bootstrap; git checkout origin/release-branch.go1.4 )
  ( cd go_bootstrap/src/ && ./all.bash )

  # 2. Now build a go1.5 using the go1,4
	
  export GOROOT_BOOTSTRAP=$PWD/go_bootstrap
  ( cd go && git checkout origin/release-branch.go1.5 )
  ( cd go/src/ && ./all.bash )

  # 3. And now do
  echo "PATH=$PATH:$PWD/go/bin" >> .profile
		
Cheers!



More information about the tor-dev mailing list