1#         $NetBSD: Makefile,v 1.21 2011/08/16 11:19:41 christos 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