3 # Creates upstream packages
4 # Programmer: Kevin Rosenberg
6 set -e # abort on error
9 progname="`basename \"$0\"`"
12 Usage: $progname [options]
13 Creates upstream archives
15 -c Commit and tag CVS tree with current version numbers
16 -t Tag CVS tree with current version numbers
17 -f Force creation of upstream archive, even if exists'
18 -h Print this brief help
26 value="`echo x\"$1\" | sed -e 's/^x-.//'`"
29 -c) opt_commit=1; opt_tag=1 ;;
40 PACKAGE_DIR=/usr/local/src/Packages/${DEBPKG}
41 WORK_DIR=/usr/local/src/Work/${PKG}
43 VERSION=`sed -n -e "s/${DEBPKG} (\(.*\)-[0-9.]).*/\1/p" < ${WORK_DIR}/debian/changelog |head -1`
44 DISTDIR=${PKG}-${VERSION}
45 DEBDIR=${DEBPKG}-${VERSION}
47 if [ -z "${VERSION}" ]; then
48 echo "Can't find Debian changelog"
52 if [ ! -z ${opt_commit} ]; then
53 cvs commit -m 'Auto commit for Debian build'
56 if [ ! -z ${opt_tag} ]; then
57 UPSTREAM_TAG=upstream_version_`echo ${VERSION} | tr . _`
58 echo "(Re-)tagging with Upstream tag '${UPSTREAM_TAG}'"
59 cvs -q rtag -d $UPSTREAM_TAG $PKG > /dev/null
60 cvs -q tag -F $UPSTREAM_TAG > /dev/null
64 if [ -f ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz ]; then
65 echo "File ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz already exists."
66 echo -n "Are you sure that you want to create a new upstream archive? (y/N): "
70 *) echo "Not building"
78 rm -f ${PKG}_${VERSION}.tar.gz ${DEBPKG}_${VERSION}.orig.tar.gz
79 rm -rf ${DISTDIR} ${DEBDIR} ${DISTDIR}.zip
80 cp -a ${WORK_DIR} ${DISTDIR}
82 echo "Cleaning distribution directory ${DISTDIR}"
84 rm -f debian/upload.sh debian/make-debian.sh debian/make-upstream.sh debian/cvsbp-prepare.sh test-suite/test.config
85 rm -f `find . -type f -name "*.so" -or -name "*.o"`
86 rm -f `find . -type f -name .cvsignore`
87 rm -rf `find . -type d -name CVS -or -name .bin`
88 rm -f `find . -type f -name '*~' -or -name '.#*' -or -name '#*#' -or -name ".*~"`
89 rm -f `find doc -type f -name \*.tex -or -name \*.aux -or \
90 -name \*.log -or -name \*.out -or -name \*.dvi`
93 echo "Creating upstream archives"
94 rm -rf ${DISTDIR}/debian
95 GZIP=-9 tar czf ${DISTDIR}.tar.gz ${DISTDIR}
97 cp -a ${DISTDIR} ${DEBDIR}
98 GZIP=-9 tar czf ${DEBPKG}_${VERSION}.orig.tar.gz ${DEBDIR}
100 unix2dos `find ${DISTDIR} -type f -name \*.cl -or -name \*.list -or \
101 -name \*.system -or -name Makefile -or -name ChangeLog -or \
102 -name COPYRIGHT -or -name TODO -or -name README -or -name INSTALL -or \
103 -name NEWS -or -name \*.sgml -or -name COPYING\* -or -name catalog`
104 zip -rq ${DISTDIR}.zip ${DISTDIR}
106 cp -a ${WORK_DIR}/debian ${DEBDIR}
107 rm -f ${DEBDIR}/debian/.cvsignore
108 rm -rf ${DEBDIR}/debian/CVS
110 rm -rf ${DISTDIR} ${DEBDIR}
112 echo "Moving upstream archives to ${PACKAGE_DIR}"
113 mkdir -p /usr/local/src/Packages/${DEBPKG}
114 rm -f ${PACKAGE_DIR}/${DISTDIR}.zip ${PACKAGE_DIR}/${DEBPKG}_${VERSION}.orig.tar.gz
115 mv ${DISTDIR}.zip ${DEBPKG}_${VERSION}.orig.tar.gz ${DISTDIR}.tar.gz ${PACKAGE_DIR}