#!/bin/bash
+#
# Creates debian and upstream packages
# Programmer: Kevin Rosenberg
cat >&2 <<EOF
Usage: $progname [options]
Options:
- -t Tag CVS tree with versions
- -c Use cvs-buildpackage
- -l Run lintian on package
+ -t Tag CVS tree with current version numbers
+ -d Use dpkg-buildpackage rather than default cvs-buildpackage
+ -l Run lintian after building
-h Print this brief help
EOF
}
case "$1" in
-h) usage; exit 0 ;;
-t) opt_tag=1 ;;
- -c) opt_cvs_buildpackage=1 ;;
+ -d) opt_dpkg_buildpackage=1 ;;
-l) opt_lintian=1 ;;
*) usage; exit 0 ;;
esac
shift
done
-
DEBPKG=cl-uffi
PKG=uffi
-TOPDIR=`basename $PWD`
+TOPDIR=`pwd`
-VERSION=`cat VERSION`
+VERSION=`sed -n -e "s/${DEBPKG} (\(.*\)-[0-9]).*/\1/p" < debian/changelog |head -1`
DEBVERSION=`sed -n -e "s/${DEBPKG} (\(.*\)).*/\1/p" < debian/changelog |head -1`
PACKAGE_DIR=/usr/local/src/Packages/${DEBPKG}
DISTDIR=${PKG}-${VERSION}
DEBDIR=${DEBPKG}-${VERSION}
+if [ -z ${opt_dpkg_buildpackage} ]; then
+ export CVSROOT=`cat CVS/Root`
+fi
+
if [ ! -z ${opt_tag} ]; then
DEB_TAG=debian_version_`echo ${DEBVERSION} | tr . _`
UPSTREAM_TAG=upstream_version_`echo ${VERSION} | tr . _`
cp -a ${TOPDIR} ${DISTDIR}
echo "Cleaning distribution directory ${DISTDIR}"
-rm -f ${DISTDIR}/upload.sh ${DISTDIR}/make-dist.sh
+rm -f ${DISTDIR}/upload.sh ${DISTDIR}/make-dist.sh ${DISTDIR}/cvsbp-prepare
rm -f `find ${DISTDIR} -type f -name .cvsignore`
rm -rf `find ${DISTDIR} -type d -name CVS`
-rm -f `find ${DISTDIR} -type f -name '*~' -or -name '#*' -or -name '#*#'`
+rm -f `find ${DISTDIR} -type f -name '*~' -or -name '#*' -or -name '#*#' -or -name '.#*'`
rm -f `find ${DISTDIR}/doc -type f -name \*.tex -or -name \*.aux -or \
-name \*.log -or -name \*.out -or -name \*.dvi`
rm -rf ${DISTDIR}
-if [ -z ${opt_cvs_buildpackage} ]; then
- cd ${DEBDIR}
- echo "Building Debian files"
- dpkg-buildpackage -rfakeroot -kkevin@rosenberg.net -a
+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}
+
+echo "Building Debian files"
+if [ -z ${opt_dpkg_buildpackage} ]; then
+ cd ${TOPDIR}
+ cvs-buildpackage -rfakeroot -kkevin@rosenberg.net -H${TOPDIR}/cvsbp-prepare -tC -i.pdf -sa ${DEBPKG}
+ cd ..
else
- cvsbp
+ cd ${DEBDIR}
+ dpkg-buildpackage -rfakeroot -kkevin@rosenberg.net -a -sa
+ mv ${DEBPKG}_${VERSION}* ${PACKAGE_DIR}
+ cd ..
fi
-
-cd ..
rm -rf ${DEBDIR}
-echo "Moving Upstream and Debian Files to ${PACKAGE_DIR}"
-mkdir -p /usr/local/src/Packages/${DEBPKG}
-mv ${DEBPKG}_${VERSION}* ${PACKAGE_DIR}
-mv ${DISTDIR}.zip ${PACKAGE_DIR}
-mv ${DISTDIR}.tar.gz ${PACKAGE_DIR}
-
if [ ! -z ${opt_lintian} ]; then
pushd ${PACKAGE_DIR} > /dev/null
lintian ${DEBPKG}_${DEBVERSION}_*.changes