#!/bin/sh # Built on TCL v3.3 # Required extensions: # compiletc # binutils # base-dev # bison # diffutils # file # findutils # flex # gawk # gcc # gcc_libs # cloog # ppl # gmp # mpfr # gperf # grep # m4 # make # patch # pkg-config # sed # squashfs-tools-4.x # tar # bash # ncurses # ncurses-common # linux-headers-KERNEL getTime.sh installExtension() { if [ ! -e /usr/local/tce.installed/$1 ]; then echo "Installing "$1" ..." if [ -e $TCEDIR/optional/$1.tcz ]; then tce-load -i $1 else tce-load -wi $1 fi [ ! -e /usr/local/tce.installed/$1 ] && echo "Error: Extension "$1" not installed! Aborting" && exit fi } # Install these extensions automagically export EXTS="compiletc squashfs-tools-4.x tar bash linux-headers-"`uname -r` export TCEDIR=`cat /opt/.tce_dir` export CFLAGS="-march=i486 -mtune=i686 -Os -pipe" export CXXFLAGS=$CFLAGS" -fno-exceptions -fno-rtti" export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig export EXTNAME="vhba" export VER="-module-20100822" export DESTDIR=`pwd`/$EXTNAME export PKGNAME=$EXTNAME$VER for f in $EXTS; do installExtension $f done #unpack source if [ -e $PKGNAME.tar.bz2 ]; then tar -jxf $PKGNAME.tar.bz2 elif [ -e $PKGNAME.tb2 ]; then tar -jxf $PKGNAME.tb2 elif [ -e $PKGNAME.tbz ]; then tar -jxf $PKGNAME.tbz elif [ -e $PKGNAME.tar.gz ]; then tar -zxf $PKGNAME.tar.gz elif [ -e $PKGNAME.tgz ]; then tar -zxf $PKGNAME.tgz elif [ -e $PKGNAME.tar.xz ]; then tar -Jxf $PKGNAME.tar.xz elif [ -e $PKGNAME.txz ]; then tar -Jxf $PKGNAME.txz elif [ -e $PKGNAME.tar.lzma ]; then tar -xf $PKGNAME.tar.lzma --lzma elif [ -e $PKGNAME.tlz ]; then tar -xf $PKGNAME.tlz --lzma else echo "Source tarball not found! Aborting" && exit fi mkdir -p $DESTDIR/usr/local/lib/modules/`uname -r`/kernel/extra $DESTDIR/usr/local/tce.installed $DESTDIR/usr/local/etc/udev/rules.d cd $PKGNAME make || exit sudo cp -a $EXTNAME.ko $DESTDIR/usr/local/lib/modules/`uname -r`/kernel/extra sed -i 's!cdemu!staff!' debian/vhba-dkms.udev sudo cp -a debian/vhba-dkms.udev $DESTDIR/usr/local/etc/udev/rules.d/76-$EXTNAME.rules cd ../$EXTNAME echo '#!/bin/sh cp -p /usr/local/etc/udev/rules.d/vhba.rules /etc/udev/rules.d udevadm control --reload-rules' > usr/local/tce.installed/$EXTNAME-`uname -r` sudo chown -R root:staff usr/local/tce.* sudo chmod -R 775 usr/local/tce.* find usr -not -type d > ../$EXTNAME-`uname -r`.tcz.list cd .. mksquashfs $EXTNAME $EXTNAME-`uname -r`.tcz -noappend md5sum $EXTNAME-`uname -r`.tcz > $EXTNAME-`uname -r`.tcz.md5.txt rm -rf $PKGNAME $EXTNAME