#!/bin/sh


if [ ! -f include/version.h ]; then
  echo "version.h missing!" >&2
  exit 1
fi

if [ ! -f current_build ]; then
  echo "'current_build' Missing. (need to make xxxxx_config first?)" >&2
  exit 1
fi

TOOLS_CHECKSUMS=tools/checksums
if [ ! -f $TOOLS_CHECKSUMS ]; then
  echo "'checksums' tool missing!" >&2
  exit 1
fi

VERSION=`cat include/version.h | grep "#define ATL_EXTRA_VERSION" | cut -d \" -f 2`
CURRENT=`cat current_build`
CKFILENAME=$2
OLDFILENAME=$3
NEWFILEEXT=$4
BOARD=$CURRENT

if [ ! -f "$CKFILENAME" ]; then
  echo "$CKFILENAME missing!"
  exit 1
fi

if [ ! -f "$OLDFILENAME" ]; then
  echo "$OLDFILENAME missing!"
  exit 1
fi

grep -q '^#define.*CONFIG_8BIT_ROM' include/configs/$BOARD.h
if [ $? -eq 0 ]; then
  CHECKSUMS=`$TOOLS_CHECKSUMS 8 $CKFILENAME $(stat -c "%s" $CKFILENAME)`
else
  CHECKSUMS=`$TOOLS_CHECKSUMS 16 $CKFILENAME $(stat -c "%s" $CKFILENAME)`
fi

if [ "$1" == "-c" ]; then
  export FILENAME=bl-$VERSION-$CURRENT-$CHECKSUMS
elif [ "$1" == "-s" ]; then
  export FILENAME=bl-$VERSION-$CURRENT
elif [ "$1" == "-t" ]; then
  export FILENAME=/tftpboot/bl-$CURRENT
else
  export FILENAME=bl-$VERSION-$CURRENT
fi

cp $OLDFILENAME $FILENAME$NEWFILEEXT
echo "Output: '$NEWFILEEXT' file copied as $FILENAME$NEWFILEEXT"
