################################################################
#
# $Id:$
#
# $Log:$
#
CC=gcc

#CFLAGS=-g -Wall -DNORMALUNIX -DLINUX # -DUSEASM
#CFLAGS=-O0 -m68000 -DNORMALUNIX -D__BIG_ENDIAN__
CFLAGS=-DNORMALUNIX -O
#-O -m68020 -fstrength-reduce -fomit-frame-pointer 
#GCC_OPTION=LFOAMP
#-fstrength-reduce -fomit-frame-pointer 
# crashes with w_wad -finline-functions
#LDFLAGS=-L/usr/X11R6/lib
#LIBS=-lXext -lX11 -lnsl -lm
LDFLAGS=
#LIBS=%LIB%\gnulib.a %LIB%\clib.L %LIB%\floateml.L %LIB%\IOCSLIB.L %LIB%\doslib.L
#LIBS=%LIB%\clib.L %LIB%\floateml.L %LIB%\IOCSLIB.L %LIB%\doslib.L
LIBS=a:/usr/lib/libiocs.a a:/usr/lib/libdos.a

# subdirectory for objects
O=x68k

# not too sophisticated dependency
LIB1=				\
		$(O)/doomdef.o		\
		$(O)/doomstat.o		\
		$(O)/dstrings.o		\
		$(O)/i_system.o		\
		$(O)/i_sound.o		\
		$(O)/i_video.o		\
		$(O)/i_net.o			\
		$(O)/tables.o			\
		$(O)/f_finale.o		\
		$(O)/f_wipe.o 		\
		$(O)/d_main.o			\
		$(O)/d_net.o			\
		$(O)/d_items.o		\
		$(O)/g_game.o	\
		$(O)/m_menu.o			\
		$(O)/m_misc.o

LIB2=		$(O)/m_argv.o	\
		$(O)/m_bbox.o			\
		$(O)/m_fixed.o		\
		$(O)/m_swap.o			\
		$(O)/m_cheat.o		\
		$(O)/m_random.o		\
		$(O)/am_map.o			\
		$(O)/p_ceilng.o		\
		$(O)/p_doors.o		\
		$(O)/p_enemy.o	\
		$(O)/p_floor.o		\
		$(O)/p_inter.o		\
		$(O)/p_lights.o		\
		$(O)/p_map.o			\
		$(O)/p_maputl.o		\
		$(O)/p_plats.o

LIB3=		$(O)/p_pspr.o			\
		$(O)/p_setup.o		\
		$(O)/p_sight.o		\
		$(O)/p_spec.o			\
		$(O)/p_switch.o		\
		$(O)/p_mobj.o			\
		$(O)/p_telept.o		\
		$(O)/p_tick.o			\
		$(O)/p_saveg.o		\
		$(O)/p_user.o			\
		$(O)/r_bsp.o			\
		$(O)/r_data.o			\
		$(O)/r_draw.o			\
		$(O)/r_main.o			\
		$(O)/r_plane.o		\
		$(O)/r_segs.o

LIB4=		$(O)/r_sky.o			\
		$(O)/r_things.o		\
		$(O)/w_wad.o			\
		$(O)/wi_stuff.o	\
		$(O)/v_video.o		\
		$(O)/st_lib.o			\
		$(O)/st_stuff.o		\
		$(O)/hu_stuff.o		\
		$(O)/hu_lib.o			\
		$(O)/s_sound.o		\
		$(O)/z_zone.o			\
		$(O)/info.o				\
		$(O)/sounds.o	\
		$(O)/missing.o

LIBOS=		$(O)/mfp.o	\
		$(O)/crtc.o	\
		$(O)/serial.o	\
		$(O)/vc.o	\
		$(O)/tvram.o


all:	$(O)/dosdoom


purge-libs:
	del /F $(O)\lib1.a
	del /F $(O)\lib2.a


clean:
	del x68k\*.o
	del x68k\*.a
	del doom.x

$(O)/lib1.a:	$(LIB1)
	ar /b $(O)/lib1.a $(LIB1)

$(O)/lib2.a:	$(LIB2)
	ar /b $(O)/lib2.a $(LIB2)

$(O)/lib3.a:	$(LIB3)
	ar /b $(O)/lib3.a $(LIB3)

$(O)/lib4.a:	$(LIB4)
	ar /b $(O)/lib4.a $(LIB4)

$(O)/libOS.a:	$(LIBOS)
	ar /b $(O)/libOS.a $(LIBOS)

$(O)/w_wadxx.o:	w_wad.c
	gcc -DNORMALUNIX -O0 -c w_wad.c -o $(O)/w_wad.o




$(O)/dosdoom:	$(O)/lib1.a $(O)/lib2.a $(O)/lib3.a $(O)/lib4.a $(O)/libOS.a $(O)/i_main.o
	$(CC) $(LDFLAGS) $(O)/i_main.o $(O)/lib1.a $(O)/lib2.a $(O)/lib3.a $(O)/lib4.a $(O)/libOS.a $(LIBS) -o doom.x
#	@echo "you need to manually link :("
#	$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) $(O)/i_main.o \
#	-o $(O)/dosdoom $(LIBS)

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


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

#############################################################
#
#############################################################