Artifact 296effe22864af756894bc7e05d2008a9699f747fdc688fb13ed859588b1e15f:
- Executable file
mttroot/mtt/bin/mtt_cvs2deb
— part of check-in
[e6c98916c8]
at
2004-02-19 00:47:19
on branch origin/master
— 898897 Separate examples from main .deb
Created new .deb package for examples (mtt-examples).mtt-examples depends on mtt.
mtt recommends mtt-examples. (user: geraint@users.sourceforge.net, size: 4368) [annotate] [blame] [check-ins using] [more...]
#! /bin/sh # Script to create a .deb package from the current cvs sources. usage () { cat <<EOF usage: $0 [options] options: -dir /path/to/mttroot Build package from local directory /path/to/mttroot instead of sourceforge CVS. -email email@address email address of packager -keep Keep temporary directory after package creation -log changelog text Write changelog text to changelog file Note: this must be the last option given. -name name name of packager -version #.# Use version #.# instead of the date to label the .deb EOF } error () { echo $0: error: ${1:-"unknown error"} - aborting. exit 1 } # should be root for some of these commands if [ ! `whoami` = "root" ]; then echo root password required exec su -p -c "$0 $*" error "root authorisation failed" fi # use -email and -name to change DEBFULLNAME=${DEBFULLNAME:-"Geraint Paul Bevan"} DEBEMAIL=${DEBEMAIL:-"geraint@users.sourceforge.net"} # default switches default_sources="sourceforge" default_logtext="snapshot from ${default_sources}." default_version=`date --iso-8601 | sed 's/\-/./g'` sources=${default_sources} logtext=${default_logtext} version="5.0."${default_version} keeptmp="remove" # look for command line arguments while [ -n "`echo $1 | grep '^-'`" ]; do case $1 in -dir) # package directory instead of cvs sources # should be the path to the mttroot directory sources=$2 if [ ! "`basename ${sources}`" = "mttroot" ]; then error "directory ${sources} is not location of mttroot" fi if [ "${logtext}" = "${default_logtext}" ]; then logtext="snapshot from local sources (${sources})" fi echo "Using source directory: ${sources}" shift ;; -email) # email address of packager DEBEMAIL=$2 echo "Using email address ${DEBEMAIL}" shift ;; -h | -help | --help) usage exit 0 ;; -keep) # keep temporary directory echo "Keeping temporary files" keeptmp="keep" ;; -log) # specify changelog text shift logtext="$*" echo "Using changelog text: ${logtext}" shift ;; -name) # name of packager DEBFULLNAME=$2 echo "Using name ${DEBFULLNAME}" shift ;; -version) # specify version version=$2 echo "Using version number: ${version}" shift ;; *) usage error "unknown option $1" ;; esac shift done topdir=`pwd` ## Main MTT echo "Packaging mtt ..." # create working directory tmpdir=`mktemp -d mtt_cvs2deb.tmp.XXXXXXXXXX` if [ ! -d ${tmpdir} ]; then error "cannot create temporary directory" fi # copy sources to working directory cd ${tmpdir} if [ "${sources}" = "${default_sources}" ]; then cvs -z3 -d:pserver:anonymous@cvs.mtt.sf.net:/cvsroot/mtt co mttroot else cp -a ${sources} . fi # generate tarball of sources cd mttroot tar -cf mtt-${version}.tar mtt/ tar --file mtt-${version}.tar --delete mtt/lib/examples gzip mtt-${version}.tar cd mtt # create .deb echo "$0: information: a \"Could not find diffs\" error in the next few lines is probably harmless" uupdate -u mtt-${version}.tar.gz cd ../mtt-${version}/debian dch -v ${version} ${logtext} cd .. dpkg-buildpackage -rfakeroot -k${DEBEMAIL} cd .. # clean up cp mtt*.deb ${topdir}/ cd ${topdir} if [ "${keeptmp}" = "remove" ]; then rm -r ${tmpdir} else echo Keeping temporary directory: ${tmpdir} fi ## Examples echo "Packaging mtt-examples ..." # create working directory tmpdir=`mktemp -d mtt_cvs2deb.tmp.XXXXXXXXXX` if [ ! -d ${tmpdir} ]; then error "cannot create temporary directory" fi # copy sources to working directory cd ${tmpdir} if [ "${sources}" = "${default_sources}" ]; then cvs -z3 -d:pserver:anonymous@cvs.mtt.sf.net:/cvsroot/mtt co mttroot else cp -a ${sources} . fi # generate tarball of sources cd mttroot/mtt/lib tar -cf mtt-examples-${version}.tar examples/ gzip mtt-examples-${version}.tar cd examples # create .deb echo "$0: information: a \"Could not find diffs\" error in the next few lines is probably harmless" uupdate -u mtt-examples-${version}.tar.gz cd ../mtt-examples-${version}/debian dch -v ${version} ${logtext} cd .. dpkg-buildpackage -rfakeroot -k${DEBEMAIL} cd .. # clean up cp mtt-examples*.deb ${topdir}/ cd ${topdir} if [ "${keeptmp}" = "remove" ]; then rm -r ${tmpdir} else echo Keeping temporary directory: ${tmpdir} fi exit 0