r1917: *** empty log message ***
[uffi.git] / make-dist.sh
1 #!/bin/bash 
2 # Creates debian and upstream packages
3 # Programmer: Kevin Rosenberg
4
5 set -e
6
7 DEBPKG=cl-uffi
8 PKG=uffi
9 TOPDIR=`basename $PWD`
10
11 VERSION=`cat VERSION`
12 DEBVERSION=`sed -n -e "s/${DEBPKG} (\(.*\)).*/\1/p" < debian/changelog  |head -1`
13
14 DISTDIR=${PKG}-${VERSION}
15 DEBDIR=${DEBPKG}-${VERSION}
16
17 DEB_TAG=debian_version_`echo ${DEBVERSION} | tr . _`
18 UPSTREAM_TAG=upstream_version_`echo ${VERSION} | tr . _`
19 echo "(Re-)tagging with Debian tag '${DEB_TAG}'"
20 cvs -q rtag -d ${DEB_TAG} ${PKG} > /dev/null
21 cvs -q tag -F ${DEB_TAG} > /dev/null
22
23 # Retag with upstream tag if release not 0 or 1
24 if [ "`echo ${DEBVERSION} | egrep '\-0$\-1$]'`" != "" ]; then
25   echo "(Re-)tagging with Upstream tag '${UPSTREAM_TAG}'"
26   cvs -q rtag -d $UPSTREAM_TAG $PKG > /dev/null
27   cvs -q tag -F $UPSTREAM_TAG > /dev/null
28 fi
29
30 # Prepare for archive
31 cd ..
32 rm -f ${PKG}_${VERSION}.tar.gz ${DEBPKG}_${VERSION}.orig.tar.gz
33 rm -rf ${DISTDIR} ${DEBDIR} ${DISTDIR}.zip
34 cp -a ${TOPDIR} ${DISTDIR}
35
36 echo "Cleaning distribution directory ${DISTDIR}"
37 rm -f ${DISTDIR}/upload.sh
38 rm -f `find ${DISTDIR} -type f -name .cvsignore`
39 rm -rf `find ${DISTDIR} -type d -name CVS`
40 rm -f `find ${DISTDIR} -type f -name '*~' -or -name '#*'  -or -name '#*#'`
41 rm -f `find ${DISTDIR}/doc -type f -name \*.tex -or -name \*.aux -or \
42   -name \*.log -or -name \*.out -or -name \*.dvi`
43
44 echo "Creating upstream archives"
45 rm -rf ${DISTDIR}/debian
46 GZIP=-9 tar czf ${DISTDIR}.tar.gz ${DISTDIR}
47
48 cp -a ${DISTDIR} ${DEBDIR}
49 GZIP=-9 tar czf ${DEBPKG}_${VERSION}.orig.tar.gz ${DEBDIR}
50
51 unix2dos `find ${DISTDIR} -type f -name \*.cl -or -name \*.list -or \
52     -name \*.system -or -name Makefile -or -name ChangeLog -or \
53     -name COPYRIGHT -or -name TODO -or -name README -or -name INSTALL -or \
54     -name NEWS -or -name \*.sgml -or -name COPYING\* -or -name catalog`
55 zip -rq ${DISTDIR}.zip ${DISTDIR}
56
57 cp -a ${TOPDIR}/debian ${DEBDIR}
58 rm -f ${DEBDIR}/debian/.cvsignore 
59 rm -rf ${DEBDIR}/debian/CVS
60
61 rm -rf ${DISTDIR}
62
63 export CVS_BUILDPACKAGE=1
64 if [ "${CVS_BUILDPACKAGE}" != "" ]; then
65   rm -rf ${DEBDIR}
66   mv ${DEBPKG}_${VERSION}.orig.tar.gz /usr/local/src/Packages/${DEBPKG}
67 else
68   cd ${DEBDIR}
69   echo "Building Debian files"
70   dpkg-buildpackage -rfakeroot -kkevin@rosenberg.net -a
71   echo "Checking Debian Files"
72   lintian ${DEBPKG}_${VERSION}-*.changes
73
74   echo "Moving Debian Files to /usr/local/src/Packages/${DEBPKG}"
75   mkdir -p /usr/local/src/Packages/${DEBPKG}
76   mv ${DEBPKG}_${VERSION}* /usr/local/src/Packages/${DEBPKG}
77   cd ..
78   rm -rf ${DEBDIR}
79 fi
80
81 cd ${TOPDIR}
82
83 exit 0