abi revision 179930
1227825Stheraven#!/bin/sh 2227825Stheraven# 3227825Stheraven# $FreeBSD: head/etc/rc.d/abi 179930 2008-06-22 16:19:50Z mtm $ 4227825Stheraven# 5227825Stheraven 6227825Stheraven# PROVIDE: abi 7227825Stheraven# REQUIRE: archdep 8227825Stheraven# KEYWORD: nojail 9227825Stheraven 10227825Stheraven. /etc/rc.subr 11227825Stheraven 12227825Stheravenname="abi" 13227825Stheravenstart_cmd="${name}_start" 14227825Stheravenstop_cmd=":" 15227825Stheraven 16227825Stheravensysv_start() 17227825Stheraven{ 18227825Stheraven echo -n ' sysvipc' 19227825Stheraven load_kld sysvmsg 20227825Stheraven load_kld sysvsem 21227825Stheraven load_kld sysvshm 22227825Stheraven} 23227825Stheraven 24227825Stheravenlinux_start() 25227825Stheraven{ 26227825Stheraven local _tmpdir 27227825Stheraven 28227825Stheraven echo -n ' linux' 29227825Stheraven load_kld -e 'linux(aout|elf)' linux 30227825Stheraven if [ -x /compat/linux/sbin/ldconfigDisabled ]; then 31227825Stheraven _tmpdir=`mktemp -d -t linux-ldconfig` 32227825Stheraven /compat/linux/sbin/ldconfig -C ${_tmpdir}/ld.so.cache 33227825Stheraven if ! cmp -s ${_tmpdir}/ld.so.cache /compat/linux/etc/ld.so.cache; then 34227825Stheraven cat ${_tmpdir}/ld.so.cache > /compat/linux/etc/ld.so.cache 35227825Stheraven fi 36227825Stheraven rm -rf ${_tmpdir} 37227825Stheraven fi 38227825Stheraven} 39227825Stheraven 40227825Stheravensvr4_start() 41227825Stheraven{ 42227825Stheraven echo -n ' svr4' 43227825Stheraven load_kld -m svr4elf svr4 44227825Stheraven} 45227825Stheraven 46227825Stheravenabi_start() 47227825Stheraven{ 48227825Stheraven local _echostop 49227825Stheraven 50227825Stheraven _echostop= 51227825Stheraven if checkyesno sysvipc_enable || checkyesno linux_enable || checkyesno svr4_enable; then 52227825Stheraven echo -n 'Additional ABI support:' 53227825Stheraven _echostop=yes 54227825Stheraven fi 55227825Stheraven 56227825Stheraven checkyesno sysvipc_enable && sysv_start 57227825Stheraven checkyesno linux_enable && linux_start 58227825Stheraven checkyesno svr4_enable && svr4_start 59227825Stheraven 60227825Stheraven [ -n "${_echostop}" ] && echo '.' 61227825Stheraven} 62227825Stheraven 63227825Stheravenload_rc_config $name 64227825Stheravenrun_rc_command "$1" 65227825Stheraven