annotate readline/support/mkdist @ 2996:9d4e3a9de17e

[project @ 1997-05-22 20:58:07 by jwe]
author jwe
date Thu, 22 May 1997 20:59:27 +0000
parents
children 3001e15555e9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
1 #! /bin/bash -
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
2 #
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
3 # mkdist - make a distribution directory from a master manifest file
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
4 #
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
5 # usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-v] version
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
6 #
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
7 # SRCDIR defaults to src
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
8 # MANIFEST defaults to $SRCDIR/MANIFEST
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
9 #
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
10
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
11 SRCDIR=src
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
12 ROOTNAME=bash
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
13
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
14 usage()
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
15 {
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
16 echo usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-v] version 1>&2
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
17 exit 2
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
18 }
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
19
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
20 vmsg()
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
21 {
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
22 if [ -n "$verbose" ]; then
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
23 echo mkdist: "$@"
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
24 fi
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
25 }
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
26
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
27 while getopts m:s:r:v name
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
28 do
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
29 case $name in
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
30 m) MANIFEST=$OPTARG ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
31 s) SRCDIR=$OPTARG ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
32 r) ROOTNAME=$OPTARG ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
33 v) verbose=yes ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
34 ?) usage ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
35 esac
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
36 done
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
37
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
38 : ${MANIFEST:=$SRCDIR/MANIFEST}
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
39
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
40 vmsg using $MANIFEST
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
41
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
42 shift $(( $OPTIND - 1 ))
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
43
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
44 if [ $# -lt 1 ]; then
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
45 usage
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
46 fi
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
47
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
48 version=$1
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
49 newdir=${ROOTNAME}-$version
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
50
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
51 vmsg creating distribution for version $version in $newdir
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
52
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
53 if [ ! -d $newdir ]; then
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
54 mkdir $newdir || { echo $0: cannot make directory $newdir 1>&2 ; exit 1; }
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
55 fi
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
56
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
57 dirmode=755
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
58 filmode=644
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
59
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
60 while read fname type mode
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
61 do
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
62 [ -z "$fname" ] && continue
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
63
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
64 case "$fname" in
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
65 \#*) continue ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
66 esac
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
67
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
68 case "$type" in
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
69 d) mkdir $newdir/$fname ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
70 f) cp -p $SRCDIR/$fname $newdir/$fname ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
71 *) echo "unknown file type $type" 1>&2 ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
72 esac
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
73
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
74 if [ -n "$mode" ]; then
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
75 chmod $mode $newdir/$fname
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
76 fi
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
77
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
78 done < $MANIFEST
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
79
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
80 # cut off the `-alpha' in something like `2.0-alpha', leaving just the
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
81 # numeric version
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
82 #version=${version%%-*}
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
83
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
84 #case "$version" in
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
85 #*.*.*) vers=${version%.*} ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
86 #*.*) vers=${version} ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
87 #esac
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
88
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
89 #echo $vers > $newdir/.distribution
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
90
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
91 #case "$version" in
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
92 #*.*.*) plevel=${version##*.} ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
93 #*) plevel=0 ;;
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
94 #esac
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
95 #[ -z "$plevel" ] && plevel=0
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
96 #echo ${plevel} > $newdir/.patchlevel
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
97
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
98 vmsg $newdir created
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
99
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
100 exit 0