[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