#!/bin/sh #********************************************************************************** # Copyright (c) 1999-2004, Intel Corporation # # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # 3. Neither the name of Intel Corporation nor the names of its contributors # may be used to endorse or promote products derived from this software # without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # #*********************************************************************************** KERNVER=`uname -r` echo "running kernel $KERNVER" if [ ${BUILD_ROOT} ] then KERNVER=`cat ${KERNEL_SOURCE}/include/linux/version.h | grep UTS_RELEASE | awk ' { print $3 } ' | awk -F\" ' { print $2 } '` CharModDir=${BUILD_ROOT}/lib/modules/${KERNVER}/kernel/drivers/char echo "Target kernel version is $KERNVER" else CharModDir=/lib/modules/${KERNVER}/kernel/drivers/char fi case $KERNVER in 2.4*) KMS="o" # Kernel Module Suffix ;; 2.6*) KMS="ko" # Kernel Module Suffix ;; *) echo "unsupported kernel version: only 2.4.x and 2.6.x are supported" exit 1 ;; esac if [ ! -d ${CharModDir} ] then echo "Creating ${CharModDir}" mkdir ${CharModDir} fi if [ -a ./hamregistry.bin ] then mv -f /etc/hamregistry.bin /etc/hamregistry.bak cp ./hamregistry.bin /etc/hamregistry.bin else rm -f /etc/hamregistry.bin fi echo "installing hamregistry, used for persistant storage" install -o root -g root -m 110 hamregistry /usr/sbin echo "installing Intel536 driver" install -o root -g root -m 764 Intel536.${KMS} ${CharModDir}/Intel536.${KMS} || exit 1 # determine distribution: D=`ls /etc/*-release 2>/dev/null | tr [:upper:] [:lower:]`; #case $D in # *lsb*) D=`sed '/ID=/!d' /etc/lsb-release | tr [:upper:] [:lower:]`;; #esac case $D in *mandrake*) DISTRIB_ID=MANDRAKE;; *suse*) DISTRIB_ID=SUSE;; *redhat*) DISTRIB_ID=REDHAT;; *redflag*) DISTRIB_ID=REDFLAG;; *conectiva*) DISTRIB_ID=CONECTIVA;; *ubuntu*) DISTRIB_ID=UBUNTU;; *debian*) DISTRIB_ID=DEBIAN;; *elive*) DISTRIB_ID=ELIVE;; *slackware*) DISTRIB_ID=SLACKWARE;; *gentoo*) DISTRIB_ID=GENTOO;; *knoppix*) DISTRIB_ID=KNOPPIX;; esac case $DISTRIB_ID in SUSE) DISTVER=`grep VERSION /etc/SuSE-release | cut -f3 -d' '` echo "SuSE version ${DISTVER}" case $DISTVER in 6.*| 7.* ) echo "SuSE 6,7 boot scripts" INITDIR='/sbin/init.d' ;; 5.* | 4.* | 3.* | 2.* | 1.*) echo "unsupported SuSE version. no boot scripts installed" exit 1 ;; *) echo "SuSE boot scripts" INITDIR='/etc/init.d' ;; esac echo "SuSE rc3.d and rc5.d scripts" if [[ $DISTVER < 10. ]] then install -o root -g root -m 110 Intel536_boot $INITDIR ln -s -f ${INITDIR}/Intel536_boot ${INITDIR}/boot.d/S99_Intel536 ln -s -f ${INITDIR}/Intel536_boot ${INITDIR}/rc3.d/S99_Intel536 ln -s -f ${INITDIR}/Intel536_boot ${INITDIR}/rc5.d/S99_Intel536 else echo \#\!/bin/sh > ${INITDIR}/536EP echo \#\#\# BEGIN INIT INFO >> ${INITDIR}/536EP echo \# Provides: Intel536_boot >> ${INITDIR}/536EP echo \# Required-Start: $syslog >> ${INITDIR}/536EP echo \# Required-Stop: $syslog >> ${INITDIR}/536EP echo \# Default-Start: 3 5 >> ${INITDIR}/536EP echo \# Default-Stop: 1 2 >> ${INITDIR}/536EP echo \# Description: Start Intel 536EP driver >> ${INITDIR}/536EP echo \#\#\# END INIT INFO >> ${INITDIR}/536EP cat ${INITDIR}/536EP Intel536_boot > ${INITDIR}/Intel536_boot chown root.root ${INITDIR}/Intel536_boot chmod 755 ${INITDIR}/Intel536_boot insserv ${INITDIR}/Intel536_boot rm ${INITDIR}/536EP fi ;; MANDRAKE | REDHAT | REDFLAG | KNOPPIX) echo "install ${DISTRIB_ID} Intel536 boot script and links" install -o root -g root -m 110 Intel536_boot /etc/rc.d/init.d ln -s -f /etc/rc.d/init.d/Intel536_boot /etc/rc.d/rc2.d/S99_Intel536 ln -s -f /etc/rc.d/init.d/Intel536_boot /etc/rc.d/rc3.d/S99_Intel536 ln -s -f /etc/rc.d/init.d/Intel536_boot /etc/rc.d/rc5.d/S99_Intel536 ;; CONECTIVA) echo "install ${DISTRIB_ID} Intel536 boot script and links" install -o root -g root -m 755 Intel536_boot /etc/rc.d/init.d ln -s -f /etc/rc.d/init.d/Intel536_boot /etc/rc.d/rc3.d/S99_Intel536 ln -s -f /etc/rc.d/init.d/Intel536_boot /etc/rc.d/rc5.d/S99_Intel536 ;; DEBIAN | UBUNTU | ELIVE) echo "install ${DISTRIB_ID} Intel536 boot script and links" install -o root -g root -m 110 Intel536_boot /etc/init.d ln -s -f /etc/init.d/Intel536_boot /etc/rc2.d/S99_Intel536 ln -s -f /etc/init.d/Intel536_boot /etc/rc3.d/S99_Intel536 ln -s -f /etc/init.d/Intel536_boot /etc/rc4.d/S99_Intel536 ln -s -f /etc/init.d/Intel536_boot /etc/rc5.d/S99_Intel536 ;; GENTOO) echo "install ${DISTRIB_ID} Intel536 boot script and links" install -o root -g root -m 755 Intel536_boot /etc/init.d rc-update add Intel536_boot default echo "arrange for module installation at bootup" case $KERNVER in 2.4*) MAF=/etc/modules.autoload.d/kernel-2.4;; 2.6*) MAF=/etc/modules.autoload.d/kernel-2.6;; esac if !(grep -q Intel536 ${MAF}) then echo "Intel536" >> ${MAF} fi ;; SLACKWARE) echo "install ${DISTRIB_ID} Intel536 boot script and links" install -o root -g root -m 110 Intel536_boot /etc/rc.d/rc.intel536 # add the script to /etc/rc.local if [ "`grep rc.intel536 /etc/rc.d/rc.local`" == "" ] then echo " # Load modem drivers if [ -x /etc/rc.d/rc.intel536 ]; then . /etc/rc.d/rc.intel536 start fi }" >> /etc/rc.d/rc.local fi ;; *) echo "unknown distribution - no boot scripts have been installed" exit 1 ;; esac echo "starting module and utilities" depmod -a /bin/bash Intel536_boot restart echo "done"