#!/bin/bash

set -e
set -o pipefail

export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin"

LOG="build-log.txt"

touch ${LOG}

Echo_verbose ()
{
	echo "I: ${1}" | tee -a ${LOG}
}

Echo_line () {
	Echo_verbose \
	"============================================================================="
}

Set_status () {
	echo "${1}" > .status
}

Check () {
	if [ "$(id -u)" -ne "0" ]
	then
		exit 1
	fi

	if [ ! -d "config/" ]
	then
		exit 1
	fi
}

Clean () {
	lh clean --purge | tee -a ${LOG}
}

Save_config () {
	for FILE in $(find config/ -type f)
	do
		while read LINE
		do
			echo "${FILE}: ${LINE}" >> ${LOG}
		done < ${FILE}
	done
}

Check
Clean
Save_config
Set_status building
Echo_verbose "lh build starting in $(pwd)"
Echo_line
lh build 2>&1 | tee -a ${LOG}
Echo_line
Echo_verbose "lh build returned successfully"
Set_status ok
exit 0
