new template
[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
78
79DOTFILES= .larn.help .larnmaze .larnopts .lfortune
80
81FLAGS= -O $(OPTIONS) -DLARNHOME=\"$(LARNHOME)/\"
82
83larn: larn12.0
84larn12.0: $(OBJS)
85 $(CC) $(FLAGS) $(OBJS) -o larn12.0 $(TERMLIB)
86 size larn12.0
87
88all: larn install
89
90.c.o: $<
91 $(CC) -c $(FLAGS) $*.c
92 chmod 0600 $*.o
93
94$(OBJS): header.h
95
96install:
97 if test ! -d $(LARNHOME) ; then mkdir $(LARNHOME); fi
98 -chmod a+w $(LARNHOME)
99 cp larn12.0 $(BINDIR)/larn
100 cp $(DOTFILES) $(LARNHOME)