#! /bin/bash

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

rebuild () {
    tar xzf wireless_tools.29.tar.gz
    cd wireless_tools.29
    ed Makefile >/dev/null <<EOF
/PREFIX =/
s/=.*\$/=/
/^# BUILD_STATIC = y/
s/^# //
/^CFLAGS=-Os /
s/-Os/$CFLAGS/
w
q
EOF
    make iwmulticall
    strip -R .note -R .comment iwmulticall
    cp iwmulticall ../wireless-tools/sbin/
    cd ..
    rm -rf wireless_tools.29
}

mkdir -p wireless-tools/sbin
for LINK in iwconfig iwgetid iwlist iwpriv iwspy; do
    ln -sf iwmulticall wireless-tools/sbin/$LINK
done

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
