|
|
Microsoft OS/2 SDK 2.0 05-30-1990
#===================================================================
#
# Template Make file
# Created 1989, 1990 Microsoft Corporation
#
#===================================================================
#-------------------------------------------------------------------
# .SUFFIXES line helps NMAKE recognize other file suffixes besides
# .c, .exe, etc.
#-------------------------------------------------------------------
.SUFFIXES: .res .rc .hlp .ipf
#===================================================================
#
# Macro definitions
#
# These macro definitions set are used to set up the options needed
# to build the application. Such options include the command line
# options for the compiler and the libraries needed for the linker.
# The flags are created as macros so that they can be easily modified
# so they need to be changed.
#
# The macros also allow you to have a different set of options
# for each environment your application is built for. The macros
# below include the flags for compiling the application in the
# 32=bit and 16=bit memory models. You can also add flags for a
# a retail version of the product, a version which does not contain
# any codeview symbols and has the maximum optimization.
#
#===================================================================
AS = masm
AFLAGS =
AXFLAGS =
CC = cl386
CFLAGS16 = -u -c -Gs -Od -W3 -Zpei -AL -DLINT_ARGS
CFLAGS32 = -c -Gs -Od -W3 -Zi -B1 c1l_386 -DLINT_ARGS
CINC32 =
DFLAGS =
LINK16 = link
LIBS16 = llibcep os2
LINK32 = link386
LIBS32 = libc os2386
LFLAGS = /MAP/CO/NOD
RC = ..\..\..\os2bin\rc
HEADERS = main.h xtrn.h
#-------------------------------------------------------------------
# This section is used to set which options macros are to be used
# in the build. By changing the macro names on the right, we can
# change which environment the application will be built for. This
# application currently uses the flags for the 32-bit memory model.
#-------------------------------------------------------------------
LINK = $(LINK32)
CFLAGS = $(CFLAGS32)
LIBS = $(LIBS32)
CINC = $(CINC32)
#===================================================================
#
# Default inference rules
#
# This section lists the command and flags to build each type of
# of source file listed.
#
#===================================================================
.c.obj:
$(CC) $(CFLAGS) $(CINC) $*.c
.asm.obj:
$(AS) $(AFLAGS) $(AXFLAGS) $*.asm;
.rc.res:
$(RC) -r $*.rc
#-------------------------------------------------------------------
# A list of all of the object files
#-------------------------------------------------------------------
ALL_OBJ1 = main.obj user.obj init.obj pnt.obj dlg.obj help.obj
ALL_OBJ2 = file.obj edit.obj prnt.obj thrd.obj
#-------------------------------------------------------------------
# A list of all of the Help text files
#-------------------------------------------------------------------
ALL_IPF = main.ipf file.ipf edit.ipf help.ipf dlg.ipf menu.ipf
#-------------------------------------------------------------------
# This section lists all files to be built by the make. The
# makefile builds the executible as well as its associated help
# file.
#-------------------------------------------------------------------
all: template.exe template.hlp
#-------------------------------------------------------------------
# This section creates the command file used by the linker. This
# command file is recreated automatically every time you change
# the object file list, linker flags, or library list.
#-------------------------------------------------------------------
template.lnk: template.mak
echo $(ALL_OBJ1) + > template.lnk
echo $(ALL_OBJ2) >> template.lnk
echo template.exe >> template.lnk
echo template.map $(LFLAGS) >> template.lnk
echo $(LIBS) >> template.lnk
echo template.def >> template.lnk
#===================================================================
#
# Dependencies
#
# This section lists all object files needed to be built for the
# application, along with the files it is dependent upon (e.g. its
# source and any header files).
#
#===================================================================
main.res: main.rc main.ico main.h dlg.h template.dlg help.rc help.h
main.obj: main.c $(HEADERS)
file.obj: file.c $(HEADERS)
edit.obj: edit.c $(HEADERS)
user.obj: user.c $(HEADERS)
init.obj: init.c $(HEADERS)
pnt.obj: pnt.c $(HEADERS)
dlg.obj: dlg.c $(HEADERS)
help.obj: help.c $(HEADERS) help.h
prnt.obj: prnt.c $(HEADERS)
thrd.obj: thrd.c $(HEADERS)
#-------------------------------------------------------------------
# This section creates the help manager file. The IPF compiler
# creates a file called main.hlp which is renamed to template.hlp.
#-------------------------------------------------------------------
template.hlp: $(ALL_IPF)
ipfc main.ipf /W3
if exist template.hlp del template.hlp
rename main.hlp template.hlp
#-------------------------------------------------------------------
# This section links the object modules into the finished program
# using the linker command file created earlier. At the end, the
# resource file is bound to the application.
#-------------------------------------------------------------------
template.exe: $(ALL_OBJ1) $(ALL_OBJ2) template.def template.lnk main.res
$(LINK) @template.lnk
$(RC) main.res template.exe
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.