]> git.pond.sub.org Git - empserver/blob - src/scripts/tarball
scripts src/scripts: Clean up inconsistent shell variable quoting
[empserver] / src / scripts / tarball
1 #!/bin/sh -e
2
3 usage()
4 {
5     echo "Usage: $0 [-x TWEAK-SCRIPT ] NAME VERSION (FILE | -C DIR)..."
6 }
7
8 script=:
9 while getopts x: opt
10 do
11     case $opt in
12     x)
13         script="$OPTARG"
14         ;;
15     *)
16         usage; exit 1
17         ;;
18     esac
19 done
20 shift $((OPTIND - 1))
21
22 name="$1"
23 version="$2"
24 if shift 2
25 then :
26 else usage; exit 1
27 fi
28
29 nv=$name-$version
30 mkdir "$nv"
31
32 # arrange cleanup
33 trap 'rm -rf "$nv"' 0
34
35 dir=.
36 until [ $# = 0 ]; do
37     if [ "$1" = -C ]; then
38         dir="$2"
39         if shift 2; then continue; fi
40         echo "$0: -C requires an argument" >&2
41         exit 1
42     fi
43     mkdir -p `dirname "$nv/$1"`
44     ln "$dir/$1" "$nv/$1"
45     shift
46 done
47
48 $script $name $version
49
50 tar -czf "$nv".tar.gz --owner=0 --group=0 --mode=ug+w,a+rX "$nv"