Re: [tor-dev] Go version in Gitian descriptors

2016-01-04 Thread sycamoreone
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=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!

___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] Go version in Gitian descriptors

2016-01-03 Thread David Fifield
On Sun, Jan 03, 2016 at 11:01:25PM -0600, Jeremy Rand wrote:
> I noticed that it looks like Tor Project is using Go 1.4.2 to build
> the pluggable transports in Gitian.  I'm curious why a newer version
> of Go isn't used.  My understanding is that Go 1.4.2 (or earlier) is
> needed to build Go 1.5 because 1.5's source code is itself in Go.
> Would using Go 1.5 be as simple as building 1.4.2 in Gitian (as is
> done now), and then using 1.4.2 to build 1.5, and then placing 1.5 in
> PATH instead of 1.4.2 as is done now?  Have obstacles been identified
> in such a configuration, or is it just that no one tried it?

It's just that nobody has tried it. Here's the ticket for the most
recent update (to 1.4.2) if you want to make a new patch and file a new
ticket:
https://bugs.torproject.org/15448
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


[tor-dev] Go version in Gitian descriptors

2016-01-03 Thread Jeremy Rand
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Hello,

I noticed that it looks like Tor Project is using Go 1.4.2 to build
the pluggable transports in Gitian.  I'm curious why a newer version
of Go isn't used.  My understanding is that Go 1.4.2 (or earlier) is
needed to build Go 1.5 because 1.5's source code is itself in Go.
Would using Go 1.5 be as simple as building 1.4.2 in Gitian (as is
done now), and then using 1.4.2 to build 1.5, and then placing 1.5 in
PATH instead of 1.4.2 as is done now?  Have obstacles been identified
in such a configuration, or is it just that no one tried it?

Cheers,
- -Jeremy Rand
-BEGIN PGP SIGNATURE-
Version: GnuPG v2

iQIcBAEBCAAGBQJWifxjAAoJEAHN/EbZ1y0686cP/3kdRz3va8dZ056j4x9k+sd7
XJsfsj9eWJ/tPxdpppPsBIoseTVNrPSCOB/cJ/bc0Xl75KGQkHFsmGusnUp6kg9L
bwJK8wcNoO+s5EjjiY/Rk39UQTNJ3YKOaanvUnGXolYy4LtgUTTI7jdSWcpyZmd7
zxQVzvIXQEawgbu9SjTzXFkBQVHkZzkCDmTPcQNEPtIZambj7fFU0EMBWSmrYkVa
/Lzz0bq2wMcZBpdMR07JT0WcrXNgkun48gJlBCV2SuScgs+FycmQi1dVCapwptrQ
H0WeCv61XnhXTlens60gfhjrXMcUf4Xud2p71pG0N3OYrF8eOJGpSzTdnBnOFNGw
IA2B+CB8u6l8PoZAqeJg0qhFjwm/BoG9o8b8WI9WJOvqDsSfo9Mjmr2lfuoxEGI7
/Uu7aZgRboFI899/xfKJUjzZpQs3hVrtpgukjNEShDBBhsZDOQUkbfzw097NttxB
Nst6RW8WmRpbvFMGMrLiYrUKxGKJkzOUVaexU2C9y6y5asq3i2qotTmXpzEHkcP0
XL4KR9/JC6MeuBqSszEb2gpcQsHVsPxk7Wo1cJwLDSeS2YniZnxlpre5DjF2Exez
H54PqwtXTezThc8TZuTzfJZrkOA/X5ggL7/wnpUaDrF8T9r4fn1rosP6m8PdUeOL
RhVNDX3NeTjV6KywVJX4
=ELuw
-END PGP SIGNATURE-
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] Go version in Gitian descriptors

2016-01-03 Thread Tim Wilson-Brown - teor

> On 4 Jan 2016, at 16:14, David Fifield  wrote:
> 
> On Sun, Jan 03, 2016 at 11:01:25PM -0600, Jeremy Rand wrote:
>> I noticed that it looks like Tor Project is using Go 1.4.2 to build
>> the pluggable transports in Gitian.  I'm curious why a newer version
>> of Go isn't used.  My understanding is that Go 1.4.2 (or earlier) is
>> needed to build Go 1.5 because 1.5's source code is itself in Go.
>> Would using Go 1.5 be as simple as building 1.4.2 in Gitian (as is
>> done now), and then using 1.4.2 to build 1.5, and then placing 1.5 in
>> PATH instead of 1.4.2 as is done now?  Have obstacles been identified
>> in such a configuration, or is it just that no one tried it?
> 
> It's just that nobody has tried it. Here's the ticket for the most
> recent update (to 1.4.2) if you want to make a new patch and file a new
> ticket:
> https://bugs.torproject.org/15448 

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=1

Tim Wilson-Brown (teor)

teor2345 at gmail dot com
PGP 968F094B

teor at blah dot im
OTR CAD08081 9755866D 89E2A06F E3558B7F B5A9D14F



signature.asc
Description: Message signed with OpenPGP using GPGMail
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev