#!/bin/bash
###############################################################################
# BRLTTY - A background process providing access to the console screen (when in
#          text mode) for a blind person using a refreshable braille display.
#
# Copyright (C) 1995-2022 by The BRLTTY Developers.
#
# BRLTTY comes with ABSOLUTELY NO WARRANTY.
#
# This is free software, placed under the terms of the
# GNU Lesser General Public License, as published by the Free Software
# Foundation; either version 2.1 of the License, or (at your option) any
# later version. Please see the file LICENSE-LGPL for details.
#
# Web Page: http://brltty.app/
#
# This software is maintained by Dave Mielke <dave@mielke.cc>.
###############################################################################

readonly configureOptions=(
   --without-libbraille
   --without-flite
   --without-mikropuhe
   --without-speechd
   --without-swift
   --without-theta
)

. "`dirname "${0}"`/prologue.sh"

[ "${#}" -gt 0 ] || syntaxError "missing source root"
sourceRoot="${1}"
shift
cd "${sourceRoot}" || exit "${?}"
sourceRoot="`pwd`"

if [ "${#}" -eq 0 ]
then
   archiveName="`basename "${sourceRoot}"`"
else
   archiveName="${1}"
   shift
fi

if [ "${#}" -eq 0 ]
then
   archiveFile="${archiveName}.tar"
else
   archiveFile="${1}"
   shift
fi
[ "${archiveFile#/}" = "${archiveFile}" ] && archiveFile="${initialDirectory}/${archiveFile}"

[ "${#}" -eq 0 ] || syntaxError "too many parameters"

needTemporaryDirectory
set -e

cp -p -r -- "${sourceRoot}" "${archiveName}"
cd "${archiveName}"

"${sourceRoot}/getrevid" "${sourceRoot}" >REVISION
./autogen
./configure --quiet "${configureOptions[@]}"

(  set -e
   cd "${documentsSubdirectory}"
   make -s clean
   make -s all
)
"${sourceRoot}/mkdocs" -o "doc" -s "${sourceRoot}" -b "."

specFile="brltty.spec"
mv -- "${specFile}" "${temporaryDirectory}"
make -s distclean
mv -- "${temporaryDirectory}/${specFile}" .

rm -f -r -- .git
find . -name .gitignore -exec rm {} \;
rm -f -r -- .svn

cd ..
tar --create --no-anchored --file "${archiveFile}" "${archiveName}"
exit 0
