On Fri, Aug 28, 2015 at 08:47:05PM +0100, Stuart Henderson wrote: > On 2015/08/27 22:04, Matthew Martin wrote: > > ${WRKDIR}/bin is only in PATH during extract, configure, build, fake, > > and test. Since fake creates the chown and chgrp symlinks, extract, > > configure, build, and test must not depend on those symlinks as they > > don't depend on fake. Would it be acceptable to clean up the symlinks > > after fake completes or rm -f them in test in case test is run after > > fake? Both patches below fix the issue. > > > > However, I still believe that the first patch is correct as any ports it > > breaks has tests that depend on non-standard install(1) behavior caused > > by the perl wrapper so including ${WRKDIR}/bin in PATH is just > > concealing the breakage. > > This directory is used for other things which may get called during > test, for example symlinks bin/python -> /usr/local/bin/python-2.7 or > bin/cc -> /usr/local/bin/egcc, so I think that the patch which removes > ${WRKDIR}/bin from PATH during test is incorrect.
Fair enough. > > + @rm -f ${WRKDIR}/bin/chown ${WRKDIR}/bin/chgrp > > If you're going to do this, wouldn't it make sense to rm the install > wrapper as well? I didn't rm the install wrapper because Juan raised concerns about regressions. Since both chown and chgrp are created by fake, there couldn't be any test regressions this way. Although as I noted any test that relies on the install wrapper is likely broken anyway. > There might be a problem though, I suspect it will break things with > SEPARATE_BUILD=flavored, so from that perspective it would be safer > to target it tightly in the port which is actually affected by it > even if it's not quite "correct". I'm not familiar with how SEPARATE_BUILD works, so I'll defer to you on this. While I'd prefer a fix in the ports system, if it'd have other fallout, a patch for zsh is fine. - Matthew Martin