cleanup, add manual page
[unix-history] / usr / src / games / phantasia / Makefile
CommitLineData
efbedec6
KB
1# Makefile for Phantasia 3.3.2
2#
3# To create game:
4#
5# 1) Set up a directory where the game and its support files will live.
6# (It is suggested that the source be kept somewhere else.)
7#
8# 2) Set up the variables in Makefile CAREFULLY to reflect your
9# particular situation.
10#
11# 3) Check out ok_to_play() at the end of main.c if you want to include
12# code to restrict access at certain times.
13#
14# 4) 'make install' and sit back and watch.
15#
16# NOTE: 'setup' MUST be executed before trying to run 'phantasia'.
17# The install procedure does this for you.
18#
19#
20# To convert from 3.3.1 or 3.3.1+ to 3.3.2:
21#
22# 1) 'make convert' (3.3.1+: 'make PLUS=-DPHANTPLUS convert')
23#
24# 2) Move 'newcharacs' to 'characs'.
25#
26
27RM = -rm
28SHAR = /d2/estes/bin/shar
29# Tell 'make' to use /bin/sh for all commands.
30SHELL = /bin/sh
31
32# PLOTDEVICE is used for plotting the map.
33# Change as appropriate.
34PLOTDEVICE = > /dev/tty
35
36# Add '-ljobs' to LDFLAGS if 4.1bsd; add -ltermlib if not SVR2.
37# Need separate i/d space on small machines.
38# May need '-f' on machines without floating point hardware.
7ce62984 39LIBS= -lm -lcurses -ltermlib
efbedec6
KB
40
41# DEST is where the program and its support files reside
42DEST = /usr/games/lib/phantasia
43DESTR = /usr/games
44
4959c176
KB
45MDIR= /usr/man/cat6
46
47.SUFFIXES: .6 .0
48
49
efbedec6
KB
50# The following are program constants which are implementation dependent.
51#
52# DEST is passed on. Note that there is no closing quote here.
53# WIZARD is the login of the one who will clean up things.
54# UID is the uid of game wizard.
55# define OK_TO_PLAY to restrict playing access at certain times.
56# Also see function ok_to_play() in main.c, and tailor to your own needs.
57# define ENEMY to include code for checking of a 'hit list' of resricted
58# accounts. The list of logins goes in the file 'enemy'.
59# SHELL is the default shell for shell escapes. If SHELL is not defined,
60# shell escapes are not enabled.
61# define BSD41 for 4.1bsd
62# define BSD42 for 4.2bsd
63# define SYS3 for System III, or similar (like Version 7)
64# define SYS5 for System V
65# If you don't have 'strchr()', put '-Dstrchr=index' below.
66# May need '-I/usr/include/sys' for 4.2bsd.
67CFLAGS = -O \
68 -DDEST=\"${DEST} \
69 -DDESTR=\"${DESTR} \
4959c176
KB
70 -DWIZARD=\"root\" \
71 -DUID=0 \
efbedec6 72 -DENEMY \
efbedec6
KB
73 -DBSD42
74
7ce62984
KB
75SRCS= main.c fight.c io.c interplayer.c gamesupport.c misc.c phantglobs.c
76OBJS= main.o fight.o io.o interplayer.o gamesupport.o misc.o phantglobs.o
efbedec6 77HFILES = phantdefs.h phantstruct.h macros.h include.h
7ce62984 78LIBC= /lib/libc.a
efbedec6 79
4959c176 80all: phantasia setup phantasia.0
efbedec6
KB
81
82# Make the game.
7ce62984
KB
83phantasia: ${OBJS} ${LIBC}
84 ${CC} ${OBJS} -o $@ ${LIBS}
efbedec6 85
7ce62984 86${OBJS}: ${HFILES}
efbedec6
KB
87
88# Make the initialization program.
7ce62984
KB
89setup: phantglobs.o setup.o monsters.asc ${LIBC}
90 ${CC} phantglobs.o setup.o -o $@ ${LIBS}
efbedec6 91
7ce62984 92setup.o: ${HFILES}
efbedec6
KB
93
94# Make documentation.
95# The flags below on tbl and nroff are to make a line printable version.
4959c176
KB
96.6.0:
97 tbl -TX phantasia.6 | /usr/man/manroff > phantasia.0
efbedec6
KB
98
99# Install game and documentation. Initialize.
7ce62984 100install: FRC
8d7661b8 101 -[ -d ${DESTDIR}/usr/games/lib/phantasia ] || mkdir ${DESTDIR}/usr/games/lib/phantasia
7ce62984 102 chmod 700 /usr/games/lib/phantasia
8b51accb
KB
103 chown games.bin /usr/games/lib/phantasia
104 install -s -o games -g bin -m 4700 phantasia ${DESTDIR}/usr/games/hide
105 (cd ${DESTDIR}/usr/games; rm -f phantasia; ln -s dm phantasia; chown games.bin phantasia)
4959c176
KB
106 install -c -o games -g bin -m 400 phantasia.0 ${DESTDIR}/usr/games/lib/phantasia/phant.help
107 install -c -o bin -g bin -m 444 phantasia.0 ${DESTDIR}${MDIR}
7ce62984 108 ./setup
8b51accb 109 chown games.bin /usr/games/lib/phantasia/*
efbedec6
KB
110
111# Make Phantasia map.
112# Change the map commands reflect your installation.
113# Pre-System III installations may use 'plot' instead of 'tplot'.
114map: map.c
115 cc -O map.c -lplot -o map
116 map | tplot -t4014 ${PLOTDEVICE}
117
118# Convert old character file to new format.
119# 'convert' is meant to be run only once.
120# PLUS = PHANTPLUS for conversion from 3.3.1+.
121convert: convert.c oldplayer.h phantstruct.h
122 ${CC} ${CFLAGS} ${PLUS} convert.c ${LDFLAGS} -o convert
123 convert
124 @echo "New data is in newcharacs."
125
126# Clean up directory after installation.
127clean:
4959c176 128 ${RM} -f *.o core phantasia phant.help phantasia.0 setup
7ce62984
KB
129
130depend: FRC
131 mkdep ${CFLAGS} ${SRCS}
132
133lint: FRC
134 lint ${CFLAGS} ${SRCS}
135
136tags: FRC
137 ctags ${SRCS}
138
139FRC:
140
141# DO NOT DELETE THIS LINE -- mkdep uses it.
142# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
143
144main.o: main.c include.h /usr/include/ctype.h /usr/include/curses.h
145main.o: /usr/include/stdio.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
4959c176
KB
146main.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h
147main.o: /usr/include/sys/ttydev.h /usr/include/math.h /usr/include/pwd.h
148main.o: /usr/include/setjmp.h /usr/include/signal.h /usr/include/machine/trap.h
149main.o: /usr/include/time.h macros.h phantdefs.h phantstruct.h phantglobs.h
7ce62984
KB
150fight.o: fight.c include.h /usr/include/ctype.h /usr/include/curses.h
151fight.o: /usr/include/stdio.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
4959c176
KB
152fight.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h
153fight.o: /usr/include/sys/ttydev.h /usr/include/math.h /usr/include/pwd.h
154fight.o: /usr/include/setjmp.h /usr/include/signal.h
155fight.o: /usr/include/machine/trap.h /usr/include/time.h macros.h phantdefs.h
7ce62984
KB
156fight.o: phantstruct.h phantglobs.h
157io.o: io.c include.h /usr/include/ctype.h /usr/include/curses.h
158io.o: /usr/include/stdio.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
4959c176
KB
159io.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h
160io.o: /usr/include/sys/ttydev.h /usr/include/math.h /usr/include/pwd.h
161io.o: /usr/include/setjmp.h /usr/include/signal.h /usr/include/machine/trap.h
7ce62984
KB
162io.o: /usr/include/time.h macros.h phantdefs.h phantstruct.h phantglobs.h
163interplayer.o: interplayer.c include.h /usr/include/ctype.h
164interplayer.o: /usr/include/curses.h /usr/include/stdio.h /usr/include/sgtty.h
165interplayer.o: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
4959c176
KB
166interplayer.o: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h
167interplayer.o: /usr/include/math.h /usr/include/pwd.h /usr/include/setjmp.h
168interplayer.o: /usr/include/signal.h /usr/include/machine/trap.h
169interplayer.o: /usr/include/time.h macros.h phantdefs.h phantstruct.h
170interplayer.o: phantglobs.h
7ce62984
KB
171gamesupport.o: gamesupport.c include.h /usr/include/ctype.h
172gamesupport.o: /usr/include/curses.h /usr/include/stdio.h /usr/include/sgtty.h
173gamesupport.o: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
4959c176
KB
174gamesupport.o: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h
175gamesupport.o: /usr/include/math.h /usr/include/pwd.h /usr/include/setjmp.h
176gamesupport.o: /usr/include/signal.h /usr/include/machine/trap.h
177gamesupport.o: /usr/include/time.h macros.h phantdefs.h phantstruct.h
178gamesupport.o: phantglobs.h
7ce62984
KB
179misc.o: misc.c include.h /usr/include/ctype.h /usr/include/curses.h
180misc.o: /usr/include/stdio.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
4959c176
KB
181misc.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydefaults.h
182misc.o: /usr/include/sys/ttydev.h /usr/include/math.h /usr/include/pwd.h
183misc.o: /usr/include/setjmp.h /usr/include/signal.h /usr/include/machine/trap.h
184misc.o: /usr/include/time.h macros.h phantdefs.h phantstruct.h phantglobs.h
7ce62984
KB
185phantglobs.o: phantglobs.c include.h /usr/include/ctype.h /usr/include/curses.h
186phantglobs.o: /usr/include/stdio.h /usr/include/sgtty.h
187phantglobs.o: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h
4959c176
KB
188phantglobs.o: /usr/include/sys/ttydefaults.h /usr/include/sys/ttydev.h
189phantglobs.o: /usr/include/math.h /usr/include/pwd.h /usr/include/setjmp.h
190phantglobs.o: /usr/include/signal.h /usr/include/machine/trap.h
191phantglobs.o: /usr/include/time.h macros.h phantdefs.h phantstruct.h
192phantglobs.o: phantglobs.h
7ce62984
KB
193
194# IF YOU PUT ANYTHING HERE IT WILL GO AWAY