On 2012/11/05 13:57, Marc Espie wrote: > > This stuff is totally a moving target, it is probably going to change in > the future. > > > Note that there are very good reasons to prefer pie binaries in MOST cases, > including for 'static' binaries... > > So, as far as the chroot way goes, the most correct fix is probably > to provide ld.so along with your binaries... >
It would be good to have some guidance on what to do with these, a number of ports are affected. There are likely to be more, this is from a quick look over things using '-static' in patches or ports tree Makefiles. >specific static flavours:- archivers/gtar archivers/star misc/screen shells/tcsh net/nslint, static flavour security/shash, static flavour I presume the above just need -fno-pie / -nopie (or zap the static flavour if there's no point; nslint doesn't seem useful for example, not sure about shash). gtar/star/screen/tcsh are obviously intended for a recovery environment and I think should not require ld.so. >others due to chroot:- mail/femail mail/mini_sendmail net/icinga net/nagios www/fcgi-cgi devel/fossil sysutils/nut www/cgit www/haserl www/mimetex www/squid Any suggestions? We could have an always-update package containing a copy of ld.so that installs to /var/www/usr/libexec that these depend on, but if we make further changes to ld.so requiring something new from the kernel, it's going to get out of sync. Including /var/www/usr/libexec/ld.so in base would be safer but does not seem a particularly attractive option. Note that these are currently *broken* as packaged; existing users of the packages are unlikely to see the breakage, no libc bump since PIE (and in several of these cases no dependency on libc in the whole package anyway) so there won't have been reason for pkg_add to update them. However people installing these from scratch (or forcing an update) will have problems. >some others known to use -static:- security/tempwatch security/cryptcat x11/wmii benchmarks/bonnie benchmarks/bytebench