lld status on the freebsd ports

Rafael Avila de Espindola via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 5 07:16:54 PST 2017


Ed Maste <emaste at freebsd.org> writes:

> I currently have the following changes in my ports tree:
>
> 1. fix pkg basename/dirname configure test
>
> pkg built and was trying to link an object file containing a
> version-extended symbol (basename at FBSD_1.0). I submitted
> http://llvm.org/pr31495 since GNU ld handles this case, although here
> it's really a bug in pkg's configure script which is now fixed in
> https://github.com/freebsd/pkg/commit/05ce724323422f728b6a8c024e9822aec8bb2732

Thanks.

> 2. disable DTRACE options by default in a number of ports
>
> It appears FreeBSD dtrace is producing objects with an incorrect
> relocation that GNU ld happens to accept in some undefined way. Mark
> Johnston is looking into this and for now I've just disabled the use
> of userland dtrace in 9 ports.

I hacked lld instead, patch attached.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: lld-freebsd-hack.patch
Type: text/x-patch
Size: 4511 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170105/7ed3a3a1/attachment.bin>
-------------- next part --------------


> My patched ports tree is at
> https://github.com/emaste/freebsd-ports/commits/ports-lld. I haven't
> yet patched lld with the "not GNU" hack or search paths, and haven't
> touched libtool in this tree. My build is still running, with a total
> of 13020 ports built across multiple runs.
>
> So far the port failures with the largest number of transitive dependencies are:
>
> multimedia/gstreamer-plugins (947)
> devel/pear (475)
> audio/openal-soft (149)
> lang/fpc (107)
> lang/gcc6-aux (52)
> lang/mono (49)
>
> I haven't investigated these in depth, but gstreamer-plugins appears
> to be due to the libtool issue. fpc reports "error: invalid alignment
> of section headers" and I'll grab a reproducer cpio for it some time
> after this run finishes. gcc6-aux is due to the default search paths
> (the port contains a bootstrap GCC which does not pass paths via -L).

Thanks. I am still catching up with email after vacations, but will give
your ports tree a try as soon as I can. Where can one find the number of
dependencies in the output?

Cheers,
Rafael


More information about the llvm-commits mailing list