This allows setting flags for PaX on select binaries. Two new variables
are introduced for packages: NOT_PAX_ASLR_SAFE and NOT_PAX_MPROTECT_SAFE.
They both expect a list of binaries are known to not support PaX ASLR
and/or PaX MPROTECT, respectively.
"Please commit" wiz@
with what packages such as multimedia/ffmpeg2 expect, and as so few
packages have texi2html in USE_TOOLS it may be causing more problems
that it is worth to save a few dependencies. PR#51113.
The find-prefix infrastructure was required in a pkgviews world where
packages installed from pkgsrc could have different installation
prefixes, and this was a way for a dependency prefix to be determined.
Now that pkgviews has been removed there is no longer any need for the
overhead of this infrastructure. Instead we use BUILDLINK_PREFIX.pkg
for dependencies pulled in via buildlink, or LOCALBASE/PREFIX where the
dependency is coming from pkgsrc.
Provides a reasonable performance win due to the reduction of `pkg_info
-qp` calls, some of which were redundant anyway as they were duplicating
the same information provided by BUILDLINK_PREFIX.pkg.
problems that are fixed by using the pkgsrc version, and no platform
other than Cygwin tries to use a native version.
Consensus is that due to the limited impact and clear benefit this is
ok to go in during the freeze despite being an infrastructure change.
Initial patchset to add support by rodent@
Further adjustments made based on feedback by joerg@
Tested by myself with numerous bulkbuilds thanks to Patrick Wildt @ Bitrig
Reviewed by bsiegert@ joerg@ wiz@
* Test for /usr/sbin/chgrp (it's a link, but hey);
* Test for /usr/sbin/openssl as an alternative location. There is no entry
in /usr/bin (at least in OpenBSD 5.6);
* /usr/bin/tbl doesn't exist in OpenBSD 5.6, so test for it before setting;
Fixes unwanted execution of {aclocal,automake}-${latest_version} for the
case configure.ac (or something) is patched, but configure is also alredy
regenerated and aclocal and automake are not required (not in USE_TOOLS).
XXX: if {aclocal,automake}-${latest_version} is really required by somewhere,
XXX: it should be created below, same as plain aclocal and automake.
* if p5-* in {,BUILD_,TOOL_}DEPENDS, use perl5 from pkgsrc.
* check whether builtin perl satisfies PERL5_REQD, or use perl5 from pkgsrc.
* if buitin perl satisfies all {perl>=n.m,p5-foo>=x.y} style dependencies,
get rid of such dependencies and use builtin perl.