#!/bin/bash
#
. /etc/init.d/tc-functions

HERE=`pwd`

NAME="lame"
PKGNAME="$NAME"
VER=3.99
PKGDIR=/mnt/sda3/"$PKGNAME"/package
PKG="$PKGDIR"/pkg
DOC="$PKGDIR"/doc
LOC="$PKGDIR"/loc
DEV="$PKGDIR"/dev
TCEDIR="`cat /opt/.tce_dir`/optional"

DEPS="compiletc.tcz \
bash.tcz \
nasm.tcz"


for I in `echo "$DEPS"`; do 
   DEPNAME=`basename "$I" .tcz`
   if [ ! -f /usr/local/tce.installed/"$DEPNAME" ]; then	
	if [ -f "$TCEDIR"/"$I" ]; then
		if su tc -c "tce-load -i "$I""; then
		   echo "${YELLOW}"$I" loaded locally${NORMAL}"
		else
		   echo "${RED}"$I" failed to load, exiting..${NORMAL}"
		   exit 1
		fi
	else
		if su tc -c "tce-load -iw "$I""; then
		   echo "${YELLOW}"$I" loaded from repo${NORMAL}"
		else
		   echo "${RED}"$I" failed to load, exiting..${NORMAL}"
		   exit 1
		fi
	fi
   fi
done
	

[ -d "$PKGDIR"/pkg ] && rm -r "$PKGDIR"/pkg
[ -d "$PKGDIR"/dev ] && rm -r "$PKGDIR"/dev
[ -d "$PKGDIR"/loc ] && rm -r "$PKGDIR"/loc
[ -d "$PKGDIR"/doc ] && rm -r "$PKGDIR"/doc
rm "$PKGDIR"/*.tcz{.md5.txt,.list,.zsync} > /dev/null 2>&1

mkdir -p "$PKGDIR"/{pkg/usr/local/tce.installed,loc,dev,doc/usr/local/share}

[ -d "$NAME"-"$VER"] && rm -r "$NAME"-"$VER"

tar xvf "$NAME"-"$VER".tar.xz
cd "$NAME"-"$VER"

./configure --prefix=/usr/local --enable-nasm --enable-shared
sleep 3
make 
make install DESTDIR="$PKG"

if [ -d "$PKG"/usr/local/share/man ]; then
	mkdir -p "$DOC"/usr/local/share 
	mv "$PKG"/usr/local/share/man "$DOC"/usr/local/share/ 
fi 

if [ -d "$PKG"/usr/local/share/doc ]; then
	mkdir -p "$DOC"/usr/local/share 
	mv "$PKG"/usr/local/share/doc "$DOC"/usr/local/share/ 
fi 

if [ -d "$PKG"/usr/local/share/gtk-doc ]; then
	mkdir -p "$DOC"/usr/local/share 
	mv "$PKG"/usr/local/share/gtk-doc "$DOC"/usr/local/share/ 
fi 

cd "$PKG"
find . | xargs file | grep "executable" | grep ELF | grep "not stripped" | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | grep "not stripped" | cut -f 1 -d : | xargs strip -g 2> /dev/null



for I in $(find `ls` -name *.h); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done

 for I in $(find `ls` -name *.a); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done

 for I in $(find `ls` -name *.la); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done


 for I in $(find `ls` -name *.pc); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done

 for I in $(find `ls` -name *.mo); do 
	export DIR=`dirname "$I"`; 
	[ -d ../loc/"$DIR" ] || mkdir -p ../loc/"$DIR"; 
	mv "$I" ../loc/"$DIR"/; 
done

 for I in $(find `ls` -name *.m4); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done


 for I in $(find `ls` -name *.c); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done

 for I in $(find `ls` -name *Makefile*); do 
	export DIR=`dirname "$I"`; 
	[ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; 
	mv "$I" ../dev/"$DIR"/; 
done

find . -type d | sort -r | xargs rmdir

cd "$PKGDIR"
mksquashfs pkg/ "$PKGNAME".tcz -noappend

mksquashfs loc/ "$PKGNAME"-locale.tcz -noappend

mksquashfs dev/ "$PKGNAME"-dev.tcz -noappend

mksquashfs doc/ "$PKGNAME"-doc.tcz -noappend


submitqc4
