r1961: *** empty log message ***
[uffi.git] / make-upstream.sh
1 #!/bin/bash 
2 #
3 # Creates upstream packages
4 # Programmer: Kevin Rosenberg
5
6 set -e # abort on error
7
8 progname="`basename \"$0\"`"
9
10 usage () {
11   cat >&2 <<EOF
12 Usage: $progname [options]
13 Creates upstream archives
14 Options:
15   -t   Tag CVS tree with current version numbers
16   -h   Print this brief help
17 EOF
18 }
19
20 # Command line
21 while [ $# != 0 ]; do
22     value="`echo x\"$1\" | sed -e 's/^x-.//'`"
23     case "$1" in
24         -h)  usage; exit 0           ;;
25         -t)  opt_tag=1               ;;
26          *)  usage; exit 0           ;;
27     esac
28     shift
29 done
30
31 DEBPKG=cl-uffi
32 PKG=uffi
33 TOPDIR=`pwd`
34
35 VERSION=`cat VERSION`
36 DEBVERSION=`sed -n -e "s/${DEBPKG} (\(.*\)).*/\1/p" < debian/changelog  |head -1`
37 PACKAGE_DIR=/usr/local/src/Packages/${DEBPKG}
38 DISTDIR=${PKG}-${VERSION}
39 DEBDIR=${DEBPKG}-${VERSION}
40
41 if [ ! -z ${opt_tag} ]; then
42   DEB_TAG=debian_version_`echo ${DEBVERSION} | tr . _`
43   UPSTREAM_TAG=upstream_version_`echo ${VERSION} | tr . _`
44   echo "(Re-)tagging with Debian tag '${DEB_TAG}'"
45   cvs -q rtag -d ${DEB_TAG} ${PKG} > /dev/null
46   cvs -q tag -F ${DEB_TAG} > /dev/null
47
48   # Retag with upstream tag if release not 0 or 1
49   if [ "`echo ${DEBVERSION} | egrep '\-0$\-1$]'`" != "" ]; then
50     echo "(Re-)tagging with Upstream tag '${UPSTREAM_TAG}'"
51     cvs -q rtag -d $UPSTREAM_TAG $PKG > /dev/null
52     cvs -q tag -F $UPSTREAM_TAG > /dev/null
53   fi
54 fi
55 # Prepare for archive
56 cd ..
57 rm -f ${PKG}_${VERSION}.tar.gz ${DEBPKG}_${VERSION}.orig.tar.gz
58 rm -rf ${DISTDIR} ${DEBDIR} ${DISTDIR}.zip
59 cp -a ${TOPDIR} ${DISTDIR}
60
61 echo "Cleaning distribution directory ${DISTDIR}"
62 cd ${DISTDIR}
63 rm -f upload.sh make-dist.sh cvsbp-prepare 
64 rm -f `find . -type f -name .cvsignore`
65 rm -rf `find . -type d -name CVS`
66 rm -f `find . -type f -name '*~' -or -name '.#*'  -or -name '#*#' -or -name ".*~'`
67 rm -f `find doc -type f -name \*.tex -or -name \*.aux -or \
68   -name \*.log -or -name \*.out -or -name \*.dvi`
69 cd ..
70
71 echo "Creating upstream archives"
72 rm -rf ${DISTDIR}/debian
73 GZIP=-9 tar czf ${DISTDIR}.tar.gz ${DISTDIR}
74
75 cp -a ${DISTDIR} ${DEBDIR}
76 GZIP=-9 tar czf ${DEBPKG}_${VERSION}.orig.tar.gz ${DEBDIR}
77
78 unix2dos `find ${DISTDIR} -type f -name \*.cl -or -name \*.list -or \
79     -name \*.system -or -name Makefile -or -name ChangeLog -or \
80     -name COPYRIGHT -or -name TODO -or -name README -or -name INSTALL -or \
81     -name NEWS -or -name \*.sgml -or -name COPYING\* -or -name catalog`
82 zip -rq ${DISTDIR}.zip ${DISTDIR}
83
84 cp -a ${TOPDIR}/debian ${DEBDIR}
85 rm -f ${DEBDIR}/debian/.cvsignore 
86 rm -rf ${DEBDIR}/debian/CVS
87
88 rm -rf ${DISTDIR} ${DEBDIR}
89
90 echo "Moving upstream archives to ${PACKAGE_DIR}"
91 mkdir -p /usr/local/src/Packages/${DEBPKG}
92 rm -f ${PACKAGE_DIR}/${DISTDIR}.zip ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz
93 mv ${DISTDIR}.zip ${DEBPKG}_${VERSION}.orig.tar.gz ${DISTDIR}.tar.gz ${PACKAGE_DIR}
94
95 cd ${TOPDIR}
96 exit 0