On Thu, Jan 26, 2017 at 10:18:19AM -0800, j...@theusgroup.com wrote:
> In your message you wrote:
> > ...
> >On Wed, Jan 25, 2017 at 10:54:27PM -0800, john--- via freebsd-ports
> >wrote: > Both llvm39 and binutils failed to install recently because
> >they both have > hard links that cross directories. On this machine,
> >those directories, both > in /usr/local on on different zfs filesystems.
> >> > I've had this directory structure for several years without issue,
> >so this use > of hard links is new. > > Is this use of hard links
> >something I should expect to see looking forward or > is it an error?
> >
> >Some cross directory hardlinks in llvm## have been around since at least
> >October 2013. Without a specific example I can't say more.
> >
> >-- Brooks
> >
>
> Here's one example:
>
> # ls -il /usr/ports/devel/llvm39/work/stage/usr/local/llvm39/bin/lit
> 4797459 -r-xr-xr-x 4 root wheel 82 Jan 24 10:17 lit
>
> # ls -il /usr/ports/devel/llvm39/work/stage/usr/local/bin/llvm-lit39
> 4797459 -r-xr-xr-x 4 root wheel 82 Jan 24 10:17 llvm-lit39
>
> As I stated above llvm37 and the previous version of binutils both installed
> without issue.
>
> # pkg info llvm\*
> llvm33-3.3_10
> llvm34-3.4.2_1
> llvm35-3.5.2
> llvm36-3.6.2_2
> llvm37-3.7.1_3
>
> # pkg info llvm37
> Name : llvm37
> Version: 3.7.1_3
> Installed on : Fri Sep 23 09:09:32 2016 PDT
> Origin : devel/llvm37
> Architecture : freebsd:10:x86:64
> Prefix : /usr/local
> Categories : devel lang
> Licenses :
> Maintainer : bro...@freebsd.org
> WWW: http://llvm.org/
> Comment: LLVM and Clang
> Options:
> CLANG : on
> COMPILER_RT: on
> DOCS : off
> EXTRAS : on
> GOLD : on
> LIT: on
>
> Checking /usr/local/llvm37/bin shows no file named "lit", so I assume these
> hard links came with files that didn't exist in llvm37.
>
> John Theus
> TheUs Group
> LLD: on
> LLDB : on
> OPENMP : on
>
I can only guess that you don't have them because an older version of pkg
failed to tell you that they weren't installed because llvm37 definitely
does create such a link in the port. Something has definitely gone wrong
on your system, but I'm at a lost a to what it it. Here's what I'd
expect to see:
$ ls -li /usr/local/bin/*lit*37 /usr/local/llvm37/bin/*lit*
1580744 -r-xr-xr-x 4 root wheel 82 Dec 27 05:29 /usr/local/bin/lit37
1580744 -r-xr-xr-x 4 root wheel 82 Dec 27 05:29 /usr/local/bin/llvm-lit37
1580744 -r-xr-xr-x 4 root wheel 82 Dec 27 05:29 /usr/local/llvm37/bin/lit
1580744 -r-xr-xr-x 4 root wheel 82 Dec 27 05:29
/usr/local/llvm37/bin/llvm-lit
That being said, I could switch them to symlinks. In general I don't
like this as a precedent. I'm definitely not willing to support arbitrary
filesystem hierarchies so if we're going to do this, we need some sort
of principles for splits that we're willing to support.
-- Brooks
signature.asc
Description: PGP signature