#
# -c  : compile only
# -G  : optimize speed
# -O  : optimize jumps
# -ml : large memory model
# -f  : emulate floating point
# -r  : register variables
# -v  : source level debugging
# -y  : line number info
# -v  : include debugging info
# -I  : include directory
# -Z  : optimize register usage
# -n  : set output directory
# -w  : enable all warnings
#
CC=tcc
CFLAGS=-c -w -O -G -ml -f -r -I..\shared -Z -n.\out
LFLAGS=-ml -w -O -G -f -r -Z -n.

#.c.obj:
	#$(CC) $(CFLAGS) ..\shared\$&

OBJ=    .\out\execute.obj .\out\fileinfo.obj \
	.\out\match.obj .\out\parse.obj .\out\process.obj \
	.\out\sfiletbl.obj .\out\syncdir.obj .\out\log.obj

syncdr16.exe : shared.lib .\out\dos.obj .\out\main.obj .\out\dosui.obj
	tcc $(LFLAGS) -esyncdr16.exe shared.lib .\out\dos.obj .\out\main.obj .\out\dosui.obj

shared.lib : $(OBJ) shared.lst
	tlib shared @shared.lst

.\out\execute.obj: ..\shared\execute.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\fileinfo.obj: ..\shared\fileinfo.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\match.obj: ..\shared\match.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\parse.obj: ..\shared\parse.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\process.obj: ..\shared\process.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\sfiletbl.obj: ..\shared\sfiletbl.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\log.obj: ..\shared\log.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\syncdir.obj: ..\shared\syncdir.c
	$(CC) $(CFLAGS) ..\shared\$&
.\out\dosui.obj: .\dosui.c
	$(CC) $(CFLAGS) .\dosui.c
.\out\dos.obj: .\dos.c
	$(CC) $(CFLAGS) .\dos.c
.\out\main.obj: .\main.c
	$(CC) $(CFLAGS) .\main.c

