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

Some hints on building Firefox from source on ppc64



Hello,

since there seems to be some interest in hacking on Firefox on ppc64,
here is a quick and dirty guide on how to build the Firefox Debian
package on unstable.

1) Install build dependencies (as root)

   # apt build-dep firefox
   # apt install devscripts

2) Fetch source (as normal user)

   $ dget -u https://deb.debian.org/debian/pool/main/f/firefox/firefox_138.0.1-1.dsc

3) Install older version of NodeJS since the current version is broken (as root)

   # wget https://snapshot.debian.org/archive/debian-ports/20240531T134713Z/pool-ppc64/main/n/nodejs/nodejs_18.20.1%2Bdfsg-4%2Bb2_ppc64.deb
   # wget https://snapshot.debian.org/archive/debian-ports/20240531T134713Z/pool-ppc64/main/n/nodejs/libnode109_18.20.1%2Bdfsg-4%2Bb2_ppc64.deb
   # wget https://snapshot.debian.org/archive/debian-ports/20240531T134713Z/pool-ppc64/main/n/nodejs/libnode-dev_18.20.1%2Bdfsg-4%2Bb2_ppc64.deb
   # wget https://snapshot.debian.org/archive/debian-ports/20250109T015544Z/pool-ppc64/main/i/icu/libicu72_72.1-6_ppc64.deb
   # apt install ./nodejs_18.20.1+dfsg-4+b2_ppc64.deb ./libnode109_18.20.1+dfsg-4+b2_ppc64.deb ./libnode-dev_18.20.1+dfsg-4+b2_ppc64.deb ./libicu72_72.1-6_ppc64.deb 

4) Edit debian/rules as follows:

--- debian/rules.orig   2025-05-10 04:12:23.154624384 -0700
+++ debian/rules        2025-05-09 11:59:19.794538649 -0700
@@ -113,28 +113,8 @@
        CONFIGURE_FLAGS += --disable-webrtc
 endif
 
-ifeq (default,$(origin CC))
-ifneq (,$(filter-out bullseye bookworm,$(DIST)))
-CC := clang
-else
-ifeq ($(DIST),bookworm)
-CC := gcc-11
-else
 CC := gcc
-endif
-endif
-endif
-ifeq (default,$(origin CXX))
-ifneq (,$(filter-out bullseye bookworm,$(DIST)))
-CXX := clang++
-else
-ifeq ($(DIST),bookworm)
-CXX := g++-11
-else
 CXX := g++
-endif
-endif
-endif

i.e., override CC with "gcc" and CXX with g++.

5) Download patches from Solaris and apply them

   $ wget https://raw.githubusercontent.com/oracle/solaris-userland/refs/heads/master/components/desktop/firefox/patches/Bug1716707.patch
   $ cd /path/to/firefox-138.0.1/
   $ patch -p1 < /path/to/patch/Bug1716707.patch
   $ dpkg-source --commmit # set filename

Repeat for any other patch you want to test.

6) Build package

   $ dpkg-buildpackage -B

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913


Reply to: