ldconfig revision 154114
178344Sobrien#!/bin/sh 278344Sobrien# 398184Sgordon# $NetBSD: ldconfig,v 1.5 2002/03/22 04:33:58 thorpej Exp $ 498184Sgordon# $FreeBSD: head/etc/rc.d/ldconfig 154114 2006-01-08 10:15:31Z dougb $ 578344Sobrien# 678344Sobrien 778344Sobrien# PROVIDE: ldconfig 8140339Sobrien# REQUIRE: mountcritremote cleanvar 998184Sgordon# BEFORE: DAEMON 1078344Sobrien 1178344Sobrien. /etc/rc.subr 1278344Sobrien 1378344Sobrienname="ldconfig" 1498184Sgordonldconfig_command="/sbin/ldconfig" 1578344Sobrienstart_cmd="ldconfig_start" 1678344Sobrienstop_cmd=":" 1778344Sobrien 1878344Sobrienldconfig_start() 1978344Sobrien{ 20124618Smtm _ins= 21124618Smtm ldconfig=${ldconfig_command} 22124618Smtm checkyesno ldconfig_insecure && _ins="-i" 23124618Smtm if [ -x "${ldconfig_command}" ]; then 24124618Smtm _LDC="/lib /usr/lib" 25154114Sdougb for i in ${ldconfig_local_dirs}; do 26154114Sdougb if [ -d "${i}" ]; then 27154114Sdougb ldconfig_paths="${ldconfig_paths} `find ${i} -type f`" 28154114Sdougb fi 29154114Sdougb done 30124618Smtm for i in ${ldconfig_paths} /etc/ld-elf.so.conf; do 31124618Smtm if [ -r "${i}" ]; then 32124618Smtm _LDC="${_LDC} ${i}" 33124618Smtm fi 34124618Smtm done 35124618Smtm echo 'ELF ldconfig path:' ${_LDC} 36124618Smtm ${ldconfig} -elf ${_ins} ${_LDC} 37124618Smtm 38154114Sdougb case `sysctl -n hw.machine_arch` in 39154114Sdougb amd64) 40154114Sdougb for i in ${ldconfig_local32_dirs}; do 41154114Sdougb if [ -d "${i}" ]; then 42154114Sdougb ldconfig32_paths="${ldconfig32_paths} `find ${i} -type f`" 43154114Sdougb fi 44154114Sdougb done 45154114Sdougb echo '32-bit compatibility ldconfig path:' ${ldconfig32_paths} 46154114Sdougb ${ldconfig} -32 -m ${_ins} ${ldconfig32_paths} 47154114Sdougb ;; 48154114Sdougb esac 49154114Sdougb 50124618Smtm # Legacy aout support for i386 only 51124618Smtm case `sysctl -n hw.machine_arch` in 52124618Smtm i386) 53124618Smtm # Default the a.out ldconfig path. 54124618Smtm : ${ldconfig_paths_aout=${ldconfig_paths}} 55124618Smtm _LDC=/usr/lib/aout 56124618Smtm for i in ${ldconfig_paths_aout} /etc/ld.so.conf; do 57117077Strhodes if [ -r "${i}" ]; then 58103436Speter _LDC="${_LDC} ${i}" 59103436Speter fi 60103436Speter done 61124618Smtm echo 'a.out ldconfig path:' ${_LDC} 62124618Smtm ${ldconfig} -aout ${_ins} ${_LDC} 63124618Smtm ;; 64124618Smtm esac 65124618Smtm fi 6678344Sobrien} 6778344Sobrien 6878344Sobrienload_rc_config $name 6978344Sobrienrun_rc_command "$1" 70