1#	$NetBSD: Makefile,v 1.20 2010/02/03 15:34:39 roy Exp $
2#	@(#)Makefile	5.12 (Berkeley) 5/30/93
3
4# EXTRA
5#	Incorporates code to gather additional performance statistics
6#
7# TERMIO
8#	Use sysv termio
9# TERMIOS
10#	Use posix termios
11# BSD
12#	Use BSD specific features (mostly timer and signal stuff)
13# BSD4.1
14#	Use BSD4.1 to avoid some 4.2 dependencies (must be used with
15#	BSD above; do not mix with SYSV)
16# HIDEBYLINK
17#	If defined, the program attempts to hide from ps
18# DOCHECKPOINTS
19#	If not defined, checkpoint files are periodically written by the
20#	larn process (no forking) if enabled in the .larnopts description
21#	file.  Checkpointing is handy on an unreliable system, but takes
22#	CPU. Inclusion of DOCHECKPOINTS will cause fork()ing to perform the
23#	checkpoints (again if enabled in the .larnopts file).  This usually
24#	avoids pauses in larn while the checkpointing is being done (on
25#	large machines).
26# VER
27#	This is the version of the software, example:  12
28# SUBVER
29#	This is the revision of the software, example:  1
30# FLUSHNO=#
31#	Set the input queue excess flushing threshold (default 5)
32# NOVARARGS
33#	Define for systems that don't have varargs (a default varargs will
34#	be used).
35# MACRORND
36#	Define to use macro version of rnd() and rund() (fast and big)
37# UIDSCORE
38#	Define to use user id's to manage scoreboard.  Leaving this out will
39#	cause player id's from the file ".playerids" to be used instead.
40#	(.playerids is created upon demand).  Only one entry per id # is
41#	allowed in each scoreboard (winning & non-winning).
42#  VT100
43#	Compile for using vt100 family of terminals.  Omission of this
44#	define will cause larn to use termcap, but it will be MUCH slower
45#	due to an extra layer of output interpretation.  Also, only VT100
46#	mode allows 2 different standout modes, inverse video, and bold video.
47#	And only in VT100 mode is the scrolling region of the terminal used
48#	(much nicer than insert/delete line sequences to simulate it, if
49#	VT100 is omitted).
50# NONAP
51#	This causes napms() to return immediately instead of delaying n
52#	milliseconds.  This define may be needed on some systems if the nap
53#	stuff does not work correctly (possible hang).  nap() is primarilly
54#	used to delay for effect when casting missile type spells.
55# NOLOG
56#	Turn off logging.
57
58.include <bsd.own.mk>
59
60PROG=	larn
61MAN=	larn.6
62CPPFLAGS+=-DBSD -DVER=12 -DSUBVER=0 -DNONAP -DUIDSCORE -DTERMIOS
63SRCS=	main.c object.c create.c tok.c display.c global.c data.c io.c \
64	monster.c store.c diag.c help.c config.c nap.c bill.c scores.c \
65	signal.c action.c moreobj.c movem.c regen.c fortune.c savelev.c
66DPADD=	${LIBTERMINFO}
67LDADD=	-lterminfo
68HIDEGAME=hidegame
69SETGIDGAME=yes
70
71.if ${MKSHARE} != "no"
72DAT=larnmaze larnopts larn.help
73FILES=${DAT:S@^@${.CURDIR}/datfiles/@g}
74FILESDIR=/usr/share/games/larn
75.endif
76
77COPTS.display.c += -Wno-format-nonliteral
78COPTS.monster.c += -Wno-format-nonliteral
79
80.include <bsd.prog.mk>
81