archdep revision 126744
12116Sjkh#!/bin/sh
22116Sjkh#
32116Sjkh# $FreeBSD: head/etc/rc.d/archdep 126744 2004-03-08 12:25:05Z pjd $
42116Sjkh#
52116Sjkh
62116Sjkh# PROVIDE: archdep
72116Sjkh# REQUIRE: LOGIN
82116Sjkh# BEFORE: abi
92116Sjkh# KEYWORD: FreeBSD nojail
102116Sjkh
118870Srgrimes. /etc/rc.subr
122116Sjkh
132116Sjkhname=archdep
142116Sjkhload_rc_config $name
152116Sjkh
16176451Sdas# should we print out unaligned access warnings?
17176451Sdas#
182116Sjkhunaligned_warnings()
192116Sjkh{
202116Sjkh	if ! checkyesno unaligned_print; then
212116Sjkh		sysctl machdep.unaligned_print=0
222116Sjkh	fi
232116Sjkh}
242116Sjkh
252116Sjkh# Alpha OSF/1 binary emulation
262116Sjkh#
272116Sjkhosf1_compat()
282116Sjkh{
292116Sjkh	if checkyesno osf1_enable; then
3097407Salfred		echo -n ' OSF/1'
3197407Salfred		if ! kldstat -v | grep osf1_ecoff > /dev/null; then
322116Sjkh			kldload osf1 > /dev/null 2>&1
332116Sjkh		fi
342116Sjkh	fi
35}
36
37# SCO binary emulation
38#
39ibcs2_compat()
40{
41	if checkyesno ibcs2_enable; then
42		echo -n ' ibcs2'
43		kldload ibcs2 > /dev/null 2>&1
44		case ${ibcs2_loaders} in
45		[Nn][Oo])
46			;;
47		*)
48			for i in ${ibcs2_loaders}; do
49				kldload ibcs2_$i > /dev/null 2>&1
50			done
51			;;
52		esac
53	fi
54}
55
56_arch=`${SYSCTL_N} hw.machine`
57echo -n "Initial $_arch initialization:"
58case $_arch in
59i386)
60	ibcs2_compat
61	;;
62alpha)
63	osf1_compat
64	unaligned_warnings
65	;;
66ia64)
67	unaligned_warnings
68	;;
69esac
70echo '.'
71