# Doszip root directory
ROT=\doszip

!ifndef BIN
BIN=$(ROT)
!endif
!ifndef MDL
MDL=l
!endif
!ifdef CPP
_C_=1
!endif

# Debug setup

!ifndef ADEBUG
ADEBUG=/Zd
!endif
!ifndef DEBUG
DEBUG=0
!endif
!if $(DEBUG)
DFLAG=/DDEBUG
!endif

# Source directory

!ifdef SUB
SRC=$(ROT)\src\clib\$(SUB)
!else
! ifdef NAME
SRC=$(ROT)\src\$(NAME)
! endif
!endif
!ifdef SRC
SRCD=$(SRC)
!else
SRCD=.
!endif

# Include directory

!ifndef INCDIR
INCDIR=$(ROT)\inc
!endif

# Library and startup file

!ifndef LIBDIR
LIBDIR=$(ROT)\lib
!endif

!if $(DEBUG)
CX=$(LIBDIR)\c$(MDL)
C0X=$(LIBDIR)\c0f$(MDL).OBJ
!else
!ifndef _C_
CX=$(LIBDIR)\lib$(MDL)
C0X=$(LIBDIR)\c0$(MDL).OBJ
!else
CX=$(LIBDIR)\clib$(MDL)
C0X=$(LIBDIR)\w0$(MDL).OBJ
!endif
!endif

# Tools setup

AC = JWasm
CC = wcc
LC = wlink
MK = wmake -a
!if $(DEBUG)
! ifndef _C_
AFLAGS = /q /Zm /zf1 $(ADEBUG)
! else
AFLAGS = /q /Zm /zf1 /Zd /D__WCC__
! endif
CFLAGS = /j /3 /zdp /zu /zls /zl /ecp /s /d2 /q /nt=_TEXT
LFLAGS = Debug Watcom All
!else
! ifndef _C_
AFLAGS = /q /Zm /zf1
! else
AFLAGS = /q /Zm /zf1 /D__WCC__
! endif
CFLAGS = /j /3 /zdp /zu /zls /ecp /s /d0 /q /nt=_TEXT
LFLAGS = OPtion Quiet
!endif

# Implicit Rules

CF=$(CFLAGS) /I$(INCDIR) /m$(MDL) $(DFLAG)
!if $(DEBUG)
AF=$(AFLAGS) /I$(INCDIR) /D__$(MDL)__ $(DFLAG) $(CFG)
!else
AF=$(AFLAGS) /I$(INCDIR) /D__$(MDL)__ $(CFG)
!endif

.asm.obj:
	$(AC) $(AF) $(SRCD)\$*.asm
.c.obj:
	$(CC) $(CF) $(SRCD)\$*.c

!ifdef SUB
$(CX).LIB:
 @for %file in ($(SRCD)\*.asm) do $(AC) $(AF) %file
 @for %file in (*.obj) do @%append OBJECTS -+%file
 wlib -q -c $(CX) @OBJECTS.
 @del OBJECTS
 @del *.obj
 @if exist $(CX).bak del $(CX).bak
!endif
