123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #!/bin/bash
- ## Usage:
- ## ./zcutil/build-debian-package.sh
- set -e
- set -x
- BUILD_PATH="/tmp/zcbuild"
- PACKAGE_NAME="zcash"
- SRC_PATH=`pwd`
- SRC_DEB=$SRC_PATH/contrib/DEBIAN
- umask 022
- if [ ! -d $BUILD_PATH ]; then
- mkdir $BUILD_PATH
- fi
- PACKAGE_VERSION=$(grep Version $SRC_PATH/contrib/DEBIAN/control | cut -d: -f2 | tr -d ' ')
- BUILD_DIR="$BUILD_PATH/$PACKAGE_NAME-$PACKAGE_VERSION-amd64"
- if [ -d $BUILD_DIR ]; then
- rm -R $BUILD_DIR
- fi
- DEB_BIN=$BUILD_DIR/usr/bin
- DEB_DOC=$BUILD_DIR/usr/share/doc/$PACKAGE_NAME
- DEB_MAN=$BUILD_DIR/usr/share/man/man1
- mkdir -p $BUILD_DIR/DEBIAN $DEB_BIN $DEB_DOC $DEB_MAN
- chmod 0755 -R $BUILD_DIR/*
- # Copy control file
- cp $SRC_DEB/control $BUILD_DIR/DEBIAN
- # Package maintainer scripts (currently empty)
- #cp $SRC_DEB/postinst $BUILD_DIR/DEBIAN
- #cp $SRC_DEB/postrm $BUILD_DIR/DEBIAN
- #cp $SRC_DEB/preinst $BUILD_DIR/DEBIAN
- #cp $SRC_DEB/prerm $BUILD_DIR/DEBIAN
- # Copy binaries
- cp $SRC_PATH/src/zcashd $DEB_BIN
- cp $SRC_PATH/src/zcash-cli $DEB_BIN
- cp $SRC_PATH/zcutil/fetch-params.sh $DEB_BIN/zcash-fetch-params
- # Copy docs
- cp $SRC_PATH/doc/release-notes/release-notes-1.0.0.md $DEB_DOC/changelog
- cp $SRC_DEB/changelog $DEB_DOC/changelog.Debian
- cp $SRC_DEB/copyright $DEB_DOC
- cp -r $SRC_DEB/examples $DEB_DOC
- # Copy manpages
- cp $SRC_DEB/manpages/zcashd.1 $DEB_MAN
- cp $SRC_DEB/manpages/zcash-cli.1 $DEB_MAN
- # Gzip files
- gzip --best -n $DEB_DOC/changelog
- gzip --best -n $DEB_DOC/changelog.Debian
- gzip --best -n $DEB_MAN/zcashd.1
- gzip --best -n $DEB_MAN/zcash-cli.1
- # Create the Debian package
- fakeroot dpkg-deb --build $BUILD_DIR
- cp $BUILD_PATH/$PACKAGE_NAME-$PACKAGE_VERSION-amd64.deb $SRC_PATH
- # Analyze with Lintian, reporting bugs and policy violations
- lintian -i $SRC_PATH/$PACKAGE_NAME-$PACKAGE_VERSION-amd64.deb
- exit 0
|