#!/bin/sh
#
# Copyright 2013 Ravenbrook Limited <http://www.ravenbrook.com/>.
# All rights reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
# 
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
# 
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
# IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# $Log: make-exe,v $
# Revision 1.1  1998/09/28 10:08:58  jont
# new unit
# Shell script for building executables
#
#
# make-exe [-g] <exe-name> [<libraries>]
#
usage="make-exe: usage: make-exe [-g] <exe-name> [<libs>]"
if [ $# -lt 1 ]; then
  echo ${usage}
  exit 1
fi
if [ "$1" = "-g" ]; then
  debug=-g
  shift
else
  debug=
fi
if [ $# -lt 1 ]; then
  echo ${usage}
  exit 1
fi
exe=$1
echo "make ${exe}${debug}.exe"
sed -e "s/SETUP/${exe}\$closure\$setup/g;s/DECLARE/${exe}\$closure\$declare/g" exe_glue.S > poo.S
gcc -c ${exe}_text.S
gcc -c ${exe}_data.S
gcc -c poo.S
extend poo.o
shift
cl /Fe${exe}${debug}.exe poo.o ${exe}_text.o ${exe}_data.o  $* /nologo -link /MAP:${exe}${debug}.map /ENTRY:main
