1#!/bin/sh 2# 3# $FreeBSD: releng/10.3/etc/rc.d/abi 296916 2016-03-15 19:34:58Z dchagin $ 4# 5 6# PROVIDE: abi 7# REQUIRE: archdep 8# KEYWORD: nojail 9 10. /etc/rc.subr 11 12name="abi" 13start_cmd="${name}_start" 14stop_cmd=":" 15 16sysv_start() 17{ 18 echo -n ' sysvipc' 19 load_kld sysvmsg 20 load_kld sysvsem 21 load_kld sysvshm 22} 23 24linux_start() 25{ 26 local _tmpdir 27 28 echo -n ' linux' 29 load_kld -e 'linux(aout|elf)' linux 30 case `sysctl -n hw.machine_arch` in 31 amd64) 32 load_kld -e 'linux64elf' linux64 33 ;; 34 esac 35 if [ -x /compat/linux/sbin/ldconfigDisabled ]; then 36 _tmpdir=`mktemp -d -t linux-ldconfig` 37 /compat/linux/sbin/ldconfig -C ${_tmpdir}/ld.so.cache 38 if ! cmp -s ${_tmpdir}/ld.so.cache /compat/linux/etc/ld.so.cache; then 39 cat ${_tmpdir}/ld.so.cache > /compat/linux/etc/ld.so.cache 40 fi 41 rm -rf ${_tmpdir} 42 fi 43} 44 45svr4_start() 46{ 47 echo -n ' svr4' 48 load_kld -m svr4elf svr4 49} 50 51abi_start() 52{ 53 local _echostop 54 55 _echostop= 56 if checkyesno sysvipc_enable || checkyesno linux_enable || checkyesno svr4_enable; then 57 echo -n 'Additional ABI support:' 58 _echostop=yes 59 fi 60 61 checkyesno sysvipc_enable && sysv_start 62 checkyesno linux_enable && linux_start 63 checkyesno svr4_enable && svr4_start 64 65 [ -n "${_echostop}" ] && echo '.' 66} 67 68load_rc_config $name 69run_rc_command "$1" 70