#! /bin/bash

trap "echo '*** BUILD FAILED! ***' 1>&2" ERR
set -ex -o pipefail
umask 022
export PATH='/bin:/usr/bin:/usr/local/bin'
export CFLAGS=${CFLAGS:--Os}
export CXXFLAGS=${CXXFLAGS:--Os}

rebuild () {
    tar xjf bluez-4.96.tar.bz2
    cd bluez-4.96
    ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
	    --enable-hidd --enable-pand --enable-dund
    make lib/libbluetooth.la
    make compat/hidd
    make compat/pand
    make compat/dund
    make tools/hcitool
    strip -R .note -R .comment compat/.libs/{hid,dun,pan}d tools/.libs/hcitool \
	    lib/.libs/libbluetooth.so.3
    mkdir -p ../hidd/sbin ../pand/sbin ../dund/sbin ../hcitool/bin \
	    ../libbluetooth3/lib
    cp compat/.libs/hidd ../hidd/sbin/
    cp compat/.libs/pand ../pand/sbin/
    cp compat/.libs/dund ../dund/sbin/
    cp tools/.libs/hcitool ../hcitool/bin/
    cp lib/.libs/libbluetooth.so.3 ../libbluetooth3/lib/
    cd ..
    rm -rf bluez-4.96
}

while read FN; do
    eval "[ -e $FN ] || rebuild"
done < MANIFEST

ARCH=`ipkg -V 0 print_architecture | tail -n 1 | cut -f2 -d' '`
for CTRLFILE in */CONTROL/control; do
    sed -i -e "s/__ARCH__/$ARCH/g" $CTRLFILE
    sudo ipkg-build -o root -g root `dirname $CTRLFILE`/..
done
