#!/bin/bash
#Copyright 2001-2002 William Stearns <wstearns@pobox.com>
#Released under the GPL.

#set -x

if [ -z "$ALSAVERSION" ]; then
	echo ALSAVERSION unset, skipping alsa.
	exit
fi

#ftp://ftp.alsa-project.org/pub/driver/alsa-1.3.0.tar.gz

exec 2>&1
PROJECT="alsa"
THISSCRIPT="$BKLIBDIR/bkrun-$PROJECT"	#We can't use $0 as this script is sourced; $0=/usr/bin/buildkernel

if [ -f $BKLIBDIR$PROJECT-options ]; then
	echo $PROJECT loading options
	. $BKLIBDIR$PROJECT-options
fi
#if [ -n "$TEMPALSAVERSION" ]; then
#	ALSAVERSION=$TEMPALSAVERSION
#fi
echo $PROJECT \(Version $ALSAVERSION\) $1 called from Buildkernel

ALSASOURCEDIR=${ALSASOURCEDIR:-"/usr/src/alsa-driver-$ALSAVERSION"}
ALSATAR=${ALSATAR:-"$BKSOURCEDIR/alsa-driver-$ALSAVERSION.tar.bz2"}
ALSATESTFILE=${ALSATESTFILE:-"$ALSASOURCEDIR/COPYING"}

case $1 in
POSTLOADVARS)
	#if [ -n "`cat $BKLIBDIR${PROJECT}-options 2>/dev/null | grep '^TEMPALSAVERSION='`" ]; then
	#	echo Stripping out old $PROJECT version.
	#	cat $BKLIBDIR${PROJECT}-options | grep -v '^TEMPALSAVERSION=' >$BKLIBDIR${PROJECT}-options.temp
	#	cat $BKLIBDIR${PROJECT}-options.temp >$BKLIBDIR${PROJECT}-options
	#	rm -f $BKLIBDIR${PROJECT}-options.temp
	#fi
	;;
POSTGETSOURCE)
	#OK
	cd $BKSOURCEDIR
	#if [ "$ALSAVERSION" = "NEWESTBETA" ]; then
	#	echo -n 'Getting the Alsa NEWESTBETA snapshot '
	#	rm -f $BKSOURCEDIR/alsa.html
	#	bkgetfile http sites.inka.de '' '' sites/bigred/devel alsa.html
	#	TEMPALSAVERSION="`cat alsa.html | grep alsa-snapshot | sed -e 's/.*alsa\-//' -e 's/\.tar\.gz.*//'`"
	#	echo which is version $TEMPALSAVERSION .
	#	rm -f $BKSOURCEDIR/alsa-$TEMPALSAVERSION.tar.gz
	#	bkgetfile http sites.inka.de '' '' sites/bigred/devel alsa-$TEMPALSAVERSION.tar.gz
	#	echo >>$BKLIBDIR${PROJECT}-options
	#	echo TEMPALSAVERSION=$TEMPALSAVERSION >>$BKLIBDIR${PROJECT}-options

	if [ ! -f $BKSOURCEDIR/alsa-$ALSAVERSION.tar.bz2 ]; then
		echo Getting Alsa version $ALSAVERSION .
		rm -f $BKSOURCEDIR/alsa-$ALSAVERSION.tar.bz2
		bkgetfile ftp ftp.alsa-project.org anonymous "$USER@$HOSTNAME" pub/driver alsa-driver-$ALSAVERSION.tar.bz2
	else
		echo $BKSOURCEDIR/alsa-driver-$ALSAVERSION.tar.bz2 is already here.
	fi
	;;
POSTOPENSOURCE)
	#OK
	if [ ! -f "$ALSATESTFILE" ]; then	#Open up source
		if [ -f "$ALSATAR" ]; then
			mkdir --parents $ALSASOURCEDIR
			cd $ALSASOURCEDIR ; cd ..
			case $ALSATAR in
			*.tar.gz)	tar -xzvf $ALSATAR												;;
			*.tar.bz2)	cat $ALSATAR | bunzip2 - | tar -xvf -							;;
			*.tar)		tar -xvf $ALSATAR												;;
			*)			echo Don\'t know how to open $ALSATAR \! ; bkbeep ; sleep 30		;;
			esac
			if [ ! -f "$ALSATESTFILE" ]; then
				echo Still no $ALSATESTFILE after attempting to open \! ; bkbeep ; sleep 30
			fi
		else
			echo Alsa source is not yet opened and we don\'t have $ALSATAR \! ; bkbeep ; sleep 30
		fi
	fi
	;;
POSTCONFIGURE)		:		;;
POSTKERNELBUILD)	:		;;
POSTMODULEBUILD)	:		;;
POSTINSTALL)
	#OK
	if [ -n "$ALSASOURCEDIR" ]; then
		cd $ALSASOURCEDIR >/dev/null
		if [ `pwd` != "$ALSASOURCEDIR" ]; then
			echo can\'t change directory, exiting
		else
			./configure
			make all
			make install
			depmod -a
		fi
	fi
	;;
POSTCLEAN)			:		;;
''|ALL)
	. $THISSCRIPT POSTLOADVARS
	. $THISSCRIPT POSTGETSOURCE
	. $THISSCRIPT POSTOPENSOURCE
	. $THISSCRIPT POSTCONFIGURE
	. $THISSCRIPT POSTKERNELBUILD
	. $THISSCRIPT POSTMODULEBUILD
	. $THISSCRIPT POSTINSTALL
	. $THISSCRIPT POSTCLEAN
	;;
*)	echo unrecognized phase $1 ;;
esac

