File: Makefile.dat

package info (click to toggle)
nethack 3.4.3-6
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 13,512 kB
  • ctags: 16,957
  • sloc: ansic: 196,792; cpp: 7,083; sh: 6,785; yacc: 2,005; lex: 377; makefile: 120; awk: 89; sed: 11
file content (137 lines) | stat: -rw-r--r-- 4,066 bytes parent folder | download | duplicates (23)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#	NetHack Makefile (VMS) - data files: special levels and other data.
#	SCCS Id: @(#)Makefile.dat	3.4	2002/03/02

#  Copy this file to [.dat]Makefile.; no editing needed.

MAKE	= $(MMS)
CD	= set default
ECHO	= write sys$output
NOOP	= continue		# don't do anything interesting
RUN	= mcr			# simplest way to pass command line args
TOUCH	= append/New _NLA0:	# only one file per $(TOUCH)
# support directories, relative to each other and to 'src'
DAT = [-.dat]
UTL = [-.util]
WINSHR = [-.win.share]
WINX11 = [-.win.X11]
# utilities; must match Makefile.utl in spelling and punctuation
MAKEDEFS = $(UTL)makedefs.exe;
LEVCOMP  = $(UTL)lev_comp.exe;
DGNCOMP  = $(UTL)dgn_comp.exe;
DLB	 = $(UTL)dlb.exe;
TILE2X11 = $(UTL)tile2x11.exe;
UTILMARKER = $(UTL)util.timestamp;

# note: filespecs have enough punctuation to satisfy DELETE
MARKERS = spec_levs.timestamp;,quest_levs.timestamp; 
VARDAT	= data.;,rumors.;,quest.dat;,oracles.;,options.;
DUNGEON = dungeon.;
X11TILES= x11tiles.;
# note: the level lists need to be space separated
QUESTLEVS = Arch.des Barb.des Caveman.des Healer.des Knight.des \
	Monk.des Priest.des Ranger.des Rogue.des Samurai.des Tourist.des \
	Valkyrie.des Wizard.des
SPECLEVS  = bigroom.des castle.des endgame.des gehennom.des knox.des \
	medusa.des mines.des oracle.des sokoban.des tower.des yendor.des

all :	$(VARDAT) $(DUNGEON) $(MARKERS) $(DLB)
      @ $(ECHO) "data files are up to date."

# these are convenience targets for "manual" interactive use
spec_levs :	spev_levs.timestamp
      @ $(ECHO) "special levels are up to date."
quest_levs :	quest_levs.timestamp
      @ $(ECHO) "quest levels are up to date."
dungeon :	$(DUNGEON)
      @ $(ECHO) "dungeon is up to date."
data :		data.;
      @ $(NOOP)
rumors :	rumors.;
      @ $(NOOP)
quest.dat :	quest.dat;
      @ $(NOOP)
oracles :	oracles.;
      @ $(NOOP)
options :	options.;
      @ $(NOOP)
x11tiles :	$(X11TILES)
      @ $(NOOP)

$(MAKEDEFS) : $(UTILMARKER)
	$(CD) $(UTL)
	$(MAKE)$(MAKEFLAGS) $(MAKEDEFS)
      @ $(CD) $(DAT)

$(DGNCOMP) : $(UTILMARKER)
	$(CD) $(UTL)
	$(MAKE)$(MAKEFLAGS) $(DGNCOMP)
      @ $(CD) $(DAT)

$(LEVCOMP) : $(UTILMARKER)
	$(CD) $(UTL)
	$(MAKE)$(MAKEFLAGS) $(LEVCOMP)
      @ $(CD) $(DAT)

$(DLB) : $(UTILMARKER)
	$(CD) $(UTL)
	$(MAKE)$(MAKEFLAGS) $(DLB)
      @ $(CD) $(DAT)

$(TILE2X11) : $(UTILMARKER)
	$(CD) $(UTL)
	$(MAKE)$(MAKEFLAGS) $(TILE2X11)
      @ $(CD) $(DAT)

$(X11TILES) : $(TILE2X11) \
		$(WINSHR)monsters.txt $(WINSHR)objects.txt $(WINSHR)other.txt
	$(RUN) $(TILE2X11) \
		$(WINSHR)monsters.txt $(WINSHR)objects.txt $(WINSHR)other.txt

pet_mark.xbm : $(WINX11)pet_mark.xbm
	copy $(WINX11)pet_mark.xbm pet_mark.xbm

rip.xpm : $(WINX11)rip.xpm
	copy $(WINX11)rip.xpm rip.xpm


data.; :	data.base $(MAKEDEFS)
	$(RUN) $(MAKEDEFS) -d

rumors.; :	rumors.tru rumors.fal $(MAKEDEFS)
	$(RUN) $(MAKEDEFS) -r

quest.dat; :	quest.txt $(MAKEDEFS)
	$(RUN) $(MAKEDEFS) -q

oracles.; :	oracles.txt $(MAKEDEFS)
	$(RUN) $(MAKEDEFS) -h

# note: 'options' should have already been made when include/date.h was created
options.; :	$(MAKEDEFS)
	$(RUN) $(MAKEDEFS) -v

spec_levs.timestamp; :	$(SPECLEVS) $(LEVCOMP)
	$(RUN) $(LEVCOMP) $(SPECLEVS)
	$(TOUCH) spec_levs.timestamp;

quest_levs.timestamp; : $(QUESTLEVS) $(LEVCOMP)
	$(RUN) $(LEVCOMP) $(QUESTLEVS)
	$(TOUCH) quest_levs.timestamp;

$(DUNGEON) :	dungeon.def $(MAKEDEFS) $(DGNCOMP)
	$(RUN) $(MAKEDEFS) -e		!dungeon.def -> dungeon.pdf
	$(RUN) $(DGNCOMP) dungeon.pdf	!dungeon.pdr -> dungeon

clean :
      - if f$search("*.*;-1").nes."" then  purge
      - if f$search("dungeon.pdf").nes."" then	delete dungeon.pdf;
      - if f$search("*.timestamp").nes."" then	delete $(MARKERS)

spotless :	clean
      - delete $(VARDAT)
      - if f$search("$(DUNGEON)").nes."" then  delete $(DUNGEON)
      - if f$search("*.lev").nes."" then  delete *.lev;
      - if f$search("$(X11TILES)").nes."" then  delete $(X11TILES)
      - if f$search("*.x%m").nes."" then  delete *.x%m;		!*.xbm,*.xpm
      - if f$search("nh*.dlb").nes."" then  delete nh*.dlb;
      - if f$search("nhdat.lst").nes."" then  delete nhdat.lst;