Firefox and llvm

Mikhail T. mi+thun at aldan.algebra.com
Tue Jun 18 02:24:19 UTC 2019


On 17.06.19 00:19, Jan Beich wrote:
>
>>> Good luck. Make sure to test in a clean environment e.g., via poudriere
>> Jan, this is the job of the port's maintainer... The current situation
>> -- requiring a rebuild of LLVM twice -- is ridiculous, should never
>> have come about, and should not remain for long. I hope, we agree on
>> the first and the second, at least...
> If you don't pay, don't help and don't do the homework why should I care?

Because my statement is true -- or not -- regardless of who makes it. 
Whether you hear it from a stranger, a fellow FreeBSD ports-maintainer, 
or the project's Founding Fathers, the need to rebuild a major software 
package twice to build a port is ridiculous. On its own...

Some years ago, in a moment of madness, we've created gcc-ooo port 
<https://www.freshports.org/lang/gcc-ooo> -- building an entire compiler 
suit purely for the sake of compiling OpenOffice.org. I'd argue, we're 
now suffering from the same malady again...

>>>> I can't see, what good llvm-objdump could do to the vast majority of users.
>>> See https://hg.mozilla.org/mozilla-central/rev/53d93ee3ad84
>>> While the commit was backed out the configure check wasn't, so maybe
>>> the intent is to reland in future.
>> So, it is not even being used?! And, if it were, it would only be for
>> some build-time library-reading, which the port could disable...
> dependentlibs.py doesn't appear to use on ELF platforms but mozbuild does.
> That "library-reading" is responsible for loading bundled shlibs e.g.,
>
> $ firefox example.com
> XPCOMGlueLoad error for file /usr/local/lib/firefox/libxul.so:
> Shared object "liblgpllibs.so" not found, required by "libxul.so"
> Couldn't load XPCOM.
>
> Please, file a bug upstream.
I might -- and/or we reintroduce the wrapper script to set 
LD_LIBRARY_PATH before spawning the real firefox... But llvm-objdump is 
part of the base by default on 12.0-stable... And here is the buildlog 
of firefox using /usr/bin/c++ 
<http://aldan.algebra.com/~mi/tmp/firefox-c++.log>.
> Indeed, https://svnweb.freebsd.org/changeset/base/310840 but Firefox 
> needs llvm-objdump >= 7.0 which would exclude FreeBSD 12.0.
On my 11.2-stable system, I still build firefox with llvm60...
> $ /poudriere/jails/120amd64/usr/bin/llvm-objdump --private-headers \
>    /usr/local/lib/firefox/libxul.so | fgrep NEEDED
> $ /poudriere/jails/head-amd64/usr/bin/llvm-objdump --private-headers \
>    /usr/local/lib/firefox/libxul.so | fgrep NEEDED
>    NEEDED               liblgpllibs.so
>    NEEDED               libmozgtk.so
>    NEEDED               libmozwayland.so
> [...]

Are you saying, llvm-objdump is a /run-time/ dependency? How did we get 
here from the earlier "llvm-objdump is only needed by firefox' configure"?

Yours,

    -mi



More information about the freebsd-gecko mailing list