#
# Configuration items.
#
# If WIN32, either define the environment variable CPU or WIN32
# If DEBUG, define the environment variable DEBUG
#
#

#DEBUG=1

PROJ=apiasst

ALT_VAR =
ALT_FILT=
ALT_INC =
ALT_RC  =
ALT_LIB =
!if exist(..\include\cwmkopts.mak)
include ..\include\cwmkopts.mak
!endif
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE 
NULL=nul
!ENDIF 

!ifdef PROFILE
PROFILE=/profile
!endif

!ifdef DBC_ABLE
ALT_VAR =-DDBC_ABLE $(DBC_OPTS) $(ALT_VAR)
!endif

INCDEF  =-I..\include
EXPORTS =..\include\exports.h

!ifdef BSC 
BSCFILE =$(OUTDIR)\$(PROJ).bsc
BSC_FLAGS=-v -Es
!endif

!ifndef PDBDIR
!ifdef DEBUG
PDBDIR = .\Debug
!else
PDBDIR = .\Release
!endif
!endif

!if Defined(CPU) || Defined(WIN32)

WIN32   =1
DWIN32  =-DWIN32
RSC=rsc32

!ifdef DEBUG
CCOPT   =/MT /Od /Z7 /DDEBUG /D_DEBUG
LINKDBG =/DEBUG /DEBUGTYPE:BOTH
OUTDIR  =.\Debug
INTDIR  =.\Debug
!else
!ifdef PDB
CCOPT   =/MT /Ows /Ob1 /Oy- /DNDEBUG /Zi /Fd"$(PDBDIR)\$(PROJ).pdb"
LINKDBG =/DEBUG /DEBUGTYPE:CV /PDB:"$(PDBDIR)\$(PROJ).pdb" /OPT:REF
!else
CCOPT   =/MT /Ows /Ob1 /Oy- /DNDEBUG
LINKDBG =
!endif
OUTDIR  =.\Release
INTDIR  =.\Release
!endif
# Incompatible Compiler versions for .PCH
CC      =@cl /nologo /W3 /c $(INCDEF) $(ALT_INC) $(ALT_VAR) /DSTRICT /G3 /DCWRIGHT $(CCOPT) /D_X86_ /D_WINDOWS /DWIN32 /YX /Fp$(INTDIR)\$(PROJ).pch
!ifdef BSC 
CC_BSC  =@cl /nologo /W3 /c $(INCDEF) $(ALT_INC) $(ALT_VAR) /DSTRICT /G3 /DCWRIGHT /DNDEBUG /D_X86_ /D_WINDOWS /DWIN32 /YX /Fp$(INTDIR)\$(PROJ).pch
!endif
#BASE    =/BASE:@..\include\coffbase.txt,$(PROJ)
LIBDIR  =..\lib\WIN32
LINKLIBS=user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib $(LIBDIR)\cwdll32.lib $(LIBDIR)\cwctls32.lib $(ALT_LIB)
!ifdef MSVC60
LFLAGS  =/NOLOGO $(LINKDBG) /MAP:$(INTDIR)\$(PROJ).map /DLL /LINK50COMPAT /DEF:$(PROJ).def /ENTRY:DLLEntry@12 /SUBSYSTEM:windows /implib:$(LIBDIR)\$(PROJ).lib /OUT:$(OUTDIR)\$(PROJ).dll $(BASE)
!else
LFLAGS  =/NOLOGO $(LINKDBG) /MAP:$(INTDIR)\$(PROJ).map /DLL /DEF:$(PROJ).def /ENTRY:DLLEntry@12 /SUBSYSTEM:windows /implib:$(LIBDIR)\$(PROJ).lib /OUT:$(OUTDIR)\$(PROJ).dll $(BASE)
!endif
DEF_FILT=-kWIN32 $(ALT_FILT) -s/RESIDENTNAME// -t -q

!else

