Ignore:
Timestamp:
10/28/2018 09:15:43 PM (5 years ago)
Author:
Ken Moffat <ken@…>
Branches:
10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, 8.4, 9.0, 9.1, bdubbs/svn, elogind, kea, ken/TL2024, ken/inkscape-core-mods, ken/tuningfonts, lazarus, lxqt, plabs/newcss, plabs/python-mods, python3.11, qt5new, rahul/power-profiles-daemon, renodr/vulkan-addition, trunk, upgradedb, xry111/intltool, xry111/llvm18, xry111/soup3, xry111/test-20220226, xry111/xf86-video-removal
Children:
2bd2dce
Parents:
7810f94
Message:

Firefox: stop recommending system ICU, and use clang to save build space.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@20655 af4574ff-66df-0310-9fd7-8a98e5e911e0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • xsoft/graphweb/firefox.xml

    r7810f94 r9a469bc  
    1111  <!-- NB with stylo, much of the build uses rust, and therefore cargo files.
    1212    But the extra cached cargo files, if any, seem to be minimal -->
    13   <!ENTITY firefox-buildsize     "9.9 GB (141 MB installed) without tests">
    14   <!ENTITY firefox-time          "30 SBU (with parallelism=4) without tests">
     13  <!ENTITY firefox-buildsize     "9.0 GB (153 MB installed) without tests">
     14  <!-- editors: with ff63 and rust-1.29, ./mach build -j4 is probably the
     15   most practical way to get a timing on a machine with more cores.  If in
     16   doubt, round up -->
     17  <!ENTITY firefox-time          "22 SBU (with parallelism=4) without tests">
    1518]>
    1619
     
    154157    <bridgehead renderas="sect4">Recommended</bridgehead>
    155158    <para role="recommended">
    156       <xref linkend="icu"/>,
     159<!--  <xref linkend="icu"/>, with icu <61 or >62, JSContext FTBFS -->
    157160      <xref linkend="libevent"/>,
    158161      <xref linkend="libvpx"/>,
     
    243246ac_add_options --disable-gconf
    244247
    245 # Uncomment this if you have not installed nodejs
    246 # but note that nodejs will be required in firefox-64 
    247 #ac_add_options --disable-nodejs 
     248# Uncomment this if you have not installed nodejs,
     249# but note that nodejs will be required in firefox-64
     250#ac_add_options --disable-nodejs
    248251
    249252# From firefox-61, the stylo CSS code can no-longer be disabled
     
    256259ac_add_options --with-system-nspr
    257260ac_add_options --with-system-nss
    258 ac_add_options --with-system-icu
     261
     262# Only enable system icu if the version is 61 or 62
     263#ac_add_options --with-system-icu
     264
     265# The gold linker is no-longer the default
     266ac_add_options --enable-linker=gold
     267
     268# You cannot distribute the binary if you do this
     269ac_add_options --enable-official-branding
    259270
    260271# If you are going to apply the patch for system graphite
     
    280291# Optimization for size is broken with gcc7 and later
    281292ac_add_options --enable-optimize="-O2"
    282 
    283 ac_add_options --enable-official-branding
    284293
    285294# From firefox-61 system cairo is not supported
     
    345354    </para>
    346355
    347 <screen><userinput>./mach build</userinput></screen>
     356<screen><userinput>export CC=clang CXX=clang++ AR=llvm-ar NM=llvm-nm RANLIB=llvm-ranlib &amp;&amp;
     357./mach build &amp;&amp;
     358unset CC CXX AR NM RANLIB</userinput></screen>
    348359
    349360    <para>
     
    382393
    383394    <para>
     395      <command>export CC=clang CXX=clang++ ...</command>: Upstream now use
     396      <application>clang</application> and building with any recent version
     397      saves a lot of space.
     398    </para>
     399
     400    <para>
    384401      <command>./mach build</command>: <application>Firefox</application>
    385402      now uses this <application>python2</application> script to run the
     
    391408      need details of which files are being compiled, together with any C or
    392409      C++ flags being used.
     410    </para>
     411
     412    <para>
     413      <option>./mach build -j4</option>: In theory, <command>mach</command>
     414      will use the number of online CPU cores - but on some machines the bulk
     415      of the build will drag on as if only 1 core is present. Specifying the
     416      number of jobs (4 in this example) fixes that.  Unlike traditional
     417      recommendations for running <command>make</command>, the exact number
     418      of cores is usually fastest - exceptionally, N+1 may be better on a
     419      well-specified modern machine. But do NOT use this if building from a
     420      term where <command>taskset</command> has been used to restrict the
     421      available cores.
    393422    </para>
    394423
Note: See TracChangeset for help on using the changeset viewer.