[tor-bugs] #32355 [Applications/Tor Browser]: Tor Browser for Linux/ARMv7 (x86_64 build arch)

Tor Bug Tracker & Wiki blackhole at torproject.org
Sat Jun 6 19:42:04 UTC 2020


#32355: Tor Browser for Linux/ARMv7 (x86_64 build arch)
--------------------------------------------+------------------------------
 Reporter:  JeremyRand                      |          Owner:  tbb-team
     Type:  project                         |         Status:  needs_review
 Priority:  Medium                          |      Milestone:
Component:  Applications/Tor Browser        |        Version:
 Severity:  Normal                          |     Resolution:
 Keywords:  tbb-rbm, TorBrowserTeam202006R  |  Actual Points:
Parent ID:  #12631                          |         Points:
 Reviewer:  gk                              |        Sponsor:
--------------------------------------------+------------------------------

Comment (by gk):

 That's impressive work, thanks! I have three high-level questions for now:

 1) IIRC the `linux-cross` target was the idea to abstract the cross-
 compilation part away from ARM and other platforms. Do I remember that
 right? Right now we have for that:
 {{{
   linux-cross:
     var:
       linux-cross: 1
       container:
         arch: amd64
       # TODO: Maybe re-enable snowflake on linux-cross later?
       snowflake: 0
       # TODO: Maybe re-enable fteproxy on linux-cross later?
       fteproxy: 0
 }}}
 That does not strike me overly useful. `fteproxy` is gone. We'll want to
 have `snowflake` support on those platforms anyway and I doubt that the
 container won't be `amd64`. So, overall we don't seem to need that
 abstraction? Or am I missing something?

 2) We build usually on latest Debian stable for our targets when we are
 cross-compiling. I think it is fine thinking about something else than
 building on Debian Wheezy for this project, in particular if it would make
 things easier (which it seems it would). We are only still on Wheezy for
 non-cross builds because of CentOS 6 and we'll soon move away from it
 because CentOS 6 will finally be dead later this year. We'll likely end up
 using Jessie or even Stretch (but very likely not Buster). I see you are
 using Glibc 2.26 in your cross-build which is even newer than what is
 included in Stretch. Thus, you probably already excluded a bunch of
 potentially still supported distro versions for armv7 (which is fine to me
 right now). So, a good step forward here we would thinking about what
 we/you want to support and what minimum Debian version that would mean
 (it's not Wheezy :)) and then start using that one (as I said above I bet
 newer Debian versions would greatly help in the cross-compilation effort)

 3) We use essentially for all of our cross-compilation efforts clang
 nowadays and not GCC as the former has quite good support (which got
 better over the years) and GCC is not enough (anymore) to build for
 macOS/Winodws/Android. Would your linux arm work benefit from using clang
 here too? Or would that be harder? You are using clang for the Firefox
 part anyway (which is already the by far most complicated piece in our
 projects).

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/32355#comment:12>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list