RSC=rsc
ALT_LIB = commdlg
!ifdef DEBUG
CCOPT   =/Od /G2s /Z7 /DDEBUG /D_DEBUG
LINKDBG =/co/li
OUTDIR  =.\Dbg
INTDIR  =.\Dbg
!else
CCOPT   =/Ows
LINKDBG =
OUTDIR  =.\Rel
INTDIR  =.\Rel
!endif
CC      =@cl /nologo /W3 /c $(INCDEF) $(ALT_INC) $(ALT_VAR) /DSTRICT /DMT /Alfw $(CCOPT) /DCWRIGHT /YX /Fp$(INTDIR)\$(PROJ).pch
!ifdef BSC 
CC_BSC  =@cl /nologo /W3 /c $(INCDEF) $(ALT_INC) $(ALT_VAR) /DSTRICT /DMT /Alfw /G3s /DCWRIGHT /YX /Fp$(INTDIR)\$(PROJ).pch
!endif
LIBDIR  =..\lib\WIN16
LINKLIBS=libw.lib ldllcew.lib $(LIBDIR)\cwright.lib $(LIBDIR)\cwctls.lib $(ALT_LIB)
LFLAGS  =/NOLOGO /map/NOD/NOE $(LINKDBG)
LIBSEP  =+
INVOKE_RC=@rc -nologo -t $(INCDEF) $(ALT_INC) $(INTDIR)\$(PROJ).res $(OUTDIR)\$(PROJ).dll
INVOKE_IMPLIB=implib $(LIBDIR)\$(PROJ).lib $(OUTDIR)\$(PROJ).dll
DEF_FILT=-kWIN16 $(ALT_FILT) -t -q

!endif

!ifdef DEBUG
DEF_FILT=-kDEBUG $(DEF_FILT)
!endif

OBJS = $(INTDIR)\$(PROJ).obj  

!if [@echo Creating:  $(OUTDIR)\$(PROJ).dll]
!endif
!if [if exist $(PROJ).rs if exist $(PROJ).rc erase $(PROJ).rc]
!endif
!if [if exist $(PROJ).rs if exist $(INTDIR)\$(PROJ).rc copy $(INTDIR)\$(PROJ).rc $(PROJ).rc > nul]
!endif

!if [if exist $(PROJ).fd if exist $(PROJ).def erase $(PROJ).def]
!endif
!if [if exist $(PROJ).fd if exist $(INTDIR)\$(PROJ).def copy $(INTDIR)\$(PROJ).def $(PROJ).def > nul]
!endif


all: $(OUTDIR)\$(PROJ).dll $(BSCFILE)


$(INTDIR)\$(PROJ).res: $(PROJ).rc $(EXPORTS)
!ifdef WIN32
   @rc $(ALT_RC) $(INCDEF) $(ALT_INC) $(DWIN32) -r -fo $@ $(PROJ).rc
!else
   @rc -nologo $(ALT_RC) $(INCDEF) $(ALT_INC) $(DWIN32) -r -fo $@ $(PROJ).rc
!endif
   @echo $(PROJ).rc

!if exist($(PROJ).rs)
.SUFFIXES: .rs
.rs.rc:
   @if exist $@ erase $@
   @$(RSC) -q $(ALT_VAR) $(INCDEF) $(ALT_INC) $(DWIN32) $(PROJ).rs $@
   @echo $(PROJ).rs
   @copy $@ $(INTDIR)\$@
!endif

!if exist($(PROJ).fd)
.SUFFIXES: .fd
.fd.def:
   @if exist $@ erase $@
   @$(RSC) -q $(DEF_FILT) $(PROJ).fd $@
   @echo $(PROJ).fd
   @copy $@ $(INTDIR)\$@
!endif

# Dependencies
$(INTDIR)\$(PROJ).obj: $(PROJ).c $(EXPORTS) $(PROJ).h


$(PROJ).res: $(PROJ).rc $(PROJ).h  $(EXPORTS)

$(OUTDIR)\$(PROJ).dll: $(OUTDIR) $(INTDIR) \
      $(OBJS)               \
      $(PROJ).def           \
      $(INTDIR)\$(PROJ).res 
   @link $(LFLAGS) $(PROFILE) @<<$(PROJ).crf
!ifdef WIN32
      $(OBJS)
      $(LINKLIBS)
      $(INTDIR)\$(PROJ).res
!else
      $(OBJS:.obj=.obj +^
      )
      $(OUTDIR)\$(PROJ).dll
      $(INTDIR)\$(PROJ).map
      $(LINKLIBS)
      $(PROJ).def
!endif
<<
!ifndef WIN32
   $(INVOKE_RC)
   $(INVOKE_IMPLIB)
!endif

.c{$(INTDIR)}.obj:
   $(CC) /Fo$@ $<
   @if exist $(PROJ).pch erase $(PROJ).pch

{}.c{$(INTDIR)}.sbr:
   @echo Creating browser information file $@
   $(CC_BSC) /Zs /FR$@ $?

!ifdef BSC
$(BSCFILE): $(OBJS:.obj=.sbr)
   @bscmake $(BSC_FLAGS) -o $@ @<<
$(?:.sbr=.sbr ^
)
<<
!endif

$(OUTDIR) $(INTDIR) ::
!ifdef WIN32
    @if not exist "$@/$(NULL)" mkdir "$@"
!else
    @if not exist "$@/$(NULL)" mkdir $@
!endif

