This is a note for anybody who builds firefox.  The official release
of 57.0 is Tuesday, but the source is out there and it's Tuesday
here , so I've put it in the book - it will be rendered in (I think)
a little under an hour.

At the moment I haven't closed the ticket - almost every release of
firefox comes with vulnerability fixes, I'm waiting for the Release
Notes to decide if I should increase the severity of the ticket (and
by the same token, anybody who cares about security should be
updating their graphical browser for new releases).

Anyway, the reason I'm mentioning this here is that I've moved the
book to using Stylo (the rust style crate, which is the new CSS
rendering engine that upstream want to use) - until this weekend I
didn't know how to get stylo to build with system nspr, pixman.

Now that stylo is being used, there are two significant changes:

1. It needs clang (>= 3.9)

2. It's a lot bigger (7.2GB total, or about an extra 0.8GB compared
to non-stylo).

For the moment the use of stylo, as with pulseaudio, is optional
(I've build-tested with alsa and I had a working non-stylo install
with the last beta last week, build-tested with the release).  In
the future these options may disappear.

This release also increases the amount of sandboxing on linux
builds (to be similar to what is done on windows) which along with
using rust instead of C/C++ will hopefully reduce the attack
surface.  That also means that old XUL extensions will not work -
some have been moved to the new-style, others either cannot be or
will lose some functionality.

One of my machines has greasemonkey installed although I long-since
stopped trying to use it - got an update when I ran 57.0 with an
instruction to contact the authors of any scripts I use, to see if
they will/can be updated.  Meanwhile, if posts on forums are to be
believed (as if), XUL add-ons are the only reason many people can
see for using firefox, so some of you might take a different view.

But the set of released browsers which can be built from source on
a gcc-7 system whilst supporting XUL extensions is an empty set.
Maybe basilisk will soon have a release.

For once I was not only ready, I decided to update my "maintained"
older BLFS releases *before* editing the book (to confirm that I
*could* build suitable clang on older systems).  And here I
discovered that the elapsed SBU on nominally 4-core machines varies
greatly (similar figures for 8.1 and recent svn, slightly bigger
figures for 8.0 and 7.10), and the key difference seems to be which
machine (i.e. what CPU).

What is particularly noteworthy is my SandyBridge i3 - the SBU on
that is flattered because it can do quite a lot with one core when
building binutils, but looking back at the measurements my scripts
make I see it has always been "a bit slow" (i.e. higher SBU) for
at least the last few versions of firefox - but by 56 it had
gradually increased to around 28 SBU, with 57 and stylo it is around
33 SBU.

These builds have included various versions of clang (I built 4.0.1
for some of the older systems, then changed to 5.0.0 which might run
slower), and a couple of recent svn builds are using a later version
of rust - but any differences on the other machines seem to be lost
in the general noise.  So why that i3 is so slow I have no idea.

Anyway, 57 is in the book, with a note that the build times seem to
vary widely.  Share and enjoy.

ĸen
-- 
Truth, in front of her huge walk-in wardrobe, selected black leather
boots with stiletto heels for such a barefaced truth.
                                     - Unseen Academicals
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to