#!/bin/sh -x
# build script for spacefm
# built on tc-6.x

set -o nounset
set -o errexit

. /etc/init.d/tc-functions

###################################################################################################
###################################################################################################

# Downloads

# http://sourceforge.net/projects/spacefm/files/

###################################################################################################

# Build spacefm

name=spacefm
srcname=`find . -iname 'spacefm*.tar*' -print | sed 's/.tar.[a-z0-9]*//'`
ver=`echo $srcname | sed -e 's/spacefm-//'`
pkg=/tmp/${name}_build/pkg
loc=/tmp/${name}_build/loc
pkgdir=/tmp/${name}-build

##******************************************
## load build deps
echo -e "\n\nFetching build dependencies... "

tceinstalled="/usr/local/tce.installed"
tcepath="/etc/sysconfig/tcedir/optional"

deps="compiletc.tcz \
bash.tcz \
desktop-file-utils.tcz \
shared-mime-info.tcz \
libstartup-notification-dev.tcz \
pango-dev.tcz \
libX11-dev.tcz \
intltool.tcz \
gtk2-dev.tcz \
glib2-dev.tcz \
gamin-dev.tcz \
autogen-dev.tcz \
wget.tcz \
cairo-dev.tcz \
libtool-dev.tcz  \
automake.tcz  \
pkg-config.tcz  \
udev-dev.tcz \
udevil.tcz \
fakeroot.tcz \
gzip.tcz \
gamin-dev.tcz \
ntfs-3g-dev.tcz \
bzip2-dev.tcz \
acl-dev.tcz \
cifs-utils.tcz \
coreutils.tcz \
davfs2.tcz \
e2fsprogs-dev.tcz \
util-linux-dev.tcz \
lsof.tcz \
xdg-utils.tcz"


for i in `echo $deps`; do 

pkgname=`basename "$i" .tcz`

# check if tcz installed already
if [ -f ${tceinstalled}/"$pkgname" ]; then
	echo "${WHITE}"$i" ${GREEN}Already loaded${NORMAL}"

else
	if  [ ! -f ${tceinstalled}/"$pkgname" ]; then

# tcz not installed, then install from local path
	if [ -f ${tcepath}/"$i" ]; then
	  while [ ! -f ${tceinstalled}/"$pkgname" ]; do
	    tce-load -i "$pkgname"; sleep 0.5
	  done
		if [ -f ${tceinstalled}/"$pkgname" ]; then
			echo "${CYAN}"$i" ${BLUE}loaded locally${NORMAL}"
		fi

# tcz not downloaded, install from repo
	elif [ ! -f ${tcepath}/"$i" ]; then
	    tce-load -wil "$pkgname"; sleep 0.5
		if [ -f ${tceinstalled}/"$pkgname" ]; then
			echo "${MAGENTA}"$i" ${YELLOW}downloaded from repo${NORMAL}"
		fi
	fi
	fi
fi

if [ ! -f "${tceinstalled}/$pkgname" ]; then
	echo "${RED}$i failed to load, exiting..${NORMAL}"; exit 8
fi

done
sleep 1
cd /tmp
##End od fetch deps
##******************************************

#cleanup
echo -e "\n\n Cleaning up previous builds, starting fresh... "
[ -d "$pkgdir" ] && find ${pkgdir} -type d -print0 | xargs -0 -r sudo rm -rvf

sleep 1.5

if [ -d $pkgdir ]; then
	echo -e "\n\n Previous build directory found, discard before continuing... "
	sleep 10
	exit 1
fi

if [ ! -f ${srcname}*.tar* ]; then
	mkdir $pkgdir && cd $pkgdir
	echo -e "\n\n Downloading src... "
	wget -O spacefm.tar.gz https://github.com/IgnorantGuru/spacefm/tarball/master
	sleep 10
	exit 1
fi

if [ -f ${srcname}*.tar* ]; then
	echo -e "\n\n Unpacking src... "
	mkdir -p $pkgdir
	[ -d $pkgdir ] && tar xpvf ${srcname}*.tar.[gx]z -C $pkgdir
fi


echo -e "\n\n Setting file ownership..."
[ -d $pkgdir ] && sudo chown tc.staff -R $pkgdir


export CFLAGS="-march=i486 -mtune=i686 -Os -pipe"
export CXXFLAGS="-march=i486 -mtune=i686 -Os -pipe"

cd $pkgdir
[ -d $srcname* ] && cd $srcname*

find . -name Makefile -type f -exec sed -i 's/-O2//g' {} \;

./configure --prefix=/usr/local --disable-video-thumbnails


#read -p "waiting to make.."

echo -e "\n\n Running make + make install..."
make -j3 

cd src
sudo strip --strip-debug --strip-unneeded $name
cd ..

sudo make install DESTDIR=$(pwd)/stage

echo -e "\n\n Setting file ownership..."
[ -d $(pwd)/stage ] && sudo chown tc.staff -R $(pwd)/stage

echo -e "\n Done"
echo "\n Completed files can be found in $(pwd)/stage \n "
exit 2



