#
# Custom Control makefile
#

.SUFFIXES:  .asm .c .def .vbx .h .lnk .map .obj .rc .res .sym

PRODUCT = SLIDER

Default: $(PRODUCT).vbx

#
# Tools required
#

AS	    = masm
CC	    = cl
CVPACK	    = cvpack
LINK	    = link
MAPSYM	    = mapsym
RC	    = $(RCPATH)rc
SZSCRN	    = echo>con

#
# Flags
#

AFLAGS	    = -W2 -V -E -P -Zi
CFLAGS	    = -W4 -c -G2csw -Alnw -Zip
LFLAGS	    = /co /align:16 /batch /far /li /map /nod /noe /nop /w

#
# DEFAULT BUILD RULES
#

.c.obj:
    $(SZSCRN) Compiling $(<F)
    if exist $@ del $@
    $(CC) $(CFLAGS) $<

.asm.obj:
    $(SZSCRN) Assembling $(<F)
    $(AS) $(AFLAGS) $<,$@;

#
# Dependencies
#

ccinit.obj:	ccinit.c $(PRODUCT).h

libinit.obj:	libinit.asm

$(PRODUCT).obj: $(PRODUCT).c $(PRODUCT).h

$(PRODUCT).vbx: libinit.obj ccinit.obj $(PRODUCT).obj $(PRODUCT).lnk \
	$(PRODUCT).res $(PRODUCT).def
    $(SZSCRN) Linking $(PRODUCT).vbx...
    $(LINK) /co @$(PRODUCT).lnk
    $(SZSCRN) CVPACKing $(PRODUCT).vbx...
    $(CVPACK) -p $(PRODUCT).vbx
    $(SZSCRN) RCing $(PRODUCT).vbx...
    $(RC) $(PRODUCT).res $(PRODUCT).vbx
    $(SZSCRN) MAPSYMing $(PRODUCT).vbx...
    $(MAPSYM) $(PRODUCT)
    $(SZSCRN) Done Linking $(PRODUCT).vbx

$(PRODUCT).lnk: makefile
    $(SZSCRN) Making <<$(PRODUCT).lnk
    libinit.obj+
    ccinit.obj+
    $(PRODUCT).obj
    $(PRODUCT).vbx $(LFLAGS)
    $(PRODUCT).map
    vbapi.lib mdllcew.lib libw.lib
    $(PRODUCT).def
<<KEEP

$(PRODUCT).res: $(PRODUCT).rc $(PRODUCT).h \
	SLIDcdn.bmp \
	SLIDcup.bmp \
	SLIDmdn.bmp \
	SLIDmup.bmp \
	SLIDedn.bmp \
	SLIDeup.bmp \
	SLIDE.bmp   \
	BUTTON.bmp  \
	MASK.bmp
    $(SZSCRN) Resource compiling $(PRODUCT).RC
    $(RC) -R -i$(TOOLS)\inc $(RCINCS) $(PRODUCT).rc

cln:
    -del *.obj
    -del *.res
    -del *.lnk
    -del *.vbx
    -del *.map
    -del *.sym
