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: perl5: 5.16.3_11 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.