=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/etc/rc,v retrieving revision 1.516 retrieving revision 1.517 diff -c -r1.516 -r1.517 *** src/etc/rc 2017/08/28 06:56:54 1.516 --- src/etc/rc 2017/08/29 16:56:13 1.517 *************** *** 1,4 **** ! # $OpenBSD: rc,v 1.516 2017/08/28 06:56:54 ajacoutot Exp $ # System startup script run by init on autoboot or after single-user. # Output and error are redirected to console by init, and the console is the --- 1,4 ---- ! # $OpenBSD: rc,v 1.517 2017/08/29 16:56:13 rpe Exp $ # System startup script run by init on autoboot or after single-user. # Output and error are redirected to console by init, and the console is the *************** *** 186,204 **** done _libas=${_libas# } ! for _liba in $_libas; do ! _tmpdir=$(mktemp -dq /tmp/_librebuild.XXXXXXXXXXXX) && ( ! set -o errexit ! _lib=${_liba#/usr/lib/} ! _lib=${_lib%.a} ! cd $_tmpdir ! ar x ${_liba} cc -shared -o $_lib $(ls *.so | sort -R) $(cat .ldadd) [[ -s $_lib ]] && file $_lib | fgrep -q 'shared object' LD_BIND_NOW=1 LD_LIBRARY_PATH=$_tmpdir awk 'BEGIN {exit 0}' LD_BIND_NOW=1 LD_LIBRARY_PATH=$_tmpdir openssl \ x509 -in /etc/ssl/cert.pem -out /dev/null ! install -F -S -o root -g bin -m 0444 $_lib /usr/lib/$_lib ) || { _error=true; break; } done --- 186,216 ---- done _libas=${_libas# } ! for _liba in /usr/libdata/ld.so.a $_libas; do ! _tmpdir=$(mktemp -dq /tmp/_librebuild.XXXXXXXXXXXX) && ! ( ! set -o errexit ! _install='install -F -S -o root -g bin -m 0444' ! _lib=${_liba##*/} ! _lib=${_lib%.a} ! cd $_tmpdir ! ar x $_liba ! if [[ $_lib == ld.so ]]; then ! ld -g -x -e _dl_start \ ! --version-script=Symbols.map --shared -Bsymbolic \ ! --no-undefined -o ld.so.test $(ls *.o | sort -R) ! chmod u+x test-ld.so ! [[ $(./test-ld.so ok) == './test-ld.so: ok!' ]] ! $_install /usr/libexec/ld.so /usr/libexec/ld.so.save ! $_install ld.so.test /usr/libexec/ld.so ! else cc -shared -o $_lib $(ls *.so | sort -R) $(cat .ldadd) [[ -s $_lib ]] && file $_lib | fgrep -q 'shared object' LD_BIND_NOW=1 LD_LIBRARY_PATH=$_tmpdir awk 'BEGIN {exit 0}' LD_BIND_NOW=1 LD_LIBRARY_PATH=$_tmpdir openssl \ x509 -in /etc/ssl/cert.pem -out /dev/null ! $_install $_lib ${_liba%/*}/$_lib ! fi ) || { _error=true; break; } done