xref: /plan9/rc/bin/patch/move (revision d1be6b086622eecc0da76db1fbd64349a5e85293)
1e0d6d19cSDavid du Colombier#!/bin/rc
2bfb6eab9SDavid du Colombier# patch/move target patch-tree... - move patch tree(s) to target dir
325f7656aSDavid du Colombierrfork e
4bfb6eab9SDavid du Colombierpats=/n/sources/patch
5e0d6d19cSDavid du Colombierif(~ $#* 0 1){
6e0d6d19cSDavid du Colombier	echo 'usage: patch/move dst patch-name...' >[1=2]
7e0d6d19cSDavid du Colombier	exit usage
8e0d6d19cSDavid du Colombier}
9e0d6d19cSDavid du Colombier
10bfb6eab9SDavid du Colombierif(! test -d $pats){
11e0d6d19cSDavid du Colombier	rfork n
12e0d6d19cSDavid du Colombier	9fs sources
13e0d6d19cSDavid du Colombier}
14bfb6eab9SDavid du Colombiercd $pats
15e0d6d19cSDavid du Colombier
16e0d6d19cSDavid du Colombierdst=$1
17e0d6d19cSDavid du Colombiershift
18bfb6eab9SDavid du Colombierfor(src){
19*d1be6b08SDavid du Colombier	patbase = `{basename $src}
20*d1be6b08SDavid du Colombier	patdest = $dst/$patbase
21*d1be6b08SDavid du Colombier	if (~ $dst $src $patbase)
22*d1be6b08SDavid du Colombier		echo $0: skipping $src >[1=2]
23*d1be6b08SDavid du Colombier	if not if(! test -d $src)
24*d1be6b08SDavid du Colombier		echo $0: no such patch $pats/$src >[1=2]
25bfb6eab9SDavid du Colombier	if not if(test -d $patdest)
26*d1be6b08SDavid du Colombier		echo $0: already have $pats/$patdest >[1=2]
27e0d6d19cSDavid du Colombier	if not
28bfb6eab9SDavid du Colombier		ls -ldp $src >$src/origls &&
29bfb6eab9SDavid du Colombier			mkdir $patdest && dircp $src $patdest && rm -rf $src &&
30bfb6eab9SDavid du Colombier			test -s $patdest/email && patch/notify $patdest
31e0d6d19cSDavid du Colombier}
32