diff options
author | gordon <gordon@FreeBSD.org> | 2002-09-05 20:29:18 +0000 |
---|---|---|
committer | gordon <gordon@FreeBSD.org> | 2002-09-05 20:29:18 +0000 |
commit | b0ff5bb69d99fd3750297c3f567c1a5cd50782e7 (patch) | |
tree | d84e3f11a6a6bbb7bf970603d075b0fd6f863e2c /etc/rc.d/archdep | |
parent | 80704cd6a8a2a0695b39f547e7db36b0cb9f7d6f (diff) | |
download | FreeBSD-src-b0ff5bb69d99fd3750297c3f567c1a5cd50782e7.zip FreeBSD-src-b0ff5bb69d99fd3750297c3f567c1a5cd50782e7.tar.gz |
Add an archdep script and hook it up to the build.
Submitted by: Mike Makonnen <makonnen@pacbell.net>
Diffstat (limited to 'etc/rc.d/archdep')
-rw-r--r-- | etc/rc.d/archdep | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/etc/rc.d/archdep b/etc/rc.d/archdep new file mode 100644 index 0000000..28bf7bc --- /dev/null +++ b/etc/rc.d/archdep @@ -0,0 +1,81 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: archdep +# REQUIRE: LOGIN +# BEFORE: abi +# KEYWORD: FreeBSD + +. /etc/rc.subr + +name=archdep +load_rc_config $name + +# should we print out unaligned access warnings? +# +unaligned_warnings() +{ + if ! checkyesno unaligned_print ; then + sysctl machdep.unaligned_print=0 + fi +} + +# Alpha OSF/1 binary emulation +# +osf1_compat() +{ + if checkyesno osf1_enable ; then + echo -n ' OSF/1' + if ! kldstat -v | grep osf1_ecoff > /dev/null; then + kldload osf1 > /dev/null 2>&1 + fi + fi +} + +# SCO binary emulation +# +ibcs2_compat() +{ + if checkyesno ibcs2_enable ; then + echo -n ' ibcs2' + kldload ibcs2 > /dev/null 2>&1 + case ${ibcs2_loaders} in + [Nn][Oo]) + ;; + *) + for i in ${ibcs2_loaders}; do + kldload ibcs2_$i > /dev/null 2>&1 + done + ;; + esac + fi +} + +# X-10 Daemon +# +x10_daemon() +{ + if checkyesno xtend_enable ; then + echo -n ' xtend' + /usr/libexec/xtend + fi +} + +_arch=`${SYSCTL_N} hw.machine` +echo -n "Initial $_arch initialization:" +case $_arch in +i386) + ibcs2_compat + x10_daemon + ;; +alpha) + osf1_compat + unaligned_warnings + ;; +ia64) + unaligned_warnings + ;; +esac +echo '.' |