#!/bin/sh

if [ $# -ne 1 ]
then
  echo "sd-clean: usage: modules/module" 1>&2
  exit 1
fi

#
# Load essential subs.
#

. ./sysdep-subs "$1" || exit 1

#
# Load essential subroutines (not passed through shell executions).
#

. ./sysdep-boot "$1" || exit 1

#
# Clean standard files.
#

SDM_STANDARD_FILES="
  ${SYSDEP_BASE_DIRECTORY}/sd-cpuidx86
  ${SYSDEP_BASE_DIRECTORY}/sd-cpuidx86.h
  ${SYSDEP_BASE_DIRECTORY}/sd-arch
  ${SYSDEP_BASE_DIRECTORY}/sd-cctype
  ${SYSDEP_BASE_DIRECTORY}/sd-ccversion
  ${SYSDEP_BASE_DIRECTORY}/sd-adaversion.out
  ${SYSDEP_BASE_DIRECTORY}/sd-os
  ${SYSDEP_BASE_DIRECTORY}/sd-locker
  ${SYSDEP_OUTPUT_DIRECTORY}/sysdeps.out
  ${SYSDEP_BASE_DIRECTORY}/*.o
  ${SYSDEP_BASE_DIRECTORY}/*.lock
  ${SYSDEP_BASE_DIRECTORY}/*.exe
"

for file in ${SDM_STANDARD_FILES}
do
  SYSDEP_REMOVE "${file}" || SYSDEP_FATAL "error removing standard files"
done

#
# Clean up status file.
#

STATUS_FILE="${SYSDEP_STATUS_DIRECTORY}/${SYSDEP_MODULE}"
SYSDEP_REMOVE "${STATUS_FILE}" || SYSDEP_FATAL "could not remove ${STATUS_FILE}"

#
# Clean up module files.
#

${SYSDEP_UTIL_CD} "${SYSDEP_MODULE_PATH}" ||
  SYSDEP_FATAL "could not change directory to '${SYSDEP_MODULE_PATH}'"

SYSDEP_DEBUG "moved to ${SYSDEP_BASE_DIRECTORY}/${SYSDEP_MODULE_PATH}"

. ${SYSDEP_BASE_DIRECTORY}/sysdep-mod-clean || exit 1
