1*4dc78e53SAndroid Build Coastguard Worker#!/bin/bash 2*4dc78e53SAndroid Build Coastguard Worker 3*4dc78e53SAndroid Build Coastguard Worker# script to create libnl release. 4*4dc78e53SAndroid Build Coastguard Worker# Steps: 5*4dc78e53SAndroid Build Coastguard Worker# - create new commit, bumping version number 6*4dc78e53SAndroid Build Coastguard Worker# - run this script 7*4dc78e53SAndroid Build Coastguard Worker# - check all is good 8*4dc78e53SAndroid Build Coastguard Worker# - tag the commit (signed) 9*4dc78e53SAndroid Build Coastguard Worker# git tag -m 'libnl-3.2.26-rc1' -s libnl3_2_26rc1 HEAD 10*4dc78e53SAndroid Build Coastguard Worker# - publish the tarballs 11*4dc78e53SAndroid Build Coastguard Worker# - push the commit to github 12*4dc78e53SAndroid Build Coastguard Worker# - publish the tag on github 13*4dc78e53SAndroid Build Coastguard Worker# - publish the tarballs on github 14*4dc78e53SAndroid Build Coastguard Worker# - send ANN email 15*4dc78e53SAndroid Build Coastguard Worker 16*4dc78e53SAndroid Build Coastguard Worker 17*4dc78e53SAndroid Build Coastguard Workerdie() { 18*4dc78e53SAndroid Build Coastguard Worker printf '%s\n' "$@" 19*4dc78e53SAndroid Build Coastguard Worker exit 1 20*4dc78e53SAndroid Build Coastguard Worker} 21*4dc78e53SAndroid Build Coastguard Worker 22*4dc78e53SAndroid Build Coastguard Workerset -x 23*4dc78e53SAndroid Build Coastguard Workerset -e 24*4dc78e53SAndroid Build Coastguard Worker 25*4dc78e53SAndroid Build Coastguard Workercd "$(dirname "$0")/.." 26*4dc78e53SAndroid Build Coastguard Workergit_dir="$(readlink -f "$(git rev-parse --show-toplevel)")" 27*4dc78e53SAndroid Build Coastguard Workertest -f "$git_dir/tools/build_release.sh" 28*4dc78e53SAndroid Build Coastguard Worker 29*4dc78e53SAndroid Build Coastguard WorkerBuild() { 30*4dc78e53SAndroid Build Coastguard Worker test "$(git status --porcelain)" = "" || die "there are uncommited changes" 31*4dc78e53SAndroid Build Coastguard Worker git clean -fdx 32*4dc78e53SAndroid Build Coastguard Worker ./autogen.sh 33*4dc78e53SAndroid Build Coastguard Worker ./configure 34*4dc78e53SAndroid Build Coastguard Worker pushd ./doc/ 35*4dc78e53SAndroid Build Coastguard Worker ./configure --enable-doc 36*4dc78e53SAndroid Build Coastguard Worker popd 37*4dc78e53SAndroid Build Coastguard Worker make -j 5 38*4dc78e53SAndroid Build Coastguard Worker make -C doc 39*4dc78e53SAndroid Build Coastguard Worker make -C doc gendoc 40*4dc78e53SAndroid Build Coastguard Worker make -j 5 distcheck 41*4dc78e53SAndroid Build Coastguard Worker make -C doc dist 42*4dc78e53SAndroid Build Coastguard Worker echo "Build: success" 43*4dc78e53SAndroid Build Coastguard Worker} 44*4dc78e53SAndroid Build Coastguard Worker 45*4dc78e53SAndroid Build Coastguard WorkerCopy() { 46*4dc78e53SAndroid Build Coastguard Worker local V="$(ls -1 ./libnl-*.tar.gz | sed -n 's/^\.\/libnl-\(3\.[0-9]\+\.[0-9]\+\(-rc[0-9]\)\?\).tar.gz$/\1/p')" 47*4dc78e53SAndroid Build Coastguard Worker test -n "$V" 48*4dc78e53SAndroid Build Coastguard Worker local REL="libnl-$V" 49*4dc78e53SAndroid Build Coastguard Worker rm -rf "./$REL" 50*4dc78e53SAndroid Build Coastguard Worker mkdir "./$REL" 51*4dc78e53SAndroid Build Coastguard Worker ln "./libnl-$V.tar.gz" "./$REL/" 52*4dc78e53SAndroid Build Coastguard Worker ln "./doc/libnl-doc-$V.tar.gz" "./$REL/" 53*4dc78e53SAndroid Build Coastguard Worker ( 54*4dc78e53SAndroid Build Coastguard Worker cd "./$REL/" 55*4dc78e53SAndroid Build Coastguard Worker for F in "libnl-$V.tar.gz" "libnl-doc-$V.tar.gz"; do 56*4dc78e53SAndroid Build Coastguard Worker md5sum "./$F" > "./$F.md5sum" 57*4dc78e53SAndroid Build Coastguard Worker sha256sum "./$F" > "./$F.sha256sum" 58*4dc78e53SAndroid Build Coastguard Worker if [ "$NO_GPG_SIGN" != 1 ]; then 59*4dc78e53SAndroid Build Coastguard Worker gpg ${GPG_USER--u thaller@redhat.com} --armor --verbose -o "./$F.sig" --detach-sign "./$F" 60*4dc78e53SAndroid Build Coastguard Worker fi 61*4dc78e53SAndroid Build Coastguard Worker done 62*4dc78e53SAndroid Build Coastguard Worker ) 63*4dc78e53SAndroid Build Coastguard Worker tar -cvf "./$REL.tar" "./$REL/" 64*4dc78e53SAndroid Build Coastguard Worker echo "Copy: success" 65*4dc78e53SAndroid Build Coastguard Worker} 66*4dc78e53SAndroid Build Coastguard Worker 67*4dc78e53SAndroid Build Coastguard WorkerBuildAll() { 68*4dc78e53SAndroid Build Coastguard Worker Build 69*4dc78e53SAndroid Build Coastguard Worker Copy 70*4dc78e53SAndroid Build Coastguard Worker echo "BuildAll: success" 71*4dc78e53SAndroid Build Coastguard Worker} 72*4dc78e53SAndroid Build Coastguard Worker 73*4dc78e53SAndroid Build Coastguard Workercase "$1" in 74*4dc78e53SAndroid Build Coastguard Worker Build) 75*4dc78e53SAndroid Build Coastguard Worker Build 76*4dc78e53SAndroid Build Coastguard Worker ;; 77*4dc78e53SAndroid Build Coastguard Worker Copy) 78*4dc78e53SAndroid Build Coastguard Worker Copy 79*4dc78e53SAndroid Build Coastguard Worker ;; 80*4dc78e53SAndroid Build Coastguard Worker BuildAll) 81*4dc78e53SAndroid Build Coastguard Worker BuildAll 82*4dc78e53SAndroid Build Coastguard Worker ;; 83*4dc78e53SAndroid Build Coastguard Worker *) 84*4dc78e53SAndroid Build Coastguard Worker echo "SYNOPSIS: $0 Build|Copy|BuildAll" 85*4dc78e53SAndroid Build Coastguard Worker echo "WARNING: does a git-clean first!!" 86*4dc78e53SAndroid Build Coastguard Worker ;; 87*4dc78e53SAndroid Build Coastguard Workeresac 88