Adds a -H to all uses of find(1) in distviper so symlinks are handled
correctly
By default find(1) will not follow symlinks given on the command-line.
There are several places in distviper where find is used without
allowing for this.
In particular in the default mode, if PORTSDIR is a link and DISTDIR
isn't, then no distinfo files are found and all the distfiles are
deleted.
This can be fixed by either making sure that find is given directory
names that end in a "/" or with the -H option.
PR: 194567
Submitted by: rwmaillists@googlemail.com
Approved by: Carlos Jacobo Puga Medina <cpm@fbsd.es> (maintainer)
/bin/sh does not set OSTYPE, so this variable is inherited from the
shell from which pkg_libchk is invoked. From all standard shells in
the base system, only csh and tcsh do set this variable, so when
pkg_libchk is invoked from sh (that is not invoked from csh-like
shell), this variable will be empty. Moreover, bash sets OSTYPE to
freebsdX.Y, so grepping on output of 'readelf -e' wont work either.
'uname -s' provides much more reliable way to get the name of the
operating system and all *BSD ELF ABI types inside readelf correspond
to the 'uname -s':
{{{
case ELFOSABI_NETBSD: return "UNIX - NetBSD";
case ELFOSABI_FREEBSD: return "UNIX - FreeBSD";
case ELFOSABI_OPENBSD: return "UNIX - OpenBSD";
}}}
PR: ports/158967
Approved-by: Dominic Fandrey <kamikaze@bsdforen.de> (maintainer), erwin (mentor)
Feature-safe: yes