[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Firefox

Hello Mike!

On 7/18/19 10:32 AM, Mike Hosken wrote:
> Can someone please let me know how Firefox is built in Debian Ports for
> hppa as it’s missing the rustc depends etc 
> I’m struggling to build this and thunderbird, was wondering if it was cross
> compiled and if rustc was used and if rustc can it be compiled from source. 

Building a current version of Firefox for hppa is unfortunately currently not
possible as the Rust compiler does not support hppa as a target architecture.

While it is possible and very easy to cross-compile the Rust compiler, this is
only possible if the Rust compiler has support for the target you want to
cross-compile for.

The current list of supported targets can be found with the following command:

glaubitz@suse-laptop:~> rustc --print target-list

Adding support for a new target to Rust consists of two steps: One is adding
support for the new target to LLVM (difficult) and one is adding support
to the new target to Rust (rather simple).

A work-in-progress for m68k can be found here:

> https://github.com/M680x0/M680x0-llvm/
> https://github.com/glaubitz/rust/tree/m68k-linux

LLVM is required by Rust for the code generation, so your target of choice
needs to be supported by LLVM.

However, there might be an alternative which is using LLVM's backends for
C/C++ to generate intermediate code which can then later be compiled into
native code.

Another possibility would be to use the mrustc compiler which is portable
to any architecture but does not have the full feature set of the original
Rust compiler yet:

> https://github.com/thepowersgang/mrustc

I'm planning to add more targets to mrustc in the near future and then package
it for Debian. Maybe it can be used in the future to compile some of the Rust
packages we have in Debian.


 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

Reply to: