#!/bin/bash [ "$1" = "" ] && exec $0 -make INITRAMDIR= RAMFS= IRF=`fgrep 'CONFIG_INITRAMFS_SOURCE=' .config | awk -F'=' '{print $2}' | tr -d '"()'` [ "$IRF" != "" ] && { INITRAMDIR=`dirname $IRF` RAMFS=`basename $IRF .cpio` } export SRC=`/bin/pwd` export MOD=/tftpboot/NetVista export REM=${MOD}/kernel.2200-2.6.22-${RAMFS} export CR_CLOOP=/usr/src/modules/cloop-2.622/create_compressed_fs for f do case $f in -o|-old|-oldconfig) make oldconfig ;; -c|-config) make menuconfig ;; -cpio) echo "generate initramfs" [ "$RAMFS" != "" ] && ( cd $INITRAMDIR/$RAMFS.fs ; find . | cpio -o --format=newc > ../$RAMFS.cpio ) ;; -mod|-modules) echo "make modules and install them" V=`fgrep 'Linux kernel version:' .config | awk '{print $5}'` LOC=`fgrep CONFIG_LOCALVERSION .config | egrep -v '^#' | awk -F'"' '{print $2}'` rm -rf $MOD/lib/modules/$V$LOC INSTALL_MOD_PATH=$MOD/ make all modules_install ;; -m|-make) echo "make bzImage, patch kernel" # rm -f usr/ rm -f usr/initramfs_cpio* make bzImage ./patch_nvista # < arch/i386/boot/compressed/vmlinux >kernel.2200 ;; -cloop) echo "make cloop-Module" export V=`fgrep 'Linux kernel version:' .config | awk '{print $5}'` export LOC=`fgrep CONFIG_LOCALVERSION .config | egrep -v '^#' | awk -F'"' '{print $2}'` ( cd /usr/src/modules/cloop-2.622 make clean make KERNEL_DIR=$SRC LIBM=$MOD/lib/modules/$V$LOC mkdir -p $LIBM/misc && cp cloop.ko $LIBM/misc/ depmod -ae -b $MOD -F $SRC/System.map -r $V$LOC ) ;; -allmod) $0 -modules -cloop ;; -t|-transfer) if [ -d `dirname $REM` ] then echo "copy to $REM" cp kernel.2200 $REM else echo "$REM is not reachable" fi ;; -all) $0 -oldconfig -allmod -cpio -make -transfer ;; *) echo "usage $0 [-o[ld[config]]|-c[onfig]|-mod[ules]|-cpio|-cloop|-compressed|-allmod|-m[ake]|-t[ransfer]|-all]" echo "-oldconfig: make oldconfig" echo "-config: make menuconfig" echo "-cpio: generate cpio of init-ramfs" echo "-modules: make all modules_install" echo "-cloop: compile and install cloop.ko module" echo "-make: make bzImage, patch kernel -> kernel.2200" echo "-transfer: copy kernel.2200 into tftp-directory" echo "-allmod: $0 -modules -cloop -compressed" echo "-all: $0 -oldconfig -allmod -make -transfer" exit 0;; esac done