#! /usr/bin/env bash

# Build XSD examples for MinGW.
#
# -rebuild
# -test
#
trap 'exit 1' ERR

function error ()
{
  echo "$*" 1>&2
}

# Xerces-C++ installation directory (not build directory).
#
XERCESROOT=/c/projects/xerces-mingw32

CPPFLAGS="-I$XERCESROOT/include"
CXXFLAGS="-W -Wall"
LDFLAGS="-L$XERCESROOT/lib -Wl,--enable-auto-import"
PATH="$XERCESROOT/lib:$PATH"

test=n
rebuild=n

while [ $# -gt 0 ]; do
  case $1 in
    -rebuild)
      rebuild=y
      shift
      ;;
    -test)
      test=y
      shift
      ;;
    *)
      error "unknown option: $1"
      exit 1
      ;;
  esac
done

cd xsd-i686-windows/examples

# Clean everything up if we are rebuilding.
#
if [ $rebuild = y ]; then
  make clean
fi

# Build.
#
make CPPFLAGS="$CPPFLAGS" CXXFLAGS="$CXXFLAGS" LDFLAGS="$LDFLAGS"

# Test.
#
if [ $test = y ]; then
  make test
fi

cd ../..