On Sun, Dec 13, 2015 at 10:50 AM, Nicholas Nethercote
<n.netherc...@gmail.com> wrote:
> On Sun, Dec 13, 2015 at 9:17 AM, Cameron Kaiser <ckai...@floodgap.com> wrote:
>>
>> This would essentially mandate, then, that Gecko can only be built on
>> platforms with a Rust toolchain. That may be desirable, but it would
>> probably bust some of the obscure Tier-3 platforms and it would definitely
>> bust TenFourFox (we can't even get clang to be happy on 10.4 currently). Not
>> that we haven't been on borrowed time for awhile; I just point it out for
>> the record.
>
> I've been wondering about this. There's a big difference between (a)
> permitting Rust components (while still allowing fallback C++
> equivalents) and (b) mandating Rust components.

I think it doesn't make sense for us to support two MP4 demuxers, two
URL parsers, two encoding conversion libraries, etc. Once we put Rust
code into Gecko, I think we should commit to that code being a real
part of Gecko, and ports need to deal.

https://github.com/servo/servo/wiki/Building-for-Android suggests that
Android will be OK. For tier-1, I think the questions are XP, Snow
Leopard and Windows & Linux on CPUs without SSE2, but my understanding
is that all of these can already be supported by custom builds of
rustc (and if not, it wouldn't be unreasonable to drop some of those
three to get to the Rust future, IMO).

As for tier-3, a quick search indicates that rustc has already been
bootstrapped on (x86ish?) FreeBSD and OpenBSD. Wikipedia says that
LLVM supports MIPS, PowerPC, SPARC and Z/Architecture. It looks like
Debian has dropped 68K. So it should be feasible for *BSD and
non-mainstream CPU arch versions of Debian to come along. Maybe there
is rustc porting work to be done, but I think people who want these
platforms to be supported internalize the cost of supporting them
instead of expecting Gecko to stop progressing because of them.

Firefox 45 will be ESR. I think it's reasonable to make Rust a Gecko
build requirement after 45 and let tier-3 platforms use the ESR cycle
to get rustc/LLVM up and running where it's not up and running
already.

-- 
Henri Sivonen
hsivo...@hsivonen.fi
https://hsivonen.fi/
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to