#!/bin/bash
if [ "$GNUSTEP_SYSTEM_ROOT" = "" ]; then
  echo "$GNUSTEP_SYSTEM_ROOT is not set. Please run the script in the GNUstep"
  echo "Makefiles directory (eg . c:/GNUstep/System/Makefiles/GNUstep.sh)"
  echo "and try again."
  exit
fi

LIBDIR=$GNUSTEP_SYSTEM_ROOT/Libraries/ix86/mingw32
INCDIR=$GNUSTEP_SYSTEM_ROOT/Headers

./configure --target=i386-mingw32
[ -f trampoline/trampoline.h ] && rm trampoline/trampoline.h
cp trampoline/trampoline.h.in trampoline/trampoline.h
[ -f callback/trampoline_r/trampoline_r.h ] && rm callback/trampoline_r/trampoline_r.h
cp callback/trampoline_r/trampoline_r.h.in callback/trampoline_r/trampoline_r.h
make target=i386-mingw32 shared=yes

echo

[ ! -f avcall/.libs/libavcall.a ] && { echo "compile failed" ; exit 1; }

echo "Copying libs and header files..."

[ ! -d $INCDIR ] && mkdir $INCDIR

cp avcall/.libs/libavcall.a $LIBDIR
cp avcall/avcall.h $INCDIR
cp vacall/libvacall.a $LIBDIR
cp vacall/vacall.h $INCDIR
cp trampoline/libtrampoline.a $LIBDIR
cp trampoline/trampoline.h $INCDIR
cp callback/.libs/libcallback.a $LIBDIR
cp callback/callback.h $INCDIR
cp callback/trampoline_r.h $INCDIR
cp callback/vacall_r.h $INCDIR

echo "Running ranlib on headers..."

cd $LIBDIR
ranlib libavcall.a
ranlib libvacall.a
ranlib libtrampoline.a
ranlib libcallback.a

echo done...
