Help with "port test"

Naram Qashat cyberbotx at cyberbotx.com
Tue Jul 15 11:39:45 UTC 2014


On 07/15/14 06:36, Stefan Esser wrote:
> Am 15.07.2014 11:48, schrieb Andrea Venturoli:
>> Hello.
>>
>> I'm trying to create a new port and there are some things I don't
>> understand.
>>
>> Referring to chapter 9 of the Porter's Handbook:
>>
>> _ "make clean; make package PREFIX=/var/tmp/`make -V PORTNAME`" gives no
>> error;
>>
>> _ "make stage && make check-orphans && make package" also finds no issue;
>>
>> _ however "port test" gives:
>>
>>> ===> Checking for directories owned by MTREEs
>>> Error: Owned by MTREE: @unexec rmdir "/usr/local" >/dev/null 2>&1 || :
>>
>> What does this mean?
>
> You are trying to delete the directory /usr/local, which is part of
> the base system.
>
> Just remove '@unexec rmdir "/usr/local" ...' from pkg-plist ...
>
> Regards, STefan

I actually think there is an error somewhere in the ports system (but I'm not 
sure where), depending on what the port is trying to do.

I found that if a port has a PLIST_SUB that replaces part of the PREFIX, it'll 
cause both porttools and poudriere to think that PREFIX is being removed 
incorrectly (I ran into this when testing devel/mingw32-gcc).

I also found that if a port has USE_LDCONFIG set, it'll incorrectly think that 
LOCALBASE is being removed because the ldconfig entry isn't being added to 
PREFIX but to LOCALBASE instead (I ran into this when testing 
x11-toolkits/scintilla).

I haven't looked too far into why this is happening, but those entries were 
showing up in work/.staged-files despite that they weren't in my pkg-plist. 
Hopefully this is enough information to allow someone with more knowledge of the 
ports infrastructure to correct it.

Thanks,
Naram Qashat


More information about the freebsd-ports mailing list