
NOTE:
-----
This sample program requires MASM 5.1.	If you do not have the assembler,
it can be obtained by purchasing the IBM Device Driver Source Kit for OS/2,
at 1-800-633-8266.

This readme can be used as a makefile by editing out this "note"
section.  Then, the sample program can be built in the same manner as the
other sample programs in the MMPM/2 Toolkit - simply by typing "nmake".


#################################################################################
#
# Makefile for VID VSD
#
#   Generates one dll:
#	  vidvsd.dll	      - Vid VSD Dll
#
#
# Copyright (c) IBM Corporation  1993
# All Rights Reserved
#
#################################################################################

!if  [SET LIB=..\..\lib;%LIB%]			|| \
     [SET INCLUDE=..\..\h;..\..\inc;%INCLUDE%]
!endif

.SUFFIXES: .com .sys .exe .obj .mbj .asm .inc .def .lrf .crf .ref \
           .lst .sym .map .c .h .lib .msg .pro .txt

NAMEDLL=VIDVCIT

###########################################################
# Definitions for C Compiler
# Compiler flags:
#    /C+  Compile only
#    /Gd- Static link run time library
#    /Ge- Build a .DLL file
#    /Gm+ Link with multi-threaded version of library
#    /Gs- Remove stack probes
#    /Re  Generate code for C Set/2 run-time environment
#    /J-  Set unspecified char variables to signed char
#    /Kb- Suppress basic diagnostics messages
#    /Ki- Suppress messages about uninitialized variables
#    /Ms  Use SYSTEM linkage for functions
#    /Sm  Allow migration extensions
#    /Sn  Do not allow DBCS
#    /Ss+ Allow double slash format for comments
#    /D   preprocessor macro name INCL_32
###########################################################

CC=icc
ASM=masm

CFLAGS=    /C /Gme-s- /Q /Ssm /W3 /Ms /DINCL_32 /Ss+
DEBUG	   = /Ti+ /O-
AFLAGS=-MX -T -N -L -ZI -ZD

###########################################################################
# Definitions for linker
# LIBS:
#    DDE4MBS.LIB - C Set/2 Multi-threaded Standard Library function calls
#    DDE4MBM.LIB - C Set/2 Multi-threaded Migration Library function calls
#    OS2386.LIB  - OS.2 function calls
#    MMPM2.LIB	 - MMPM2 function calls
###########################################################################

LINK=link386
MAP = mapsym $(NAMEDLL)
LFLAGS= /batch /map /nod /noe /noi /CO /packcode /packdata /exepack /align:16
LIBS= DDE4MBS.LIB DDE4MBM.LIB os2386.lib MMPM2.LIB

#################################
# Inference Rules
################################
.c.obj:
	$(CC) $(CFLAGS) $(DEBUG) /Fo$(<R).obj $(C_LST) $(<R).c

.asm.obj:
   $(ASM) $(AFLAGS) $(<R).asm,$(<R).obj;

#################################
# Object file lists
#################################

DLLOBJS1=vsdini.obj	 \
         initdll.obj     \
         rgbconv.obj     \
         swvrcapt.obj


#################################
# Target Descriptions
#################################
all: dll

#################################
# .dll Target Descriptions
#################################

dll: $(NAMEDLL).dll

$(NAMEDLL).dll:   $(DLLOBJS1) makefile $(NAMEDLL).lrf $(NAMEDLL).def
	$(LINK)  @$(NAMEDLL).lrf
	$(MAP)


$(NAMEDLL).def: makefile
	@echo Creating file <<$(@B).def
LIBRARY $(NAMEDLL) INITINSTANCE TERMINSTANCE
DESCRIPTION '$(FILEVER)'
SEGMENTS
   SHR_SEG	 CLASS 'DATA' SHARED
DATA MULTIPLE NONSHARED
HEAPSIZE 0
EXPORTS
	VSD_Entry    @1
<<keep
#BASE = 0x1B130000


#
# Make link response file
#

$(NAMEDLL).lrf: makefile
	@echo Creating file <<$(@B).lrf
$(DLLOBJS1)
$(NAMEDLL).dll
$(NAMEDLL).map $(LFLAGS)
$(LIBS)
$(NAMEDLL).def;
<<keep





