OBJ = am_map.obj doomdef.obj doomgeneric.obj doomstat.obj \
dstrings.obj dummy.obj d_event.obj d_items.obj d_iwad.obj \
d_loop.obj d_main.obj d_mode.obj d_net.obj f_finale.obj \
f_wipe.obj gusconf.obj g_game.obj hu_lib.obj hu_stuff.obj \
icon.obj info.obj i_cdmus.obj i_endoom.obj i_input.obj \
i_joystick.obj i_scale.obj i_sound.obj i_system.obj i_timer.obj \
memio.obj mus2mid.obj m_argv.obj m_bbox.obj \
m_cheat.obj m_config.obj m_controls.obj m_fixed.obj m_menu.obj \
m_misc.obj m_random.obj p_ceilng.obj p_doors.obj p_enemy.obj \
p_floor.obj p_inter.obj p_lights.obj p_map.obj p_maputl.obj \
p_mobj.obj p_plats.obj p_pspr.obj p_saveg.obj p_setup.obj \
p_sight.obj p_spec.obj p_switch.obj p_telept.obj p_tick.obj \
p_user.obj r_bsp.obj r_data.obj r_draw.obj r_main.obj \
r_plane.obj r_segs.obj r_sky.obj r_things.obj sha1.obj \
sounds.obj statdump.obj st_lib.obj st_stuff.obj s_sound.obj \
tables.obj v_video.obj wi_stuff.obj w_checksum.obj w_file.obj \
w_file_stdc.obj w_main.obj w_wad.obj z_zone.obj \
i_video.obj doom1632.obj	snprintf.obj strdup.obj

CC=gcc
CC1=cc1-258
AS=ax386
CPP=cpp
LIBS=libgcc1.lib LIBC.LIB gdi32.lib user32.lib kernel32.lib advapi32.lib

doom.exe: $(OBJ)
	link /NODEFAULTLIB:libc.lib /NODEFAULTLIB:OLDNAMES.LIB  -out:doom.exe $(OBJ) -entry:mainCRTStartup $(LIBS)

CFLAGS=	-O2 -m486
CPPFLAGS= -lang-c-c++-comments -nostdinc -I/xenixnt/h -Ivc2003 -D_GNU_140

doom1632.obj: doom1632.c
	$(CPP) $(CPPFLAGS) -Iwatcom2 doom1632.c doom1632.i
	$(CC1) doom1632.i -quiet $(CFLAGS) -o doom1632.S
	$(AS) doom1632.S -o doom1632.obj	

m_fixed.obj: m_fixed_i386.ss
	copy /Y m_fixed_i386.ss m_fixed_i386.s
	$(AS) m_fixed_i386.s -o m_fixed.obj

%.obj: %.c
	$(CPP) $(CPPFLAGS) $< $*.i
	$(CC1) $*.i -quiet $(CFLAGS) -o $*.S
	$(AS) $*.S -o $*.obj

clean:
	del $(OBJ) *.i *.S doom.exe

dclean:
	del $(OBJ) *.i *.S
