CFLAGS = -Wall -O3 -m486
LFLAGS = -lpc -lc -lm
CC = gcc
LIBS = sb_lib.a

.c.o:
	$(CC) $(CFLAGS) -c $<

OBJS    = \
	omega.o pylon.o object.o movement.o prim.o pcx.o fx.o \
	text.o keys.o clipping.o util.o serial.o collide.o \
	project.o timer.o ai_util.o ai.o motor.o states.o fli.o radar.o \
	tanks.o base.o packets.o modem.o jonmouse.o hud.o joy.o config.o \
	level.o jonsb.o ai_move.o events.o explode.o do_state.o textmenu.o \
	main.o energy.o user.o path.o voices.o commands.o input.o menu.o \
        joncd.o stats.o dosbuff.o jonipx.o gameipx.o

prog :  $(OBJS)
	gcc -c -Wall serial.c
	$(CC) -o omega $(OBJS) $(LIBS) $(LFLAGS)

omega.o: omega.c types.h pylon.h object.h movement.h prim.h pcx.h fx.h \
	 text.h keys.h clipping.h util.h serial.h collide.h \
	 project.h timer.h ai_util.h ai.h motor.h states.h fli.h radar.h \
	 tanks.h base.h packets.h modem.h jonmouse.h hud.h joy.h config.h \
	 level.h jonsb.h events.h explode.h do_state.h textmenu.h main.h \
         energy.h user.h path.h voices.h commands.h input.h menu.h joncd.h \
         stats.h dosbuff.h jonipx.h gameipx.h


dosbuff.o: dosbuff.c dosbuff.h types.h
gameipx.o: gameipx.c gameipx.h jonipx.h types.h
jonipx.o: jonipx.c jonipx.h dosbuff.h types.h
stats.o: stats.c stats.h types.h
joncd.o: joncd.c joncd.h
menu.o : menu.c menu.h prim.h types.h
input.o: input.c input.h types.h timer.h keys.h joy.h
commands.o: commands.h commands.c types.h ai.h voices.h
voices.o: types.h voices.c voices.h ai.h
textmenu.o : textmenu.c textmenu.h types.h
main.o : main.c main.h types.h joy.h stats.h ai_util.h ai.h
energy.o : energy.c energy.h types.h ai_util.h
user.o : user.c user.h types.h menu.h
pylon.o: pylon.c pylon.h types.h util.h ai_util.h
object.o: object.c object.h types.h util.h
movement.o: movement.c movement.h types.h util.h
prim.o: prim.c prim.h types.h pcx.h util.h
pcx.o: pcx.c pcx.h types.h prim.h
fx.o: fx.c fx.h types.h
text.o: text.c text.h types.h
keys.o: keys.c keys.h types.h util.h
clipping.o: clipping.c clipping.h types.h util.h
util.o: util.c util.h types.h
serial.o: serial.c serial.h packets.h types.h
collide.o: collide.c collide.h types.h util.h stats.h ai_util.h ai.h
project.o: project.c project.h types.h stats.h
timer.o: timer.c timer.h types.h
ai_util.o: ai_util.c ai_util.h ai.h types.h
ai.o: ai.c ai.h ai_util.h motor.h states.h types.h util.h ai_move.h events.h path.h
motor.o: motor.c motor.h types.h path.h
events.o: events.c events.h types.h ai.h path.h ai_util.h
states.o: states.c states.h types.h ai.h path.h
do_state.o: do_state.c do_state.h types.h ai.h states.h events.h path.h
path.o: path.c path.h ai.h types.h
fli.o: fli.c fli.h prim.h pcx.h types.h
radar.o: radar.c radar.h types.h util.h
tanks.o: tanks.c tanks.h types.h util.h
base.o: base.c base.h types.h util.h
packets.o: packets.c packets.h types.h util.h ai.h
modem.o: modem.c modem.h serial.h types.h
jonmouse.o: jonmouse.c jonmouse.h types.h
hud.o: hud.c hud.h types.h util.h
joy.o: joy.c joy.h types.h keys.h
config.o: config.c config.h types.h serial.h
level.o: level.c level.h types.h
jonsb.o: jonsb.c jonsb.h types.h util.h ai_util.h
ai_move.o: ai_move.c ai_move.h ai_util.h ai.h types.h motor.h
explode.o: explode.h explode.h types.h
