On a fresh install of 10.1-RC4, with few packages installed, (all from the FreeBSD pkg servers):
host# pkg install -y perl5
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
Checking integrity... done (0 conflicting)
The following 1 packages will be affected (of 0 checked):
New packages to be INSTALLED:
The process will require 47 MB more space.
[host] [1/1] Installing perl5-5.16.3_11: 100%
host# pkg which /usr/local/lib/perl5/site_perl/5.16/mach/sys/syscall.ph
/usr/local/lib/perl5/site_perl/5.16/mach/sys/syscall.ph was not found in the database
host# ls -l /usr/local/lib/perl5/site_perl/5.16/mach/sys/syscall.ph
-rw-r--r-- 1 root wheel 27911 Nov 11 04:31 /usr/local/lib/perl5/site_perl/5.16/mach/sys/syscall.ph
Basically, 'pkg which' is failing to tell which package included the syscall.ph file.
I think this is due to the perl5 port not staging the output
of h2ph properly into the 'stage' director when building.
I see it gets installed into /usr/local/... directly, but
there isn't a copy in the work/stage directory as it builds.
I see, after looking at this a bit more, that the problem is twofold:
1) 'pkg which' fails because the the .ph files are generated not
during the package staging, but rather as part of the post-install
script that is run when the package is installed.
2) I was doing a 'pkg -c dir ... -y install', and had only enough stuff
under 'dir' to allow the chroot to succeed. Which is /bin/sh and
three shared libraries. Because there was not a /usr/include directory,
there were not any .ph files generated.
Both of these are surprising to me.
That files get installed/created and not attributed to a package seems
wrong. And that the .ph files rely on the /usr/include hierarchy of the
target machine where they are being installed also seems kinda wrong.
I guess the final statement I have on this is that because the
chroot'd environment I was installing the package into had
only /bin/sh available, the entire post-install script for
the package installation failed, yet no notice of this failure
was emitted/logged anywhere.
Nor did the 'pkg' command exit with a non-zero status to indicate
that something had gone wrong.
Fix synopsis and assign.
Will be fixed when 194969 is committed.