r2211: *** empty log message ***
[ctsim.git] / debian / make-upstream.sh
diff --git a/debian/make-upstream.sh b/debian/make-upstream.sh
new file mode 100755 (executable)
index 0000000..ca36845
--- /dev/null
@@ -0,0 +1,93 @@
+#!/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