archdep revision 155838
1#!/bin/sh
2#
3# $FreeBSD: head/etc/rc.d/archdep 155838 2006-02-19 08:18:48Z dougb $
4#
5
6# PROVIDE: archdep
7# REQUIRE: mountcritremote
8# KEYWORD: nojail
9
10. /etc/rc.subr
11
12name=archdep
13start_cmd="archdep_start"
14stop_cmd=":"
15
16# should we print out unaligned access warnings?
17#
18unaligned_warnings()
19{
20	if ! checkyesno unaligned_print; then
21		sysctl machdep.unaligned_print=0
22	fi
23}
24
25# Alpha OSF/1 binary emulation
26#
27osf1_compat()
28{
29	if checkyesno osf1_enable; then
30		echo -n ' OSF/1'
31		if ! kldstat -v | grep osf1_ecoff > /dev/null; then
32			kldload osf1 > /dev/null 2>&1
33		fi
34	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
56archdep_start()
57{
58	_arch=`${SYSCTL_N} hw.machine_arch`
59	echo -n "Initial $_arch initialization:"
60	case $_arch in
61	i386)
62		ibcs2_compat
63		;;
64	alpha)
65		osf1_compat
66		unaligned_warnings
67		;;
68	esac
69	echo '.'
70}
71
72load_rc_config $name
73run_rc_command "$1"
74