X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=makedist;h=0c4b39eba9a90b6a9a91731b1fc7bb792914c1e6;hb=d94eb07f82a7e9c086da23b31c8021107b60f884;hp=8da4ab4cad77f209715c595c659e3193d7ec85a9;hpb=308e1801baa05edbcfda6e8054fdf90727581c62;p=thirdparty%2Fmdadm.git diff --git a/makedist b/makedist index 8da4ab4c..0c4b39eb 100755 --- a/makedist +++ b/makedist @@ -1,19 +1,33 @@ #!/bin/sh +# avoid silly sorting +export LANG=C arg=$1 target=~/public_html/source/mdadm +if [ " $arg" = " test" ] +then + target=/tmp/mdadm-test + rm -rf $target + mkdir -p $target +fi if [ -d $target ] then : else echo $target is not a directory exit 2 fi -set `grep '^char Version' ReadMe.c ` -version=`echo $7 | sed 's/v//'` -grep "^.TH MDADM 8 .. v$version" mdadm.8 > /dev/null 2>&1 || +set `grep '^#define VERSION' ReadMe.c ` +version=`echo $3 | sed -e 's/"//g'` +grep "^.TH MDADM 8 .. v$version" mdadm.8.in > /dev/null 2>&1 || + { + echo mdadm.8.in does not mention version $version. + exit 1 + } +grep "^.TH MDMON 8 .. v$version" mdmon.8 > /dev/null 2>&1 || { - echo mdadm.8 does not mention verion $version. + echo mdmon.8 does not mention version $version. exit 1 } -grep "^Version: *$version$" mdadm.spec > /dev/null 2>&1 || +rpmv=`echo $version | tr - _` +grep "^Version: *$rpmv$" mdadm.spec > /dev/null 2>&1 || { echo mdadm.spec does not mention version $version. exit 1 @@ -30,16 +44,16 @@ else { cat inventory ; echo ANNOUNCE-$version ; } | sort -o inventory fi echo version = $version -base=mdadm-$version.tgz +base=mdadm-$rpmv.tar.gz if [ " $arg" != " diff" ] then - if [ -f $target/$base ] - then + if [ -f $target/$base ] + then echo $target/$base exists. exit 1 fi trap "rm $target/$base; exit" 1 2 3 - ( cd .. ; ln -s mdadm.v2 mdadm-$version ; tar chvf - --exclude="TAGS" --exclude='*~' --exclude=.patches --exclude='*,v' --exclude='*.o' --exclude mdadm --exclude=mdadm'.[^ch0-9]' --exclude=RCS mdadm-$version ; rm mdadm-$version ) | gzip --best > $target/$base + git archive --prefix=mdadm-$rpmv/ HEAD | gzip --best > $target/$base chmod a+r $target/$base ls -l $target/$base if tar tzf $target/$base | sed 's,[^/]*/,,' | sort | diff -u inventory - @@ -48,22 +62,35 @@ then rm $target/$base exit 1 fi - rpm -ta $target/$base - find /home/neilb/src/RPM -name "*mdadm-$version-*" \ + rpmbuild -ta $target/$base || exit 1 + find ~/rpmbuild/RPMS -name "*mdadm-$version-*" \ -exec cp {} $target/RPM \; cp ANNOUNCE-$version $target/ANNOUNCE cp ChangeLog $target/ChangeLog - scp $target/$base master.kernel.org:/pub/linux/utils/raid/mdadm/mdadm-$version.tar.gz - scp $target/ANNOUNCE $target/ChangeLog master.kernel.org:/pub/linux/utils/raid/mdadm/ + if [ " $arg" != " test" ] + then + echo -n "Confirm signing this release? " + read a + if [ " $a" != " y" ]; then echo OK - bye. ; exit 1; fi + if zcat $target/$base | gpg -ba > $target/$base.sign && gpg -ba $target/ANNOUNCE + then + kup put $target/$base $target/$base.sign \ + /pub/linux/utils/raid/mdadm/mdadm-$version.tar.gz + kup put $target/ANNOUNCE $target/ANNOUNCE.asc /pub/linux/utils/raid/mdadm/ANNOUNCE + else + echo signing failed + exit 1 + fi + fi else - if [ ! -f $target/$base ] - then + if [ ! -f $target/$base ] + then echo $target/$base does not exist. exit 1 fi - ( cd .. ; ln -s mdadm.v2 mdadm-$version ; tar chf - --exclude="TAGS" --exclude='*,v' --exclude='*~' --exclude='*.o' --exclude mdadm --exclude=mdadm'.[^ch0-9]' --exclude=RCS mdadm-$version ; rm mdadm-$version ) | gzip --best > /var/tmp/mdadm-new.tgz + ( cd .. ; ln -s mdadm.v2 mdadm-$version ; tar chf - --exclude=.git --exclude="TAGS" --exclude='*,v' --exclude='*~' --exclude='*.o' --exclude mdadm --exclude=mdadm'.[^ch0-9]' --exclude=RCS mdadm-$version ; rm mdadm-$version ) | gzip --best > /var/tmp/mdadm-new.tgz mkdir /var/tmp/mdadm-old ; zcat $target/$base | ( cd /var/tmp/mdadm-old ; tar xf - ) mkdir /var/tmp/mdadm-new ; zcat /var/tmp/mdadm-new.tgz | ( cd /var/tmp/mdadm-new ; tar xf - ) - diff -ru /var/tmp/mdadm-old /var/tmp/mdadm-new + diff -ru /var/tmp/mdadm-old /var/tmp/mdadm-new rm -rf /var/tmp/mdadm-old /var/tmp/mdadm-new /var/tmp/mdadm-new.tgz fi