#!/bin/sh LANG=C export LANG if [ $# -ne 1 ]; then echo "Usage : $0 " exit 2 fi version=$1 tag=$version subdir=chrony-${version} mandate=$(date +'%B %Y') umask 022 if [ ! -d .git ]; then echo "No .git subdirectory?" exit 3 fi [ -d RELEASES ] || mkdir RELEASES rm -rf RELEASES/$subdir if [ $version != test ]; then git tag -s $tag || exit 1 else tag=HEAD fi git archive --format=tar --prefix=RELEASES/${subdir}/ $tag | \ tar xf - || exit 1 cd RELEASES/$subdir || exit 1 echo $version > version.txt sed -i -e "s%@@VERSION@@%${version}%" examples/chrony.spec for m in chronyc.1.in chrony.conf.5.in chronyd.8.in; do sed -e "s%@VERSION@%${version}%;s%@MAN_DATE@%${mandate}%" \ < $m > ${m}_ mv -f ${m}_ $m done ./configure && make chrony.txt || exit 1 mv chrony.txt chrony.txt_ make distclean mv chrony.txt_ chrony.txt awk '/^[1-9] Installation$/{p=1} /^[1-9]\.. Support for line editing/{exit}; p' chrony.txt | \ tail -n +4 > INSTALL if [ $(wc -l < INSTALL) -gt 100 -o $(wc -l < INSTALL) -lt 85 ]; then echo "INSTALL generated incorrectly?" exit 3 fi awk '/^[1-9] Frequently asked questions$/{p=1} /^Appendix A GNU General Public License$/{exit}; p' chrony.txt | \ tail -n +4 | sed 's/^[1-9]\.\([1-9]\)/\1/' | sed 's/^----/--/' | \ sed 's/^====/==/' > FAQ if [ $(wc -l < FAQ) -gt 400 -o $(wc -l < FAQ) -lt 200 ]; then echo "FAQ generated incorrectly?" exit 3 fi rm -f config.h config.log make_release .gitignore cd .. tar cv --owner root --group root $subdir | gzip -9 > ${subdir}.tar.gz [ $version != test ] && \ gpg -b -a -o ${subdir}-tar-gz-asc.txt ${subdir}.tar.gz