aboutsummaryrefslogtreecommitdiffstats
path: root/Tools/scripts/prdone
blob: f2f03336537a68a81a6822129b6a413de6d98122 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/bin/sh
#
# MAINTAINER= mharo@FreeBSD.org
#
# $FreeBSD$
#

# $Id: prdone,v 1.4 2000/04/22 21:48:53 mharo Exp $

if [ $# -lt 1 ] ; then
    echo "prdone prnumber [ci]"
    exit 1
fi

file=$1; shift
action=$1;

if [ "X$file" = "Xci" ] ; then
    echo "hey, dumbass, the PR number is not 'ci'"
    exit 1
fi

rm -f pr-patch
rm -f MAINTAINER_WAIT

if [ "X$action" = "Xci" ] ; then
    echo "preparing commit"
cvsmsg=cvsmsg
    cp /home/ncvs/CVSROOT/rcstemplate CVS/Template

    from=`grep From: $file | sed -e 's/From: //' -e 's/\@/\\\@/g'`
    name=`grep Originator: $file | sed -e 's/>Originator: //'`
    synopsis=`grep Synopsis: $file | sed -e 's/>Synopsis: //'`
    cp /home/ncvs/CVSROOT/rcstemplate $cvsmsg
    chmod +w $cvsmsg
    /usr/bin/perl -pi -e "s,^PR:,PR:\t\t$file," $cvsmsg
    /usr/bin/perl -pi -e "s,^Submitted by:,Submitted by:\t$name <$from>," $cvsmsg
    echo "$synopsis" > $cvsmsg.tmp
    cat $cvsmsg >> $cvsmsg.tmp
    mv $cvsmsg.tmp $cvsmsg
    vi $cvsmsg

    cvs -d mharo@freefall.freebsd.org:/home/ncvs ci -F $cvsmsg
    rm -f $cvsmsg
    echo "done"
else
    echo "PR: $file" > MAINTAINER_WAIT
    echo ""
    echo "Don't forget to email" `grep MAINTAINER Makefile`
    echo ""
fi

# remove pr number after we commit as I always forget to track PR number
rm -f $file

ssh freefall.freebsd.org -t edit-pr $file