• Firefox

    From Mike Hosken@21:1/5 to All on Thu Jul 18 10:40:01 2019
    Hi,

    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.

    Thanks
    Mike

    Sent from my iPhone

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Paul Adrian Glaubitz@21:1/5 to Mike Hosken on Thu Jul 18 12:10:01 2019
    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
    aarch64-fuchsia
    aarch64-linux-android
    aarch64-pc-windows-msvc
    aarch64-unknown-cloudabi
    aarch64-unknown-freebsd
    aarch64-unknown-hermit
    aarch64-unknown-linux-gnu
    (...)

    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.

    Adrian

    --
    .''`. 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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)