#!/bin/sh # Built on TCL v3.5.1 # 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 # advcomp # 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 } createExtension() { mksquashfs $1 $1.tcz -noappend [ ! -e $1.tcz ] && echo "Error: "$1".tcz not created! Aborting" && exit } unpackSrc() { #unpack source if [ -e $1.tar.bz2 ]; then tar -jxf $1.tar.bz2 elif [ -e $1.tb2 ]; then tar -jxf $1.tb2 elif [ -e $1.tbz ]; then tar -jxf $1.tbz elif [ -e $1.tar.gz ]; then tar -zxf $1.tar.gz elif [ -e $1.tgz ]; then tar -zxf $1.tgz elif [ -e $1.tar.xz ]; then tar -Jxf $1.tar.xz elif [ -e $1.txz ]; then tar -Jxf $1.txz elif [ -e $1.tar.lzma ]; then tar -xf $1.tar.lzma --lzma elif [ -e $1.tlz ]; then tar -xf $1.tlz --lzma else echo "Source "$1" not found! Aborting" && exit fi } # Install these extensions automagically export EXTS="compiletc squashfs-tools-4.x advcomp 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-20110416" export DESTDIR=`pwd`/$EXTNAME-`uname -r` export PKGNAME=$EXTNAME$VER for f in $EXTS; do installExtension $f done unpackSrc $PKGNAME 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 gzip -2 $EXTNAME.ko advdef -z4 $EXTNAME.ko.gz cp -a $EXTNAME.ko.gz $DESTDIR/usr/local/lib/modules/`uname -r`/kernel/extra sed -i 's!cdemu!staff!' debian/vhba-dkms.udev cp -a debian/vhba-dkms.udev $DESTDIR/usr/local/etc/udev/rules.d/76-$EXTNAME.rules cd $DESTDIR 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.* cd .. createExtension $EXTNAME-`uname -r` rm -rf $PKGNAME $EXTNAME-`uname -r` # Create extension support files and test installExtension "submitqc" submitqc