--- /dev/null
+#!/bin/bash
+#
+# Creates upstream packages
+# Programmer: Kevin Rosenberg
+
+set -e # abort on error
+
+DEBPKG=ctsim
+PKG=ctsim
+
+WORK_HOME=/usr/local/src/Work
+PACKAGE_DIR=/usr/local/src/Packages/${DEBPKG}
+WORK_DIR=${WORK_HOME}/${PKG}
+CHANGELOG=${WORK_DIR}/debian/changelog
+VERSION=`sed -n -e "s/${DEBPKG} (\(.*\)-[0-9.]).*/\1/p" < ${CHANGELOG} |head -1`
+DEBVERSION=`sed -n -e "s/${DEBPKG} (\(.*\)).*/\1/p" < ${CHANGELOG} |head -1`
+
+DISTDIR=${PKG}-${VERSION}
+DEBDIR=${DEBPKG}-${VERSION}
+
+cvs commit -m "Autocommitting for ${VERSION}"
+
+if [ -f ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz ]; then
+ echo "File ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz already exists."
+ echo -n "Are you sure that you want to create a new upstream archive? (y/N): "
+ read answer
+ case $answer in
+ [Yy]*) nop= ;;
+ *) echo "Not building"
+ exit 1
+ ;;
+ esac
+fi
+
+
+if [ ! -f docs/${PKG}.htb -o ! -f docs/html/${PKG}_contents.html -o ! -f docs/${PKG}.pdf ]; then
+ echo "Making documentation"
+ ${WORK_DIR}/make-doc.sh
+fi
+
+# Prepare for archive
+rm -f ${PKG}_${VERSION}.tar.gz ${DEBPKG}_${VERSION}.orig.tar.gz
+rm -rf ${DISTDIR} ${DEBDIR} ${DISTDIR}.zip
+cp -a ${WORK_DIR} ${DISTDIR}
+
+echo "Cleaning distribution directory ${DISTDIR}"
+cd ${DISTDIR}
+make distclean
+rm -f make-doc.sh
+rm -f `find . -type f -name .cvsignore`
+rm -rf `find . -type d -name CVS -or -name .deps`
+rm -f `find . -type f -name '*~' -or -name '.#*' -or -name '#*#' -or -name ".*~" -or -name "*.o" -or -name "*.a"`
+rm -f `find doc -type f -name \*.tex -or -name \*.aux -or \
+ -name \*.log -or -name \*.out -or -name \*.dvi`
+rm -rf images doc stamp-h.in build-stamp stamp-h configure-stamp autom4te.cache do-autoconf config.log config.status config.h
+cd ..
+
+echo "Creating upstream archives"
+rm -rf ${DISTDIR}/debian
+GZIP=-9 tar czf ${DISTDIR}.tar.gz ${DISTDIR}
+
+if [ "${DISTDIR}" != "${DEBDIR}" ]; then
+ cp -a ${DISTDIR} ${DEBDIR}
+else
+ cp -a ${DISTDIR} ${DEBDIR}-copy
+fi
+
+unix2dos `find ${DISTDIR} -type f -and -name '*.c' -or -name '*.h' -or \
+ -name '*.cpp' -or -name '*.sh' -or -name '*.in' -or \
+ -name 'Makefile*' -or -name ChangeLog -or -name COPYRIGHT -or -name TODO -or \
+ -name README -or -name INSTALL -or -name NEWS -or -name '*.tex' -or \
+ -name '*.hhc' -or -name '*.hhk' -or -name '*.hpj' -or -name '*.ini' -or \
+ -name COPYING* -or -name catalog`
+zip -rq ${DISTDIR}.zip ${DISTDIR}
+rm -r ${DISTDIR}
+
+if [ "${DISTDIR}" == "${DEBDIR}" ]; then
+ mv ${DEBDIR}-copy ${DEBDIR}
+fi
+GZIP=-9 tar czf ${DEBPKG}_${VERSION}.orig.tar.gz ${DEBDIR}
+
+cp -a ${WORK_DIR}/debian ${DEBDIR}
+rm -f ${DEBDIR}/debian/.cvsignore
+rm -rf ${DEBDIR}/debian/CVS
+
+rm -rf ${DEBDIR}
+
+echo "Moving upstream archives to ${PACKAGE_DIR}"
+mkdir -p /usr/local/src/Packages/${DEBPKG}
+rm -f ${PACKAGE_DIR}/${DISTDIR}.zip ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz
+mv ${DISTDIR}.zip ${DEBPKG}_${VERSION}.orig.tar.gz ${DISTDIR}.tar.gz ${PACKAGE_DIR}
+
+exit 0