#!/bin/sh
#
# This script is based on the sqlite publish.sh script. It is used to
# generate autogenerated SQLite files for release builds.
#

distdir=`dirname $0`
srcdir=`(cd $distdir/.. ; /bin/pwd)`

# These paths are relative from the dist/s_sql.tmp directory.
sqldir=$srcdir/sql/sqlite
destdir=$srcdir/sql/generated
tmp_dir="s_sql.tmp"

copy_if_changes()
{
	f1="$1"
	f2="$2"
	cmp $f1 $f2 > /dev/null 2>&1 ||
	(rm -f $f1 && cp $f2 $f1 && echo "Updated $f1")
}

mkdir -p $tmp_dir
cd $tmp_dir

mkdir -p $destdir
$sqldir/configure
make sqlite3.c

copy_if_changes "$destdir/sqlite3.c" "sqlite3.c" 
copy_if_changes "$destdir/sqlite3.h" "sqlite3.h" 

# Auto-generated files used in the Windows build.
copy_if_changes "$destdir/keywordhash.h" "keywordhash.h" 
copy_if_changes "$destdir/opcodes.c" "opcodes.c" 
copy_if_changes "$destdir/opcodes.h" "opcodes.h" 
copy_if_changes "$destdir/parse.c" "parse.c" 
copy_if_changes "$destdir/parse.h" "parse.h" 

cd ../
rm -rf ./$tmp_dir

