date and time created 88/10/19 15:51:23 by bostic
[unix-history] / usr / src / games / larn / Makefile
CommitLineData
bf64c004
KB
1# Configuration options
2#
3# Updated by jgd for csd1 and bruno for csd4.
4# Check this against Omakefile for changes.
5#
6# LARNHOME is the directory where the larn data files will be installed.
7# BINDIR is the directory where the larn binary will be installed.
8
9# LARNHOME = /c/noah/public/.lfiles
10LARNHOME = /usr/games/lib/larnfiles
11# BINDIR = /c/noah/public
12BINDIR = /usr/games
13CC= cc
14
15# -ltermlib may need to be changed to -ltermcap on some systems
16# TERMLIB= -ltermlib
17TERMLIB= -ltermcap
18
19# Available compile time options:
20# WIZID=xxx - this is the userid (or playerid) of the wizard. Default is
21# zero (superuser), which disables all wizard functions.
22# Players must have this userid (or playerid) in order
23# to become the non-scoring wizard player. Definition
24# of WIZID to non-zero will enable the special wizard
25# debugging commands. For root to become wizard, use
26# WIZID= -1.
27# EXTRA - incorporates code to gather additional performance statistics
28# TIMECHECK - incorporates code to disable play during working hours (8-5)
29# SYSV - use system III/V (instead of V7) type ioctl calls
30# BSD - use BSD specific features (mostly timer and signal stuff)
31# BSD4.1 - use BSD4.1 to avoid some 4.2 dependencies (must be used with
32# BSD above; do not mix with SYSV)
33# HIDEBYLINK - if defined, the program attempts to hide from ps
34# DOCHECKPOINTS - if not defined, checkpoint files are periodically written
35# by the larn process (no forking) if enabled in the .larnopts
36# description file. Checkpointing is handy on an unreliable
37# system, but takes CPU. Inclusion of DOCHECKPOINTS will cause
38# fork()ing to perform the checkpoints (again if enabled in
39# the .larnopts file). This usually avoids pauses in larn
40# while the checkpointing is being done (on large machines).
41# SAVEINHOME - put save files in users HOME instead of LARNHOME the as default
42# VER - This is the version of the software, example: 12
43# SUBVER - This is the revision of the software, example: 1
44# FLUSHNO=# - Set the input queue excess flushing threshold (default 5)
45# NOVARARGS - Define for systems that don't have varargs (a default
46# varargs will be used).
47# MACRORND - Define to use macro version of rnd() and rund() (fast
48# and big)
49# UIDSCORE - Define to use user id's to manage scoreboard. Leaving
50# this out will cause player id's from the file ".playerids"
51# to be used instead. (.playerids is created upon demand).
52# Only one entry per id # is allowed in each scoreboard
53# (winning & non-winning).
54# VT100 - Compile for using vt100 family of terminals. Omission of
55# this define will cause larn to use termcap, but it will be
56# MUCH slower due to an extra layer of output interpretation.
57# Also, only VT100 mode allows 2 different standout modes,
58# inverse video, and bold video. And only in VT100 mode is
59# the scrolling region of the terminal used (much nicer than
60# insert/delete line sequences to simulate it, if VT100 is
61# omitted).
62# NONAP - This causes napms() to return immediately instead of
63# delaying n milliseconds. This define may be needed on
64# some systems if the nap stuff does not work correctly
65# (possible hang). nap() is primarilly used to delay for
66# effect when casting missile type spells.
67# NOLOG - Turn off logging.
68#
69
70OPTIONS = -DBSD -DVER=12 -DSUBVER=0 -DWIZID=57 -DSAVEINHOME -DNONAP -DNOLOG
71
72# End of configurable make options
73########################################################################
74#
75OBJS= main.o object.o create.o tok.o display.o global.o data.o io.o monster.o\
76 store.o diag.o help.o config.o nap.o bill.o scores.o signal.o moreobj.o\
77 movem.o regen.o fortune.o savelev.o
babc628b
KB
78SRCS= main.c object.c create.c tok.c display.c global.c data.c io.c monster.c\
79 store.c diag.c help.c config.c nap.c bill.c scores.c signal.c moreobj.c\
80 movem.c regen.c fortune.c savelev.c
bf64c004
KB
81
82DOTFILES= .larn.help .larnmaze .larnopts .lfortune
83
babc628b 84CFLAGS= -O $(OPTIONS) -DLARNHOME=\"$(LARNHOME)/\"
bf64c004 85
babc628b 86all: larn
bf64c004 87
babc628b
KB
88larn: $(OBJS) ${LIBC}
89 $(CC) $(CFLAGS) $(OBJS) -o $@ $(TERMLIB)
bf64c004 90
babc628b 91install:
8d7661b8 92 -[ -d ${DESTDIR}/usr/games/lib/larnfiles ] || mkdir ${DESTDIR}/usr/games/lib/larnfiles
8b51accb
KB
93 chmod 700 ${DESTDIR}/usr/games/lib/larnfiles
94 chown games.src ${DESTDIR}/usr/games/lib/larnfiles
95 install -s -o games -g bin -m 4700 larn ${DESTDIR}/usr/games/hide
96 (cd ${DESTDIR}/usr/games; rm -f larn; ln -s dm larn; chown games.bin larn)
97 install -c -o games -g bin -m 444 .larn.help ${DESTDIR}/usr/games/lib/larnfiles
98 install -c -o games -g bin -m 444 .larnmaze ${DESTDIR}/usr/games/lib/larnfiles
99 install -c -o games -g bin -m 444 .larnopts ${DESTDIR}/usr/games/lib/larnfiles
100 install -c -o games -g bin -m 444 .lfortune ${DESTDIR}/usr/games/lib/larnfiles
bf64c004 101
babc628b
KB
102clean: FRC
103 rm -f ${OBJS} core larn
bf64c004 104
babc628b
KB
105depend: FRC
106 mkdep ${CFLAGS} ${SRCS}
107
108lint: FRC
109 lint ${CFLAGS} ${SRCS}
110
111tags: FRC
112 ctags ${SRCS}
113
114FRC:
115
116# DO NOT DELETE THIS LINE -- mkdep uses it.
117# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
118
119main.o: main.c header.h /usr/include/pwd.h
120object.o: object.c header.h
121create.o: create.c header.h
122tok.o: tok.c /usr/include/sys/types.h /usr/include/sys/ioctl.h
123tok.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h header.h
124display.o: display.c header.h
125global.o: global.c header.h
126data.o: data.c header.h
127io.o: io.c header.h /usr/include/sgtty.h /usr/include/sys/ioctl.h
128io.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h
129io.o: /usr/include/varargs.h
130monster.o: monster.c header.h
131store.o: store.c header.h
132diag.o: diag.c /usr/include/sys/types.h /usr/include/sys/times.h
133diag.o: /usr/include/sys/stat.h header.h
134help.o: help.c header.h
135config.o: config.c header.h
136nap.o: nap.c /usr/include/signal.h /usr/include/sys/types.h
137nap.o: /usr/include/sys/timeb.h
138bill.o: bill.c header.h
139scores.o: scores.c /usr/include/sys/types.h /usr/include/sys/times.h
140scores.o: /usr/include/sys/stat.h header.h
141signal.o: signal.c /usr/include/signal.h header.h
142moreobj.o: moreobj.c header.h
143movem.o: movem.c header.h
144regen.o: regen.c header.h
145fortune.o: fortune.c /usr/include/sys/types.h /usr/include/sys/stat.h
146fortune.o: /usr/include/fcntl.h header.h
147savelev.o: savelev.c header.h
148
149# IF YOU PUT ANYTHING HERE IT WILL GO AWAY