#! /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 xJf glib-2.37.0.tar.xz
    cd glib-2.37.0
    ./configure --prefix=/usr/local --sysconfdir=/etc --localstatedir=/var \
	    --with-pic --disable-selinux --disable-xattr --disable-libelf \
	    --disable-fam --disable-man --enable-debug=no \
	    --disable-gtk-doc-html --with-libiconv=no \
	    --with-runtime-libdir=/usr/local/lib
    sed -i -e 's/^hardcode_into_libs=yes/hardcode_into_libs=no/' libtool
    for DIR in glib gthread gobject gmodule gio; do
	make -C $DIR
    done
    strip -R .note -R .comment */.libs/*-2.0.so.0
    mkdir -p ../libglib20-0/lib
    cp */.libs/*-2.0.so.0 ../libglib20-0/lib/
    cd ..
    #rm -rf glib-2.37.0
}

#mkdir -p libglib20-0/lib/gio/modules

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
