#!/bin/bash
# Used to merge in the code needed to add TDB support to Greenstone. The script
# is responsible for updating both Makefile.in and source code files. You can
# later run 'disable_tdb.sh' to undo these changes.
# @author John Thompson, University of Waikato, NZ

echo
echo '===== Clearing out TDB enabled script changes from SVN Greenstone ====='
echo

# Test that GSDLHOME is set otherwise we won't be able to find the required files
if [ "${GSDLHOME}x" == "x" ] ; then
    echo 'Error! GSDLHOME not set. Please source setup.bash before running.'
    echo
    exit 0
fi

if [ ! -d "${GSDLHOME}/.svn" ] ; then
    echo "Error! This isn't a SVN checkout of Greenstone. Automated removal"
    echo "not possible..."
    echo
    exit 0
fi

echo ' - removing all knowledge of TDB from common function library'
rm -f "${GSDLHOME}/common-src/src/lib/tdbclass.h"
rm -f "${GSDLHOME}/common-src/src/lib/tdbclass.cpp"
rm -f "${GSDLHOME}/common-src/src/lib/tdbclass.o"
rm -f "${GSDLHOME}/common-src/src/lib/Makefile.in"
rm -f "${GSDLHOME}/common-src/src/lib/Makefile"
rm -f "${GSDLHOME}/common-src/src/lib/gsdllib.a"

echo ' - removing all knowledge of TDB from colservr'
rm -f "${GSDLHOME}/runtime-src/src/colservr/Makefile.in"
rm -f "${GSDLHOME}/runtime-src/src/colservr/Makefile"
rm -f "${GSDLHOME}/runtime-src/src/colservr/collectset.cpp"
rm -f "${GSDLHOME}/runtime-src/src/colservr/collectset.o"
rm -f "${GSDLHOME}/runtime-src/src/colservr/collectserver.cpp"
rm -f "${GSDLHOME}/runtime-src/src/colservr/collectserver.o"
rm -f "${GSDLHOME}/runtime-src/src/colservr/gsdlcolservr.a"

echo ' - removing all knowledge of TDB from receptionist'
rm -f "${GSDLHOME}/runtime-src/src/recpt/Makefile.in"
rm -f "${GSDLHOME}/runtime-src/src/recpt/Makefile"
rm -f "${GSDLHOME}/runtime-src/src/recpt/gsdlrecpt.a"
rm -f "${GSDLHOME}/runtime-src/src/recpt/library.cgi"
rm -f "${GSDLHOME}/cgi-bin/library.cgi"

echo ' - removing all knowledge of TDB from OAI server'
rm -f "${GSDLHOME}/runtime-src/src/oaiservr/Makefile.in"
rm -f "${GSDLHOME}/runtime-src/src/oaiservr/Makefile"
rm -f "${GSDLHOME}/runtime-src/src/oaiservr/oaiserver.cgi"
rm -f "${GSDLHOME}/cgi-bin/oaiserver.cgi"

echo ' - restoring deleted files using SVN Update'
CWD=$PWD
cd "${GSDLHOME}"
svn update
cd "${PWD}"

echo
echo '====================================================='
echo
echo 'All files touched by TDB enable/disable scripts have'
echo 'been restored to vanilla SVN versions. Please return'
echo 'to the main Greenstone directory and rerun:'
echo
echo ' ./configure <any required arguments>'
echo ' make'
echo ' make install'
echo
echo 'to complete TDB removal.'
echo
echo 'Should you later wish to restore TDB support rerun:'
echo
echo ' ./enable_tdb.sh'
echo
echo '====================================================='
echo
