2

After building Firefox with mach build, about 2 GB is in the build folder. Deleting the SDK folder (added to the build folder) saves about 1 GB. So there is about 1 GB of files in a clean build of Firefox. Does anyone know how to minimize the build footprint?

/firefox50-build

1.1G    bin
36K     branding
24K     host
6.3M    idl
46M     include
53M     lib
1.5M    private
8.0K    public
128K    stl_wrappers
4.5M    system_wrappers
44K     xpi-stage

firefox50-build/bin

4.0K    application.ini
37M     browser
7.3M    chrome
4.0K    chrome.manifest
3.1M    components
68K     defaults
4.0K    dependentlibs.list
572K    dictionaries
1020K   firefox
1020K   firefox-bin
712K    gmp-clearkey
364K    gmp-fake
80K     gmp-fakeopenh264
184K    greprefs.js
2.7M    hyphenation
10M     icudt56l.dat
2.0M    libfreeblpriv3.so
412K    liblgpllibs.so
6.5M    libmozavcodec.so
616K    libmozavutil.so
2.7M    libmozsqlite3.so
900K    libnspr4.so
5.8M    libnss3.so
1.2M    libnssckbi.so
904K    libnssdbm3.so
588K    libnssutil3.so
60K     libplc4.so
40K     libplds4.so
1.1M    libsmime3.so
1.2M    libsoftokn3.so
1.4M    libssl3.so
925M    libxul.so
24K     mangle
9.4M    modules
20K     nsinstall
4.0K    platform.ini
3.8M    plugin-container
104K    rapl
460K    res
12K     run-mozilla.sh
76K     shlibsign
4.0K    update.locale
684K    xpcshell

For example, the libxul.so (925 MB) really stands out.

1 Answer 1

2

From http://mozilla.6506.n7.nabble.com/libxul-so-insanely-large-big-td289909.html

Our official builds are packaged before shipping, which entails stripping (among many other things). You can produce a packaged build by running "./mach package" in your source directory or "make package" in your object directory. The package will be in $objdir/dist. You don't really want to run a non-packaged build for anything useful anyway, since there are quite a few optimizations that happen at the packaging step.

Running mach package did significantly reduce the build size to about 100 MB uncompressed.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.