# Purpose:      Watcom environments for wxWindows makefiles.
# Author:       Julian Smart and others
#
# The main things to change are:
#
#   WATCOM:    set to where the compiler is installed
#   WXDIR:     set to where the wxWindows is installed

FINAL=0

WATCOMVERSION

WATCOMDIR=$(%WATCOM)
MGLROOT=$(%MGL_ROOT)
!ifeq FINAL 1
MGLLIBDIR=$(MGLROOT)\lib\release\dos32\wc11
!else
MGLLIBDIR=$(MGLROOT)\lib\debug\dos32\wc11
!endif


.EXTENSIONS:
.EXTENSIONS: .exe .obj .c .cc .cpp .res .rc .def

WXDIR = $(%WXWIN)
WXINC = $(WXDIR)\include

# Suffixes
OBJSUFF=obj
SRCSUFF=cpp

WXDEBUG=0

!ifneq NOPRECOMP 1
PRECOMP     = /fh=$(WXDIR)\src\mgl\watcom.pch
!endif

!ifeq FINAL 0
DEBUGFLAGS     = /D__WXDEBUG__ /d2
DEBUGINFO   = debug all
ARCHINCDIR=$(WXDIR)\lib\mgld
!else
DEBUGFLAGS     =
DEBUGINFO   =
ARCHINCDIR=$(WXDIR)\lib\mgl
!endif

LEVEL       = 386
CCC         = wpp$(LEVEL)
CC         =  wcc$(LEVEL)
OS_TARGET   = dos4g
MODEL       =
LINKOPTION  = dos4g
BINDCOMMAND = wrc
WATLIBDIR   = $(WATCOMDIR)\lib386\dos
MINDATA     =
MAXDATA     =
STACK       = option stack=200k
LIBS   = $(WXDIR)\lib\wx.lib $(WXDIR)\lib\regex.lib $(WXDIR)\lib\zlib.lib $(WXDIR)\lib\png.lib $(WXDIR)\lib\tiff.lib $(WXDIR)\lib\jpeg.lib &
      $(MGLLIBDIR)\dos4gw\pm.lib $(MGLLIBDIR)\mgl.lib $(MGLLIBDIR)\mglcpp.lib  
IFLAGS      = -i=$(ARCHINCDIR);$(WXINC) -i=$(WXDIR)\contrib\include -i=$(%watcom)\h;$(%watcom)\h\dos;$(WXDIR)\src\regex;$(WXDIR)\src\png;$(WXDIR)\src\zlib;$(WXDIR)\src\jpeg;$(WXDIR)\src\tiff
;$(MGLROOT)\include

# Here are some possible optimization flags:
# /5r  Pentium timings
# /fp5 /fpi87 Inline 80x87 instructions optimized for Pentium: coprocessor must be present
# /ox  Standard optimizations
# /or  Reordering for Pentium timings (included in /ox)
# The Watcom-recommended flags for optimum Pentium speed are:
# /oneatx /zp4 /5 /fpi87 /fp5

OPTFLAGS=/ox /5r

# /d1 for line numbers only: anything else produces an enormous wx32.lib
#
CPPFLAGS    = /bt=dos4g /w1 /zq $(OPTFLAGS) $(MODEL) $(PRECOMP) $(DEBUGFLAGS) /d__WXMGL__ /d__WXUNIVERSAL__ /d__DOS__ $(EXTRACPPFLAGS) # /d__WATCOMC__

.cpp.obj: # $< # .AUTODEPEND
    *$(CCC) $(CPPFLAGS) $(IFLAGS) $<

.c.obj: # $< # .AUTODEPEND
    *$(CC) $(CPPFLAGS) $(IFLAGS) $<

# This doesn't work for wcc
#    %create tmp.lbc
#    @%append tmp.lbc $(CPPFLAGS) $(IFLAGS) $<
#    echo $<
#    $(CC) @tmp.lbc

dummy:  .SYMBOLIC
    @echo Please give a target for wxWin makefiles: the usual one is 'all'.

erasepch:   .SYMBOLIC
    -erase $(WXDIR)\src\mgl\watcom.pch