1*7304104dSAndroid Build Coastguard Worker#!/usr/bin/env bash 2*7304104dSAndroid Build Coastguard Worker 3*7304104dSAndroid Build Coastguard Worker# Must be run in the source directory. 4*7304104dSAndroid Build Coastguard Worker# Should have passed make distcheck. 5*7304104dSAndroid Build Coastguard Worker# And all final changes should already have been pushed. 6*7304104dSAndroid Build Coastguard Worker# Backup copy will be created in $HOME/elfutils-$VERSION 7*7304104dSAndroid Build Coastguard Worker 8*7304104dSAndroid Build Coastguard Worker# Any error is fatal 9*7304104dSAndroid Build Coastguard Workerset -e 10*7304104dSAndroid Build Coastguard Worker 11*7304104dSAndroid Build Coastguard Worker# We take one arguent, the version (e.g. 0.173) 12*7304104dSAndroid Build Coastguard Workerif [ $# -ne 1 ]; then 13*7304104dSAndroid Build Coastguard Worker echo "$0 <version> (e.g. 0.169)" 14*7304104dSAndroid Build Coastguard Worker exit 1 15*7304104dSAndroid Build Coastguard Workerfi 16*7304104dSAndroid Build Coastguard Worker 17*7304104dSAndroid Build Coastguard WorkerVERSION="$1" 18*7304104dSAndroid Build Coastguard Worker 19*7304104dSAndroid Build Coastguard Workerecho Make sure the git repo is tagged, signed and pushed 20*7304104dSAndroid Build Coastguard Workerecho git tag -s -m \"elfutils $VERSION release\" elfutils-$VERSION 21*7304104dSAndroid Build Coastguard Workerecho git push --tags 22*7304104dSAndroid Build Coastguard Worker 23*7304104dSAndroid Build Coastguard Worker# Create a temporary directory and make sure it is cleaned up. 24*7304104dSAndroid Build Coastguard Workertempdir=$(mktemp -d) || exit 25*7304104dSAndroid Build Coastguard Workertrap "rm -rf -- ${tempdir}" EXIT 26*7304104dSAndroid Build Coastguard Worker 27*7304104dSAndroid Build Coastguard Workerpushd "${tempdir}" 28*7304104dSAndroid Build Coastguard Worker 29*7304104dSAndroid Build Coastguard Worker# Checkout 30*7304104dSAndroid Build Coastguard Workergit clone git://sourceware.org/git/elfutils.git 31*7304104dSAndroid Build Coastguard Workercd elfutils 32*7304104dSAndroid Build Coastguard Workergit tag --verify "elfutils-${VERSION}" 33*7304104dSAndroid Build Coastguard Workergit checkout -b "$VERSION" "elfutils-${VERSION}" 34*7304104dSAndroid Build Coastguard Worker 35*7304104dSAndroid Build Coastguard Worker# Create dist 36*7304104dSAndroid Build Coastguard Workerautoreconf -v -f -i 37*7304104dSAndroid Build Coastguard Worker./configure --enable-maintainer-mode 38*7304104dSAndroid Build Coastguard Workermake -j$(nproc) && make dist 39*7304104dSAndroid Build Coastguard Worker 40*7304104dSAndroid Build Coastguard Worker# Sign 41*7304104dSAndroid Build Coastguard Workermkdir $VERSION 42*7304104dSAndroid Build Coastguard Workercp elfutils-$VERSION.tar.bz2 $VERSION/ 43*7304104dSAndroid Build Coastguard Workercd $VERSION/ 44*7304104dSAndroid Build Coastguard Workergpg -b elfutils-$VERSION.tar.bz2 45*7304104dSAndroid Build Coastguard Workercd .. 46*7304104dSAndroid Build Coastguard Worker 47*7304104dSAndroid Build Coastguard Worker# Backup copy 48*7304104dSAndroid Build Coastguard Workercp -r $VERSION $HOME/elfutils-$VERSION 49*7304104dSAndroid Build Coastguard Worker 50*7304104dSAndroid Build Coastguard Worker# Upload 51*7304104dSAndroid Build Coastguard Workerscp -r $VERSION sourceware.org:/sourceware/ftp/pub/elfutils/ 52*7304104dSAndroid Build Coastguard Workerssh sourceware.org "(cd /sourceware/ftp/pub/elfutils \ 53*7304104dSAndroid Build Coastguard Worker && chmod go+rx $VERSION \ 54*7304104dSAndroid Build Coastguard Worker && chmod go+r $VERSION/elfutils-$VERSION.tar.bz2* \ 55*7304104dSAndroid Build Coastguard Worker && ln -sf $VERSION/elfutils-$VERSION.tar.bz2 elfutils-latest.tar.bz2 \ 56*7304104dSAndroid Build Coastguard Worker && ln -sf $VERSION/elfutils-$VERSION.tar.bz2.sig elfutils-latest.tar.bz2.sig \ 57*7304104dSAndroid Build Coastguard Worker && ls -lah elfutils-latest*)" 58*7304104dSAndroid Build Coastguard Worker 59*7304104dSAndroid Build Coastguard Worker# Cleanup 60*7304104dSAndroid Build Coastguard Workerpopd 61*7304104dSAndroid Build Coastguard Workertrap - EXIT 62*7304104dSAndroid Build Coastguard Workerexit 63