Changeset e399c12 for xsoft/graphweb/firefox.xml
- Timestamp:
- 05/21/2019 04:35:28 PM (5 years ago)
- Branches:
- 10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, 9.0, 9.1, 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:
- ba6d702
- Parents:
- 77deb22e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
xsoft/graphweb/firefox.xml
r77deb22e re399c12 7 7 <!ENTITY firefox-download-http "&mozilla-http;/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.xz"> 8 8 <!ENTITY firefox-download-ftp " "> 9 <!ENTITY firefox-md5sum " a3d00fb4e950558135f08a5155745d4e">10 <!ENTITY firefox-size "2 69MB">9 <!ENTITY firefox-md5sum "41a5d504deaed12ebf0e25bb1420f08"> 10 <!ENTITY firefox-size "270 MB"> 11 11 <!-- NB with stylo, much of the build uses rust, and therefore cargo files. 12 12 But the extra cached cargo files, if any, seem to be minimal --> 13 <!ENTITY firefox-buildsize " 11.8 GB (156MB installed) without tests">13 <!ENTITY firefox-buildsize "3.8 GB (154 MB installed) without tests"> 14 14 <!-- editors: with ff63 and rust-1.29, ./mach build -j4 is probably the 15 15 most practical way to get a timing on a machine with more cores, if taking 16 16 cores offline is not practical. If in doubt, round up --> 17 <!ENTITY firefox-time "2 5SBU (with parallelism=4) without tests">17 <!ENTITY firefox-time "28 SBU (with parallelism=4) without tests"> 18 18 ]> 19 19 … … 139 139 <xref linkend="autoconf213"/>, 140 140 <xref linkend="cbindgen"/>, 141 <application>Clang</application> (from <xref linkend="llvm"/>),142 141 both <xref linkend="gtk3"/> and 143 142 <xref linkend="gtk2"/>, … … 162 161 <!-- fails to build in 65.0 (headers changed) 163 162 <xref linkend="libvpx"/>, --> 164 <xref linkend="libwebp"/>, and 163 <xref linkend="libwebp"/>, 164 <xref linkend="nasm"/>, and 165 165 <xref linkend="sqlite"/> 166 166 </para> … … 257 257 ac_add_options --with-system-icu 258 258 259 # The gold linker is no-longer the default 260 ac_add_options --enable-linker=gold 261 262 # The shipped libdavid (av1 decoder) is not built by default, 263 # at least on linux, but if nasm is not present libxul tries to 264 # link to one of libdavid's objects and fails. It is thought 265 # libdavid will be enabled in firefox-67, at which point nasm 266 # might be required. 267 ac_add_options --disable-av1 259 # Do not specify the gold linker which is not the default. It will take 260 # longer and use more disk space when debug symbols are disabled. 261 262 # libdavid (av1 decoder) requires nasm. Uncomment this if nasm 263 # has not been installed. 264 #ac_add_options --disable-av1 268 265 269 266 # You cannot distribute the binary if you do this … … 279 276 #ac_add_options --disable-strip 280 277 #ac_add_options --disable-install-strip 278 279 # Disabling debug symbols makes the build much smaller and a little 280 # faster. Comment this if you need to run a debugger. 281 ac_add_options --disable-debug-symbols 281 282 282 283 # The BLFS editors recommend not changing anything below this line: … … 290 291 ac_add_options --disable-tests 291 292 292 # With clang, unlike gcc-7 and later, the default level 293 # of optimization produces a working build. 293 # The default level of optimization again produces a working build with gcc. 294 294 ac_add_options --enable-optimize 295 295 … … 362 362 363 363 <para> 364 <!-- Invoke the Python script to compile the package: --> 365 To use the system version of ICU, run a sed to avoid a conflict between 364 If you are still using ICU-63, run a sed to avoid a conflict between 366 365 upstream ICU's use of <literal>CheckImpl()</literal> in their public headers 367 366 and firefox's internal use of a different <literal>CheckImpl()</literal>. 368 Then invoke the Python2 script to compile the package. 369 </para> 370 371 <screen><userinput>sed -e 's/checkImpl/checkFFImpl/g' -i js/src/vm/JSContext*.h && 372 export CC=clang CXX=clang++ AR=llvm-ar NM=llvm-nm RANLIB=llvm-ranlib && 367 </para> 368 369 <screen role="nodump"><userinput>sed -e 's/checkImpl/checkFFImpl/g' -i js/src/vm/JSContext*.h</userinput></screen> 370 371 <para> 372 Invoke the Python2 script to compile the package. 373 </para> 374 375 <screen><userinput>export CC=gcc CXX=g++ && 373 376 export MOZBUILD_STATE_PATH=${PWD}/mozbuild && 374 377 ./mach build</userinput></screen> … … 398 401 </para> 399 402 400 <screen><userinput>unset CC CXX AR NM RANLIBMOZBUILD_STATE_PATH</userinput></screen>403 <screen><userinput>unset CC CXX MOZBUILD_STATE_PATH</userinput></screen> 401 404 402 405 </sect2> … … 407 410 <para> 408 411 <command>sed -e 's/checkImpl/checkFFImpl/g' ...</command>: Although the 409 package ships with a modified version of <application>ICU-59</application> 410 and only tests that the system version, if requested, is at least 59, 411 changes in <emphasis>some</emphasis> versions cause builds with the system 412 version to fail with error messages of the form <literal>no void 413 JSContext::checkImpl_NN member function</literal> where NN is the system 414 <application>ICU</application> version. The sed renames the local function. 415 </para> 416 417 <para> 418 <command>export CC=clang CXX=clang++ ...</command>: Upstream now use 419 <application>clang</application> and building with any recent version 420 saves a lot of space. 412 package ships with a modified version of <application>ICU-63</application> 413 and only tests that the system version, if used, is at least 63, changes 414 from upstream 63 cause builds with the system version to fail with an error 415 message <literal>no void JSContext::checkImpl_63 member function</literal>. 416 The sed renames the local function. Upstream ICU-64 works around this. 417 </para> 418 419 <para> 420 <command>export CC=gcc CXX=g++ ...</command>: Upstream now prefer 421 <application>clang</application>, but gcc is a more secure compiler and 422 now produces reasonably-sized builds. 421 423 </para> 422 424 … … 454 456 of cores, e.g. -j4 for 4 cores: First, if using all the cores causes 455 457 the build to swap because you have insufficient memory (e.g. for 4 cores 456 a build without system graphite2 and harfbuzz now uses slightly over8GB458 a build without system graphite2 and harfbuzz now uses towards 8GB 457 459 of RAM). In such cases, using fewer cores can be faster. Second, on some 458 460 machines the middle part of the build can drag on as if only one core is … … 474 476 class="directory">/usr/lib/mozilla/plugins</filename> by default, but the 475 477 symbolic link is made to keep all the plugins installed in one folder. 478 </para> 479 480 <para> 481 <option>export CC=clang CXX=clang++ AR=llvm-ar NM=llvm-nm RANLIB=llvm-ranlib</option>: 482 Use this as an alternative to building with gcc and g++ if you wish to use 483 the clang toolchain. Remember to unset these variables after the build. 476 484 </para> 477 485
Note:
See TracChangeset
for help on using the changeset viewer.