Mercurial > hg > early-roguelike
annotate rogue5/install-sh @ 105:f0073eb75a6a
srogue: enable the keypad when restoring.
keypad() was only being called when starting a new game, which meant
the arrow keys did not work when restoring a saved game.
| author | John "Elwin" Edwards | 
|---|---|
| date | Tue, 03 Sep 2013 15:39:04 -0700 | 
| parents | f502bf60e6e4 | 
| children | 
| rev | line source | 
|---|---|
| 
33
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
1 #!/bin/sh | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
2 # install - install a program, script, or datafile | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
3 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
4 scriptversion=2005-05-14.22 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
5 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
6 # This originates from X11R5 (mit/util/scripts/install.sh), which was | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
7 # later released in X11R6 (xc/config/util/install.sh) with the | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
8 # following copyright and license. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
9 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
10 # Copyright (C) 1994 X Consortium | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
11 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
12 # Permission is hereby granted, free of charge, to any person obtaining a copy | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
13 # of this software and associated documentation files (the "Software"), to | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
14 # deal in the Software without restriction, including without limitation the | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
15 # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
16 # sell copies of the Software, and to permit persons to whom the Software is | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
17 # furnished to do so, subject to the following conditions: | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
18 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
19 # The above copyright notice and this permission notice shall be included in | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
20 # all copies or substantial portions of the Software. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
21 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
22 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
23 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
24 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
25 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
26 # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
27 # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
28 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
29 # Except as contained in this notice, the name of the X Consortium shall not | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
30 # be used in advertising or otherwise to promote the sale, use or other deal- | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
31 # ings in this Software without prior written authorization from the X Consor- | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
32 # tium. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
33 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
34 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
35 # FSF changes to this file are in the public domain. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
36 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
37 # Calling this script install-sh is preferred over install.sh, to prevent | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
38 # `make' implicit rules from creating a file called install from it | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
39 # when there is no Makefile. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
40 # | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
41 # This script is compatible with the BSD install script, but was written | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
42 # from scratch. It can only install one file at a time, a restriction | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
43 # shared with many OS's install programs. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
44 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
45 # set DOITPROG to echo to test this script | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
46 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
47 # Don't use :- since 4.3BSD and earlier shells don't like it. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
48 doit="${DOITPROG-}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
49 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
50 # put in absolute paths if you don't have them in your path; or use env. vars. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
51 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
52 mvprog="${MVPROG-mv}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
53 cpprog="${CPPROG-cp}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
54 chmodprog="${CHMODPROG-chmod}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
55 chownprog="${CHOWNPROG-chown}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
56 chgrpprog="${CHGRPPROG-chgrp}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
57 stripprog="${STRIPPROG-strip}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
58 rmprog="${RMPROG-rm}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
59 mkdirprog="${MKDIRPROG-mkdir}" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
60 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
61 chmodcmd="$chmodprog 0755" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
62 chowncmd= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
63 chgrpcmd= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
64 stripcmd= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
65 rmcmd="$rmprog -f" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
66 mvcmd="$mvprog" | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
67 src= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
68 dst= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
69 dir_arg= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
70 dstarg= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
71 no_target_directory= | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
72 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
73 usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
74 or: $0 [OPTION]... SRCFILES... DIRECTORY | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
75 or: $0 [OPTION]... -t DIRECTORY SRCFILES... | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
76 or: $0 [OPTION]... -d DIRECTORIES... | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
77 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
78 In the 1st form, copy SRCFILE to DSTFILE. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
79 In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
80 In the 4th, create DIRECTORIES. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
81 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
82 Options: | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
83 -c (ignored) | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
84 -d create directories instead of installing files. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
85 -g GROUP $chgrpprog installed files to GROUP. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
86 -m MODE $chmodprog installed files to MODE. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
87 -o USER $chownprog installed files to USER. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
88 -s $stripprog installed files. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
89 -t DIRECTORY install into DIRECTORY. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
90 -T report an error if DSTFILE is a directory. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
91 --help display this help and exit. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
92 --version display version info and exit. | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
93 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
94 Environment variables override the default commands: | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
95 CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
96 " | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
97 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
98 while test -n "$1"; do | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
99 case $1 in | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
100 -c) shift | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
101 continue;; | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
102 | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
103 -d) dir_arg=true | 
| 
 
f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
 
elwin 
parents:  
diff
changeset
 | 
104 shift | 
