home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 8
/
CDASC08.ISO
/
NEWS
/
676
/
XMSIF
/
EXMAKEMS
< prev
next >
Wrap
Text File
|
1993-10-07
|
5KB
|
149 lines
#
# EXAMPLE MAKEFILE FOR XMSTEST TESTER/EXAMPLE PROGRAM FOR XMSIF
# MICROSOFT C
# 12/08/91
#
# This is an example makefile for Microsoft C, to make the XMSTEST tester/
# example program in any of the six supported memory models. It is compatible
# with the NMAKE utility provided with the compiler. As supplied, it is set
# up for Microsoft C 6.00A. To reconfigure for earlier compilers, two changes
# may be required. First, check if your version of the compiler has the
# library functions _fmemcmp() and _fmemset(). If it does not, add "/DNO_FFUNC"
# to the line that begins "CFLAGS". Second, check if your version of the
# compiler supports in-line assembly code. If it does, no changes should be
# necessary. If it does not, or you do not wish to use the in-line assembly
# code (even though it improves execution speed significantly), simply remove
# "/DINLINE_ASM" from the line that begins "CFLAGS".
#
# Before using this makefile, make sure that the Microsoft NMAKE utility
# and the appropriate command-line compiler and linker are in your path,
# and that the necessary environment variables (INCLUDE and LIB) are set
# appropriately. The four source files (XMSTEST.C, XMSTEST2.C, XMSTEST3.C,
# and TESTUTIL.C), the header files (XMSTEST.H, TESTUTIL.H, and XMSIF.H), and
# the appropriate library or libraries (XMSIF*.LIB) should all be in the
# current directory.
#
# To use the makefile, type "nmake /f exmakems target", where 'target' is
# one or more of tiny, small, medium, compact, large, or huge separated by
# spaces. For example, "nmake /f exmakems tiny" would make the tiny-model
# example and "nmake /f exmakems small large" would make the small- and
# large-model examples. "nmake /f exmakems" will make the test programs
# for all memory models.
#
CC =cl
CFLAGS = /c /DINLINE_ASM
LINK = link
LF =
all: tiny small medium compact large huge
tiny: txmstest
small: sxmstest
medium: mxmstest
compact: cxmstest
large: lxmstest
huge: hxmstest
txmstest.obj: xmstest.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AT /Fo$@ xmstest.c
sxmstest.obj: xmstest.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AS /Fo$@ xmstest.c
mxmstest.obj: xmstest.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AM /Fo$@ xmstest.c
cxmstest.obj: xmstest.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AC /Fo$@ xmstest.c
lxmstest.obj: xmstest.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AL /Fo$@ xmstest.c
hxmstest.obj: xmstest.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AH /Fo$@ xmstest.c
txmstst2.obj: xmstest2.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AT /Fo$@ xmstest2.c
sxmstst2.obj: xmstest2.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AS /Fo$@ xmstest2.c
mxmstst2.obj: xmstest2.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AM /Fo$@ xmstest2.c
cxmstst2.obj: xmstest2.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AC /Fo$@ xmstest2.c
lxmstst2.obj: xmstest2.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AL /Fo$@ xmstest2.c
hxmstst2.obj: xmstest2.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AH /Fo$@ xmstest2.c
txmstst3.obj: xmstest3.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AT /Fo$@ xmstest3.c
sxmstst3.obj: xmstest3.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AS /Fo$@ xmstest3.c
mxmstst3.obj: xmstest3.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AM /Fo$@ xmstest3.c
cxmstst3.obj: xmstest3.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AC /Fo$@ xmstest3.c
lxmstst3.obj: xmstest3.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AL /Fo$@ xmstest3.c
hxmstst3.obj: xmstest3.c xmstest.h testutil.h
$(CC) $(CFLAGS) /AH /Fo$@ xmstest3.c
ttstutil.obj: testutil.c testutil.h
$(CC) $(CFLAGS) /AT /Fo$@ testutil.c
ststutil.obj: testutil.c testutil.h
$(CC) $(CFLAGS) /AS /Fo$@ testutil.c
mtstutil.obj: testutil.c testutil.h
$(CC) $(CFLAGS) /AM /Fo$@ testutil.c
ctstutil.obj: testutil.c testutil.h
$(CC) $(CFLAGS) /AC /Fo$@ testutil.c
ltstutil.obj: testutil.c testutil.h
$(CC) $(CFLAGS) /AL /Fo$@ testutil.c
htstutil.obj: testutil.c testutil.h
$(CC) $(CFLAGS) /AH /Fo$@ testutil.c
txmstest: txmstest.obj txmstst2.obj txmstst3.obj ttstutil.obj xmsifs.lib
$(LINK) $(LF) /ST:0x800 txmstest txmstst2 txmstst3 ttstutil, \
txmstest, , xmsifs ;
sxmstest: sxmstest.obj sxmstst2.obj sxmstst3.obj ststutil.obj xmsifs.lib
$(LINK) $(LF) sxmstest sxmstst2 sxmstst3 ststutil, sxmstest, , xmsifs ;
mxmstest: mxmstest.obj mxmstst2.obj mxmstst3.obj mtstutil.obj xmsifm.lib
$(LINK) $(LF) mxmstest mxmstst2 mxmstst3 mtstutil, mxmstest, , xmsifm ;
cxmstest: cxmstest.obj cxmstst2.obj cxmstst3.obj ctstutil.obj xmsifc.lib
$(LINK) $(LF) cxmstest cxmstst2 cxmstst3 ctstutil, cxmstest, , xmsifc ;
lxmstest: lxmstest.obj lxmstst2.obj lxmstst3.obj ltstutil.obj xmsifl.lib
$(LINK) $(LF) lxmstest lxmstst2 lxmstst3 ltstutil, lxmstest, , xmsifl ;
hxmstest: hxmstest.obj hxmstst2.obj hxmstst3.obj htstutil.obj xmsifh.lib
$(LINK) $(LF) hxmstest hxmstst2 hxmstst3 htstutil, hxmstest, , xmsifh ;