#!/bin/bash
KERNELVERSION=`uname -r`
VIDEODRIVERDIR=/lib/modules/$KERNELVERSION/kernel/drivers/media/video
DRMDRIVERDIR=/lib/modules/$KERNELVERSION/kernel/drivers/char/drm
AGPDRIVERDIR=/lib/modules/$KERNELVERSION/kernel/drivers/char/agp
MODULESDEPDIR=/lib/modules/$KERNELVERSION
MODULESCONFDIR=/etc
MODULESCONFFILE=$MODULESCONFDIR/modules.conf
OLDMODULESCONFFILE=$MODULESCONFDIR/modules.conf.bak
AUTOLOADFILE=/etc/rc.d/rc.local
OLDAUTOLOADFILE=/etc/rc.d/rc.local.bak
UTILITY_PACKAGE=Utility
PROGRAMNAME=s3utility
PACKAGEDATADIR=/usr/local/share/$PROGRAMNAME
BINDIR=/usr/local/bin
GTK_LIB_PIXMAP=/usr/lib/gtk/themes/engines/libpixmap.so

echo -e " -------- install start --------"
#CLE266 graphic driver install shell script
#check kernel version

case "$KERNELVERSION" in
    2.4.2-2)
    OS=RedHat
    VER=7.1
    ;;
    2.4.7-10)
    OS=RedHat
    VER=7.2
    ;;
    2.4.18-3)
    OS=RedHat
    VER=7.3
    ;;
    2.4.18-14)
    OS=RedHat
    VER=8.0
    ;;
    2.4.20-8)
    OS=RedHat
    VER=9.0
    ;;
    2.4.18-6mdk)
    OS=Mandrake
    VER=8.2
    gunzip -f /lib/modules/$KERNELVERSION/kernel/drivers/char/agp/agpgart.o.gz
    ;;
    2.4.19-16mdk)
    OS=Mandrake
    VER=9.0
    gunzip -f /lib/modules/$KERNELVERSION/kernel/drivers/char/agp/agpgart.o.gz
    ;;
    2.4.19-4GB)
    OS=SuSE
    VER=8.1
    AUTOLOADFILE=/etc/init.d/boot.local
    OLDAUTOLOADFILE=/etc/init.d/boot.local.bak
    ;;
esac
echo install $OS $VER S3G CLE266 driver

echo "Which CPU do you use ? "
echo "1. VIA C3-2(Nehemiah) or INTEL Pentium 2/3/4"
echo "2. VIA C3"
echo "3. AMD K 7/8"
read choice

case "$choice" in
    1)
    CPUTYPE=pentium;;
    2)
    CPUTYPE=c3;;
    3)
    CPUTYPE=k7;;
esac
    cp $OS/$VER/$CPUTYPE/via_v4l_drv.o $VIDEODRIVERDIR/
    cp $VIDEODRIVERDIR/videodev.o $VIDEODRIVERDIR/videodev.o.bak
    cp $OS/$VER/$CPUTYPE/videodev.o $VIDEODRIVERDIR/
    cp $OS/$VER/$CPUTYPE/via_drv.o /usr/X11R6/lib/modules/drivers/
    if [ -f $DRMDRIVERDIR/i810.o ] ; then
	    cp -f $OS/$VER/$CPUTYPE/via.o $DRMDRIVERDIR/
        else
	    mkdir $DRMDRIVERDIR
	    cp -f $OS/$VER/$CPUTYPE/via.o $DRMDRIVERDIR/
    fi

    cp -f $OS/$VER/$CPUTYPE/via_dri.so /usr/X11R6/lib/modules/dri/via_dri.so

    #cp $OS/$VER/$CPUTYPE/libddmpeg.a /usr/X11R6/lib/modules/
    cp $OS/$VER/$CPUTYPE/libddmpeg.so /usr/X11R6/lib/
    #cp $OS/$VER/$CPUTYPE/libXv.so.1.0 /usr/X11R6/lib/
    #cd /usr/X11R6/lib
    #ln -sf libXv.so.1.0 libXv.so.1
    ldconfig

    sed -e '/char-major-81/d' $MODULESCONFFILE > modules.conf.tmp
    echo "alias char-major-81 videodev" >> modules.conf.tmp
    echo "alias char-major-81-0 via_v4l_drv" >> modules.conf.tmp
    echo "alias char-major-81-1 via_v4l_drv" >> modules.conf.tmp
    echo "alias char-major-81-2 via_v4l_drv" >> modules.conf.tmp

    if [ -f modules.conf.tmp ] ; then
		cp modules.conf.tmp $MODULESCONFFILE
        rm modules.conf.tmp
    fi

    sed -e '/agpgart.o/d' $AUTOLOADFILE > rc.local.tmp
    echo "modprobe agpgart agp_try_unsupported=1" >> rc.local.tmp

    cp rc.local.tmp $AUTOLOADFILE

    sed -e '/via_v4l_drv/d' $AUTOLOADFILE > rc.local.tmp
    echo "modprobe via_v4l_drv" >> rc.local.tmp

    cp rc.local.tmp $AUTOLOADFILE

    sed -e '/via.o/d' $AUTOLOADFILE > rc.local.tmp
    echo "modprobe via" >> rc.local.tmp

    if [ -f rc.local.tmp ] ; then
		cp rc.local.tmp $AUTOLOADFILE
		rm -f rc.local.tmp
    fi
    depmod -a
    insmod $AGPDRIVERDIR/agpgart.o agp_try_unsupported=1
    modprobe via_v4l_drv
    insmod $DRMDRIVERDIR/via.o

# Install Linux utility
echo -e "Now start to install VIA(S3) display utility..."
echo -e "Put the main program(s3utility) into the bin directory: /usr/local/bin"
install -D --mode=755 $UTILITY_PACKAGE/$PROGRAMNAME  $BINDIR/$PROGRAMNAME
install --directory $PACKAGEDATADIR
install --directory $PACKAGEDATADIR/pixmaps
install --directory $PACKAGEDATADIR/gtkthemes
install --mode=644 $UTILITY_PACKAGE/pixmaps/*.xpm $PACKAGEDATADIR/pixmaps
install --mode=644 $UTILITY_PACKAGE/gtkthemes/*.png $PACKAGEDATADIR/gtkthemes
install --mode=644 $UTILITY_PACKAGE/gtkthemes/gtkrc $PACKAGEDATADIR/gtkthemes
if test ! -e "$GTK_LIB_PIXMAP";
then
    install --directory /usr/lib/gtk
    install --directory /usr/lib/gtk/themes
    install --directory /usr/lib/gtk/themes/engines
    install -D --mode=755 $UTILITY_PACKAGE/lib/libpixmap.so  $GTK_LIB_PIXMAP
fi
echo -e "Utility installation is finished!"

echo -e " -------- vinstall end --------"

