1# This is a complete MPW makefile for Nethack and all its associated files
2# Requires MPW C3.2�3 or later. Earlier versions will fail horribly because
3# they can't cope with /* /* */ comments
4#
5# For NetHack 3.1 Nov 1991
6#
7# by Michael� Hamel and Ross Brown 1991 : michael@otago.ac.nz
8#
9# Updated for Slash'EM 0.0.5-2 and later
10# Paul Hurtley, August 1999 and later
11
12#--------------------------------------------------------------------------
13#
14# BEFORE YOU BUILD FOR THE FIRST TIME
15
16#  Set this equate to the folder containing all the Slash'EM source folders
17Top   		= Vance:SlashEM:SlashEM-OS9:slashem-cvs:slashem:
18
19#  Choose your target processor. There are bugs in the 68K version, so I
20#  recommend you select 'PowerPC'
21Processor  = PowerPC
22#Processor	= 68K
23#Processor	= Fat
24
25#  Choose a Debug (ie, -sym) or non-Debug build
26#Debug = -sym
27Debug =
28
29#--------------------------------------------------------------------------
30#
31# Set up symbols for folders from the distribution
32Src			= {Top}Src:
33Util		= {Top}Util:
34Dat			= {Top}Dat:
35Doc			= {Top}Doc:
36Include		= {Top}Include:
37MacDir		= {Top}Sys:Mac:
38TtyDir		= {Top}Win:Tty:
39MacTty		= {Top}Sys:Mac:
40Share		= {Top}Sys:Share:
41
42# These folders are new
43ObjDir     = {Top}:Obj{Processor}{Debug}:		# "Temporary" stuff
44LibDir     = {Top}:Lib:							# "Temporary" stuff
45Preserve   = {Top}:Preserve:					# Generated items for source distribution
46Results	   = {Top}:Dungeon{Processor}{Debug}:	# Where the game goes
47
48# Override the settings in "{Include}"config.h
49# NHConfig = -d PORT_LEVEL='�".0�"'
50
51# Type and creator - note that we use "PREF" for all non-save files
52# currently. Since we will integrate the data files into the game
53# sooner or later, this doesn't matter much.
54FileType   = PREF
55SlashEMCreator = slEm
56RecoverCreator = slRc
57
58#
59#  Yacc/Lex ... if you got 'em, set the following to values appropriate for
60#  your tools.
61#
62YACC   = bison -y
63LEX    = flex
64YTabC  = y.tab.c
65YTabH  = y.tab.h
66LexYYC = lex.yy.c
67
68# Macintosh is an abstract target which in fact consists of:
69
70# The following files are in the binary distribution
71DataFiles 	=	"{Results}"Guidebook		�
72				"{Results}"MacHelp			�
73				"{Results}"License			�
74				"{Results}"Slash�'EM� Defaults   �
75				"{Results}"README
76
77# The following files are generated, but included in the source distribution anyway
78Preserved	=	"{Preserve}"date.h79				"{Preserve}"pm.h80				"{Preserve}"onames.h81				"{Preserve}"monstr.c82				"{Preserve}"vis_tab.h83				"{Preserve}"vis_tab.c84				"{Preserve}"filename.h85				"{Preserve}"lev_yacc.c86				"{Preserve}"lev_comp.h87				"{Preserve}"dgn_yacc.c88				"{Preserve}"dgn_comp.h
89
90Macintosh �   	Setup				�
91				MakeDefs.lnk92				{Preserved} 		�
93				LevComp.lnk94				DgnComp.lnk95				{DataFiles} 		�
96				Recover.lnk97				SlashEM.lnk
98
99Setup	�
100	If Not "`Exists -d "{Results}"`"
101		NewFolder "{Results}"
102	End
103	If Not "`Exists -d "{ObjDir}"`"
104		NewFolder "{ObjDir}"
105	End
106	If Not "`Exists -d "{Preserve}"`"
107		NewFolder "{Preserve}"
108	End
109	If Not "`Exists -d "{LibDir}"`"
110		NewFolder "{LibDir}"
111	End
112
113COptions = {NHConfig}					�
114		   -w 2 -w 3 -ansi relaxed -typecheck relaxed -align power
115
116#------------------- Files included as resources -----------------
117
118FileResources = �
119	"{Dat}"cmdhelp �
120	"{Dat}"help �
121	"{Dat}"hh �
122	"{Dat}"history �
123	"{Dat}"license �
124	"{MacDir}"MacHelp �
125	"{MacDir}"News �
126	"{Dat}"opthelp �
127	"{Dat}"wizhelp �
128	"{LibDir}"Quest.dat129	"{LibDir}"data �
130	"{LibDir}"dungeon �
131	"{LibDir}"options �
132	"{LibDir}"oracles �
133	"{LibDir}"rumors �
134	Levels
135
136#------------------- Slash'EM Sources -----------------
137
138SlashEMSrcs = �
139	"{Src}"allmain.c140	"{Src}"alloc.c141	"{Src}"apply.c142	"{Src}"artifact.c143	"{Src}"attrib.c144	"{Src}"ball.c145	"{Src}"bones.c146	"{Src}"borg.c147	"{Src}"botl.c148	"{Src}"cmd.c149	"{Src}"dbridge.c150	"{Src}"decl.c151	"{Src}"detect.c152	"{Src}"dig.c153	"{Src}"display.c154	"{Src}"dlb.c155	"{Src}"do.c156	"{Src}"do_name.c157	"{Src}"do_wear.c158	"{Src}"dog.c159	"{Src}"dogmove.c160	"{Src}"dokick.c161	"{Src}"dothrow.c162	"{Src}"drawing.c163	"{Src}"dungeon.c164	"{Src}"eat.c165	"{Src}"end.c166	"{Src}"engrave.c167	"{Src}"exper.c168	"{Src}"explode.c169	"{Src}"extralev.c170	"{Src}"files.c171	"{Src}"fountain.c172	"{Src}"gypsy.c173	"{Src}"hack.c174	"{Src}"hacklib.c175	"{Src}"invent.c176	"{Src}"light.c177	"{Src}"lock.c178	"{Src}"mail.c179	"{Src}"makemon.c180	"{Src}"mapglyph.c181	"{Src}"mcastu.c182	"{Src}"mhitm.c183	"{Src}"mhitu.c184	"{Src}"minion.c185	"{Src}"mklev.c186	"{Src}"mkmap.c187	"{Src}"mkmaze.c188	"{Src}"mkobj.c189	"{Src}"mkroom.c190	"{Src}"mon.c191	"{Src}"mondata.c192	"{Src}"monmove.c193	"{Src}"monst.c194	"{Preserve}"monstr.c195	"{Src}"mplayer.c196	"{Src}"mthrowu.c197	"{Src}"muse.c198	"{Src}"music.c199	"{Src}"o_init.c200	"{Src}"objects.c201	"{Src}"objnam.c202	"{Src}"options.c203	"{Src}"pager.c204	"{Src}"pickup.c205	"{Src}"pline.c206	"{Src}"polyself.c207	"{Src}"potion.c208	"{Src}"pray.c209	"{Src}"priest.c210	"{Src}"quest.c211	"{Src}"questpgr.c212	"{Src}"read.c213	"{Src}"rect.c214	"{Src}"region.c215	"{Src}"restore.c216	"{Src}"rip.c217	"{Src}"rnd.c218	"{Src}"role.c219	"{Src}"rumors.c220	"{Src}"save.c221	"{Src}"shk.c222	"{Src}"shknam.c223	"{Src}"sit.c224	"{Src}"sounds.c225	"{Src}"sp_lev.c226	"{Src}"spell.c227	"{Src}"steal.c228	"{Src}"steed.c229	"{Src}"tech.c230	"{Src}"teleport.c231	"{Src}"timeout.c232	"{Src}"topten.c233	"{Src}"track.c234	"{Src}"trap.c235	"{Src}"u_init.c236	"{Src}"uhitm.c237	"{Src}"vault.c238	"{Src}"version.c239	"{Preserve}"vis_tab.c240	"{Src}"vision.c241	"{Src}"weapon.c242	"{Src}"were.c243	"{Src}"wield.c244	"{Src}"windows.c245	"{Src}"wizard.c246	"{Src}"worm.c247	"{Src}"worn.c248	"{Src}"write.c249	"{Src}"zap.c250251	"{MacDir}"dprintf.c252	"{MacDir}"maccurs.c253	"{MacDir}"macerrs.c254	"{MacDir}"macfile.c255	"{MacDir}"macmain.c256	"{MacDir}"macmenu.c257	"{MacDir}"macsnd.c258	"{MacDir}"mactopl.c259	"{MacDir}"mactty.c260	"{MacDir}"macunix.c261	"{MacDir}"macwin.c262	"{MacDir}"mgetline.c263	"{MacDir}"mmodal.c264	"{MacDir}"mttymain.c265266	"{Share}"random.c267268	"{TtyDir}"getline.c269	"{TtyDir}"topl.c270	"{TtyDir}"wintty.c
271
272SlashEMRsrcs = 	�
273	"{MacDir}"NHrsrc.r274	"{MacDir}"NHsound.r275	"{MacDir}"Files.r276	"{LibDir}"Levels.r
277
278# -------- Build the dungeon compiler, as an MPW tool ---------------
279
280DgnCompSrcs = 				�
281	"{Preserve}"dgn_lex.c282	"{Util}"dgn_main.c283	"{Preserve}"dgn_yacc.c284	"{Src}"alloc.c285	"{Util}"panic.c
286
287"{ObjDir}"DgnComp.make	�	 "{Preserve}"dgn_lex.c "{Preserve}"dgn_yacc.c
288	CreateMake "{ObjDir}"DgnComp {DgnCompSrcs} -tool -powerpc -objdir "{ObjDir}" �
289		-i "{Preserve}" -i "{ObjDir}" -i {Include} -ppccoptions "{COptions}" {Debug} -depends
290
291"{ObjDir}"DgnComp DgnComp.lnk � "{ObjDir}"DgnComp.make
292	BuildProgram "{ObjDir}"DgnComp
293
294"{Preserve}"dgn_comp.h "{Preserve}"dgn_yacc.c	�  "{Util}"dgn_comp.y
295	{YACC} -d "{Util}"dgn_comp.y
296	Move -y "{YTabC}" "{Preserve}"dgn_yacc.c
297	Move -y "{YTabH}" "{Preserve}"dgn_comp.h
298
299{Preserve}dgn_lex.c	�  {Util}dgn_comp.l
300	{LEX} {Util}dgn_comp.l
301	Move -y {LexYYC} {Preserve}dgn_lex.c
302
303# -------- Build the special-level compiler, as an MPW tool ---------------
304
305LevCompSrcs= "{Src}"monst.c306		 "{Src}"objects.c307		 "{Src}"drawing.c308		 "{Src}"alloc.c309		 "{Util}"panic.c310		 "{Preserve}"lev_lex.c311		 "{Preserve}"lev_yacc.c312		 "{MacDir}"macfile.c313		 "{MacDir}"macerrs.c314		 "{Src}"files.c315		 "{Src}"decl.c316		 "{Util}"lev_main.c
317
318"{ObjDir}"LevComp.make	�	 "{Preserve}"lev_lex.c "{Preserve}"lev_yacc.c
319	CreateMake "{ObjDir}"LevComp {LevCompSrcs} -tool -powerpc -objdir "{ObjDir}" �
320		-i "{Preserve}" -i "{ObjDir}" -i {Include} -ppccoptions "{COptions}" {Debug} -depends
321
322"{ObjDir}"LevComp LevComp.lnk � "{ObjDir}"LevComp.make
323	BuildProgram "{ObjDir}"LevComp
324
325"{Preserve}"lev_comp.h "{Preserve}"lev_yacc.c	�  "{Util}"lev_comp.y
326	{YACC} -d "{Util}"lev_comp.y
327	Move -y "{YTabH}" "{Preserve}"lev_comp.h
328	Move -y "{YTabC}" "{Preserve}"lev_yacc.c
329
330"{Preserve}"lev_lex.c	�  {Util}lev_comp.l
331	{LEX} {Util}lev_comp.l
332	Move -y {LexYYC} {Preserve}lev_lex.c
333
334# -------- Create list of actual levels ---------------
335
336"{LibDir}"Levels.r � Levels
337	Set Pwd `Directory`
338	Directory "{LibDir}"
339	Echo "" > "{LibDir}"Levels.r
340	Set index 1200
341	For file in �.lev
342		Echo "read 'File' ({index},�"{file}�") �"::lib:{file}�";" >> "{LibDir}"Levels.r
343		Set index `Evaluate {index} + 1`
344	End
345	Echo "" >> "{LibDir}"Levels.list
346	Directory "{Pwd}"
347
348# -------- Build "{ObjDir}"MakeDefs, as an MPW tool ---------------
349
350MakeDefsSrcs= "{Src}"objects.c351			  "{Src}"monst.c352			  "{Util}"MakeDefs.c
353
354"{ObjDir}"MakeDefs.make355	CreateMake "{ObjDir}"MakeDefs {MakeDefsSrcs} -tool -powerpc -objdir "{ObjDir}" �
356		-i "{Preserve}" -i "{ObjDir}" -i {Include} -ppccoptions "{COptions}" {Debug} -depends
357
358"{ObjDir}"MakeDefs MakeDefs.lnk � "{ObjDir}"MakeDefs.make
359	BuildProgram "{ObjDir}"MakeDefs
360
361# ------------ If "{ObjDir}"MakeDefs changes we need to rebuild some include files -----------
362
363"{Preserve}"filename.h 	� 	"{ObjDir}"MakeDefs
364	Set Pwd `Directory`
365	Directory "{Top}"
366	"{ObjDir}"MakeDefs -f
367	Move -y "{Include}"filename.h "{Preserve}"filename.h
368	Directory "{Pwd}"
369
370"{Preserve}"date.h 	� 	"{LibDir}"Options "{ObjDir}"MakeDefs
371	Move -y "{Include}"date.h "{Preserve}"date.h
372
373"{LibDir}"Options	�	$OutOfDate "{ObjDir}"MakeDefs
374	Set Pwd `Directory`
375	Directory "{Top}"
376	"{ObjDir}"MakeDefs -v
377	Directory "{Pwd}"
378
379"{Preserve}"onames.h �	"{ObjDir}"MakeDefs
380	Set Pwd `Directory`
381	Directory "{Top}"
382	"{ObjDir}"MakeDefs -o
383	Move -y "{Include}"onames.h "{Preserve}"onames.h
384	Directory "{Pwd}"
385
386"{Preserve}"pm.h 	�	"{ObjDir}"MakeDefs
387	Set Pwd `Directory`
388	Directory "{Top}"
389	"{ObjDir}"MakeDefs -p
390	Move -y "{Include}"pm.h "{Preserve}"pm.h
391	Directory "{Pwd}"
392
393"{Preserve}"vis_tab.c	�	"{Preserve}"vis_tab.h
394	Move -y "{Src}"vis_tab.c "{Preserve}"vis_tab.c
395
396"{Preserve}"vis_tab.h �	"{ObjDir}"MakeDefs
397	Set Pwd `Directory`
398	Directory "{Top}"
399	"{ObjDir}"MakeDefs -z
400	Move -y "{Include}"vis_tab.h "{Preserve}"vis_tab.h
401	Directory "{Pwd}"
402
403"{ObjDir}"Dungeon.pdf  � "{Dat}"Dungeon.def "{ObjDir}"MakeDefs
404	Set Pwd `Directory`
405	Directory "{Top}"
406	"{ObjDir}"MakeDefs -e
407	Move -y "{Dat}"Dungeon.pdf "{ObjDir}"Dungeon.pdf
408	Directory "{Pwd}"
409
410"{Preserve}"monstr.c � "{ObjDir}"MakeDefs
411	Set Pwd `Directory`
412	Directory "{Top}"
413	"{ObjDir}"MakeDefs -m
414	Move -y "{Src}"monstr.c "{Preserve}"monstr.c
415	Directory "{Pwd}"
416
417#---------------- Data files -------------------
418
419Levels � "{LibDir}"Levels.list "{MacDir}"Levels.make
420		Make -f "{MacDir}"Levels.make Levels -d Dat="{Dat}" -d ObjDir="{ObjDir}" -d LibDir="{LibDir}" > "{ObjDir}"Levels.makeout
421		"{ObjDir}"Levels.makeout
422
423"{LibDir}"Data data � "{Dat}"Data.base "{ObjDir}"MakeDefs
424		Set Pwd `Directory`
425		Directory "{Top}"
426	    "{ObjDir}"MakeDefs -d
427		SetFile -t "{FileType}" -c "{SlashEMCreator}" "{LibDir}"Data
428		Directory "{Pwd}"
429
430"{LibDir}"Rumors � "{Dat}"Rumors.tru "{Dat}"Rumors.fal "{ObjDir}"MakeDefs
431		Set Pwd `Directory`
432		Directory "{Top}"
433	    "{ObjDir}"MakeDefs -r
434		SetFile -t "{FileType}" -c "{SlashEMCreator}" "{LibDir}"Rumors
435		Directory "{Pwd}"
436
437"{LibDir}"Oracles � "{Dat}"Oracles.txt "{ObjDir}"MakeDefs
438		Set Pwd `Directory`
439		Directory "{Top}"
440	    "{ObjDir}"MakeDefs -h
441		SetFile -t "{FileType}" -c "{SlashEMCreator}" "{LibDir}"Oracles
442		Directory "{Pwd}"
443
444"{Results}"Slash�'EM� Defaults  �	"{MacDir}"NHDeflts
445		Duplicate -y "{MacDir}"NHDeflts "{Results}"Slash�'EM� Defaults
446		SetFile -c "ttxt" "{Results}"Slash�'EM� Defaults
447
448"{Results}"Guidebook  �	"{Doc}"Guidebook.txt
449		Duplicate -y "{Doc}"Guidebook.txt "{Results}"Guidebook
450		SetFile -c "ttxt" -t "ttro" "{Results}"Guidebook
451
452"{Results}"MacHelp  �	"{MacDir}"MacHelp
453		Duplicate -y "{MacDir}"MacHelp "{Results}"MacHelp
454		SetFile -c "ttxt" -t "ttro" "{Results}"MacHelp
455
456"{Results}"README  �	"{MacDir}"README.txt
457		Duplicate -y "{MacDir}"README.txt "{Results}"README
458		SetFile -c "ttxt" -t "ttro" "{Results}"README
459
460"{ObjDir}"hh  �	"{Dat}"hh
461		Duplicate -y "{Dat}"hh "{ObjDir}"hh
462
463"{ObjDir}"History  �	"{Dat}"History
464		Duplicate -y "{Dat}"History "{ObjDir}"History
465
466"{Results}"License  �	"{Dat}"License
467		Duplicate -y "{Dat}"License "{Results}"License
468		SetFile -c "ttxt" -t "ttro" "{Results}"License
469
470"{ObjDir}"Help  �	"{Dat}"Help
471		Duplicate -y "{Dat}"Help "{ObjDir}"Help
472
473"{ObjDir}"Wizhelp  �	"{Dat}"Wizhelp
474		Duplicate -y "{Dat}"Wizhelp "{ObjDir}"Wizhelp
475
476"{ObjDir}"Opthelp  �	"{Dat}"Opthelp
477		Duplicate -y "{Dat}"Opthelp "{ObjDir}"Opthelp
478
479"{ObjDir}"Machelp  �	"{MacDir}"Machelp
480		Duplicate -y "{MacDir}"Machelp "{ObjDir}"Machelp
481
482"{ObjDir}"News	�	"{MacDir}"News
483		Duplicate -y "{MacDir}"News "{ObjDir}"News
484
485"{LibDir}"Dungeon	� "{ObjDir}"Dungeon.pdf "{ObjDir}"DgnComp
486		"{ObjDir}"DgnComp "{ObjDir}"dungeon.pdf
487		Move -y "{ObjDir}"Dungeon "{LibDir}"
488		SetFile -t "{FileType}" -c "{SlashEMCreator}" "{LibDir}"Dungeon
489
490"{LibDir}"Quest.dat	� "{Dat}"Quest.txt "{ObjDir}"MakeDefs
491		Set Pwd `Directory`
492		Directory "{Top}"
493	    "{ObjDir}"MakeDefs -q
494		SetFile -t "{FileType}" -c "{SlashEMCreator}" "{LibDir}"Quest.dat
495		Directory "{Pwd}"
496
497#---------------- The Recover application -------------------
498
499RecoverSrcs = "{MacDir}"MRecover.c
500
501RecoverRsrcs = �
502	"{MacDir}"MFiles.r503	"{MacDir}"MRecover.r
504
505"{ObjDir}"Recover.make506		CreateMake "{ObjDir}"Recover {RecoverSrcs} -{Processor} �
507			-i "{Preserve}" -i "{ObjDir}" -i {Include} �
508			-objdir "{ObjDir}" {Debug} -depends -c {RecoverCreator} �
509			-ppccoptions "{COptions}" �
510			-coptions "{COptions}" -model far �
511				"{SharedLibraries}"AppearanceLib �
512				"{SharedLibraries}"ATSUnicodeLib �
513				"{SharedLibraries}"ContextualMenu �
514				"{SharedLibraries}"ControlsLib �
515				"{SharedLibraries}"DialogsLib �
516				"{SharedLibraries}"FindByContent �
517				"{SharedLibraries}"FontManager �
518				"{SharedLibraries}"IconServicesLib �
519				"{SharedLibraries}"MenusLib �
520				"{SharedLibraries}"NavigationLib �
521				"{SharedLibraries}"UnicodeUtilitiesLib �
522				"{SharedLibraries}"WindowsLib  �
523				"{SharedLibraries}"TextCommon �
524				"{SharedLibraries}"TextEncodingConverter �
525				"{SharedLibraries}"UnicodeConverter
526
527"{Results}"Recover Recover.lnk �� "{ObjDir}"Recover.make
528		BuildProgram "{ObjDir}"Recover
529		Rez Types.r SysTypes.r {RecoverRsrcs} -o "{ObjDir}"Recover -c {RecoverCreator} �
530			-i "{MacDir}" -i "{ObjDir}"  -i "{Include}" -i "{Preserve}" -s "{Top}" -append
531		SetFile -a B "{ObjDir}"Recover
532		Move -y "{ObjDir}"Recover "{Results}"Recover
533
534#---------------- The Slash'EM application -------------------
535
536"{ObjDir}"SlashEM.make537		CreateMake "{ObjDir}"SlashEM {SlashEMSrcs} -{Processor} �
538			-i "{Preserve}" -i "{ObjDir}" -i {Include} �
539			-objdir "{ObjDir}" {Debug} -depends -c {SlashEMCreator} �
540			-ppccoptions "{COptions}" �
541			-coptions "{COptions}" -model far �
542				"{SharedLibraries}"AppearanceLib �
543				"{SharedLibraries}"ATSUnicodeLib �
544				"{SharedLibraries}"ContextualMenu �
545				"{SharedLibraries}"ControlsLib �
546				"{SharedLibraries}"DialogsLib �
547				"{SharedLibraries}"FindByContent �
548				"{SharedLibraries}"FontManager �
549				"{SharedLibraries}"IconServicesLib �
550				"{SharedLibraries}"MenusLib �
551				"{SharedLibraries}"NavigationLib �
552				"{SharedLibraries}"UnicodeUtilitiesLib �
553				"{SharedLibraries}"WindowsLib  �
554				"{SharedLibraries}"TextCommon �
555				"{SharedLibraries}"TextEncodingConverter �
556				"{SharedLibraries}"UnicodeConverter
557
558"{Results}"Slash�'EM SlashEM.lnk � "{ObjDir}"SlashEM.make {SlashEMRsrcs} {FileResources}
559		BuildProgram "{ObjDir}"SlashEM
560		Rez Types.r SysTypes.r {SlashEMRsrcs} -o "{ObjDir}"SlashEM -c {SlashEMCreator} �
561			-i "{MacDir}" -i "{ObjDir}"  -i "{Include}" -i "{Preserve}" -s "{Top}" -append
562		SetFile -a B "{ObjDir}"SlashEM
563		Move -y "{ObjDir}"SlashEM "{Results}"Slash�'EM
564
565#---------------- Dependencies -------------------
566
567Dependencies �	Setup					�
568				"{LibDir}"Levels.list569				"{ObjDir}"MakeDefs.make570				{Preserved}				�
571				"{ObjDir}"LevComp.make572				"{ObjDir}"DgnComp.make573				"{ObjDir}"Recover.make574				"{ObjDir}"SlashEM.make
575		Make -f "{ObjDir}"MakeDefs.make Dependencies > "{ObjDir}"MakeDefs.makeout
576		"{ObjDir}"MakeDefs.makeout
577		Make -f "{ObjDir}"LevComp.make Dependencies > "{ObjDir}"LevComp.makeout
578		"{ObjDir}"LevComp.makeout
579		Make -f "{ObjDir}"DgnComp.make Dependencies > "{ObjDir}"DgnComp.makeout
580		"{ObjDir}"DgnComp.makeout
581		Make -f "{ObjDir}"Recover.make Dependencies > "{ObjDir}"Recover.makeout
582		"{ObjDir}"Recover.makeout
583		Make -f "{ObjDir}"SlashEM.make Dependencies > "{ObjDir}"SlashEM.makeout
584		"{ObjDir}"SlashEM.makeout
585
586"{LibDir}"Levels.list587		Echo 'LevelList � �' > "{LibDir}"Levels.list
588		For file in "{Top}"dat:�.des
589			StreamEdit "{file}" -d -e '/MAZE:[ ]*�"(�)�1�"/||/LEVEL:[ ]*�"(�)�1�"/ Change "    �"{LibDir}�""�1".lev ��";Print;Exit' >> "{LibDir}"Levels.list
590		End
591		Echo "" >> "{LibDir}"Levels.list
592
593#---------------- Clean -------------------
594
595Clean	�
596		set exit 0
597		Delete -i -y "{Results}"
598		Delete -i -y "{ObjDir}
599		Delete -i -y "{LibDir}
600		Delete -i -y Macintosh.makeout
601		Delete -i -y "{Top}"�.rej
602		Delete -i -y "{Top}"�.orig
603		Delete -i -y "{Top}"�:�.rej
604		Delete -i -y "{Top}"�:�.orig
605		Delete -i -y "{Top}"�:�:�.rej
606		Delete -i -y "{Top}"�:�:�.orig
607		Delete -i -y "{Top}"�:�:�:�.rej
608		Delete -i -y "{Top}"�:�:�:�.orig
609		Move Macintosh.make "{MacDir}"Macintosh.make
610		set exit 1
611
612#---------------- Spotless -------------------
613
614Spotless	�	Clean
615		set exit 0
616		Delete -i -y "{Preserve}"
617		set exit 1
618
619#---------------- Pack -------------------
620
621Pack	�	"{ObjDir}"NHrsrc.rsrc "{ObjDir}"NHsound.rsrc "{ObjDir}"MRecover.rsrc
622		DeRez "{ObjDir}"NHrsrc.rsrc Types.r SysTypes.r > "{MacDir}"NHrsrc.r
623		DeRez "{ObjDir}"NHsound.rsrc Types.r SysTypes.r > "{MacDir}"NHsound.r
624		DeRez "{ObjDir}"MRecover.rsrc Types.r SysTypes.r > "{MacDir}"MRecover.r
625
626#---------------- Unpack -------------------
627
628Unpack	�	"{ObjDir}"NHrsrc.rsrc "{ObjDir}"NHsound.rsrc "{ObjDir}"MRecover.rsrc
629
630"{ObjDir}"NHrsrc.rsrc � "{MacDir}"NHrsrc.r
631		Rez Types.r SysTypes.r "{MacDir}"NHrsrc.r -o "{ObjDir}"NHrsrc.rsrc632			-i "{Include}" -i "{Preserve}"
633
634"{ObjDir}"NHsound.rsrc � "{MacDir}"NHsound.r
635		Rez Types.r SysTypes.r "{MacDir}"NHsound.r -o "{ObjDir}"NHsound.rsrc
636
637"{ObjDir}"MRecover.rsrc	�	"{MacDir}"MRecover.r
638		Rez Types.r SysTypes.r "{MacDir}"MRecover.r -o "{ObjDir}"MRecover.rsrc
639
640