CC =  gcc -m68000 -msoft-float -O
OBJCOPY = #human68k-objcopy
OBJDUMP = #human68k-objdump
CFLAGS =
O = dos
LDFLAGS =
LIBS =


OBJS1 =  $(O)/alloc.o $(O)/apply.o $(O)/bones.o $(O)/cmd.o $(O)/decl.o $(O)/do.o $(O)/dog.o $(O)/dogmove.o $(O)/dothrow.o $(O)/do_name.o $(O)/do_wear.o $(O)/eat.o
OBJS2 =  $(O)/end.o $(O)/engrave.o $(O)/fight.o $(O)/fountain.o $(O)/hack.o $(O)/human68k.o $(O)/invent.o $(O)/lev.o $(O)/makemon.o $(O)/mhitu.o $(O)/mklev.o
OBJS3 =  $(O)/mkmaze.o $(O)/mkobj.o $(O)/mkshop.o $(O)/mon.o $(O)/monmove.o $(O)/monst.o $(O)/objnam.o $(O)/options.o $(O)/o_init.o $(O)/pager.o $(O)/missing.o
OBJS4 =  $(O)/pctty.o $(O)/pcunix.o $(O)/polyself.o $(O)/potion.o $(O)/pray.o $(O)/pri.o $(O)/prisym.o $(O)/read.o $(O)/rip.o $(O)/rnd.o $(O)/rumors.o $(O)/save.o
OBJS5 =  $(O)/search.o $(O)/shk.o $(O)/shknam.o $(O)/sit.o $(O)/spell.o $(O)/steal.o $(O)/termcap.o $(O)/timeout.o $(O)/topl.o $(O)/topten.o $(O)/track.o
OBJS6 =  $(O)/trap.o $(O)/u_init.o $(O)/vault.o $(O)/version.o $(O)/wield.o $(O)/wizard.o $(O)/worm.o $(O)/worn.o $(O)/write.o $(O)/zap.o $(O)/uue.o

all: $(O)\nethack

$(O)\lib1.a:	$(OBJS1)
	run68 ar /b $(O)\lib1.a $(OBJS1)
$(O)\lib2.a:	$(OBJS2)
	run68 ar /b $(O)\lib2.a $(OBJS2)
$(O)\lib3.a:	$(OBJS3)
	run68 ar /b $(O)\lib3.a $(OBJS3)
$(O)\lib4.a:	$(OBJS4)
	run68 ar /b $(O)\lib4.a $(OBJS4)
$(O)\lib5.a:	$(OBJS5)
	run68 ar /b $(O)\lib5.a $(OBJS5)
$(O)\lib6.a:	$(OBJS6)
	run68 ar /b $(O)\lib6.a $(OBJS6)

LIBS = $(O)\lib1.a $(O)\lib2.a $(O)\lib3.a $(O)\lib4.a $(O)\lib5.a $(O)\lib6.a


$(O)\nethack:	$(OBJS) $(LIBS) $(O)/pcmain.o
	$(CC) $(CFLAGS) $(O)/pcmain.o $(O)\lib1.a $(O)\lib2.a $(O)\lib3.a $(O)\lib4.a $(O)\lib5.a $(O)\lib6.a -o nethack \x68000\lib\libiocs.a \x68000\lib\libdos.a

test\nethack.x:	$(O)/nethack
	$(OBJCOPY) -v -O xfile $(O)/nethack test/nethack.x
	$(OBJDUMP) -x test/nethack.x > test/nethack.objdump.txt
#

clean:
	del $(O)\*.o
	del $(O)\*.a
	del $(O)\nethack
	del test\nethack.x
	rd /q /s test

deploy:
	rd /q /s test
	md test
	md test\bones
	md test\save
	copy help test
	copy hh test
	copy rumors test
	copy data test
	copy perm test
	copy nethack.x test

run:	
	cd test
	ansicon -i run68 nethack.x
	ansicon -u
	cd ..



$(O)/%.o:	%.c
	$(CC) $(CFLAGS) -c $< -o $@

#