blob: e9384c24667cde9067a5410559a82325c0b99f98 (
plain) (
tree)
|
|
##############################################################################
#### ####
#### Microsoft Windows 3.0 WRITE make file ####
#### For use with the MS-DOS version of the UNIX make utility ####
#### ####
##############################################################################
WINLIB=..\lib
INCLUDE=-I..\inc -I..\..\inc
#International mods
# NOTE: INTL_SRC, INTL_EXE and LANG are external macros set by international
!IFNDEF LANG
RES_DIR=.\messages\usa
!IFDEF DBCS
RES_DIR=.\messages\$(DBCS)
!ENDIF
!ELSE
RES_DIR=$(INTL_SRC)\$(LANG)\apps\write
EXE_DIR=$(INTL_EXE)
!ENDIF
APP = write
DEBUGDEF =
########## Path definition so we find 16 bit tools ##########
# Also works around stupid bug in RC 3.1 that doesn't allow rcpp.err to be
# in a directory that is greater than 128 chars down the path, even if
# rc 3.1 is running as an OS/2 app.
PATH = $(_NTBINDIR)\private\mvdm\tools16;$(PATH)
!if "$(NTDEBUG)"!="" && "$(NTDEBUG)"!="retail" && "$(NTDEBUG)" != "ntsdnodbg"
CDEBUG = /Zd
ADEBUG = -Zd
LDEBUG = /LI
!ENDIF
!ifdef OS2
CFLAGS = /AM /G2sw /Os /Zpe /PLM /DOS2 $(INCLUDE)
DFLAGS =
LFLAGS = /ALIGN:16 /Map /NOD
AFLAGS = -Mx $(INCLUDE)
RCFLAGS = -DOS2 $(INCLUDE)
!else
!ifdef CVW
CFLAGS = /AM /G2sw /Odi /Zipe /W3 /PLM /DWIN31 $(INCLUDE)
LFLAGS = /ALIGN:16 /Map /NOD
AFLAGS = -Mx -Zi $(INCLUDE)
!else
CFLAGS = /AM /G2sw /Os /Zpe /PLM /DWIN31 $(INCLUDE) $(CDEBUG)
LFLAGS = /ALIGN:16 /MAP /NOD $(LDEBUG)
AFLAGS = -Mx $(INCLUDE) $(ADEBUG)
!endif
DFLAGS =
RCFLAGS = $(INCLUDE)
!endif
# To make a debug version, you can set this variable from the command line:
#
# MAKE "DFLAGS=-DDEBUG -Zid" = turns on general debug code/Codeview
#
# Additional parameters/defines that can be used:
#
# -DCKSM = enables document checksum test code
# -DDFONT = enables font stats and info dump
# -DDFILE = enables file read/write info dump
# -DDPRINT = enables print info dump
# -DDDISP = enables any display tests we might add
# -DBEMG = ?
# -DDFLI = enables FormatLine debug info
# (only when form1.c used rather than format.asm)
# -DPRDRVTEST = enables some diagnostic code to test character
# widths returned by the printer
# -DDINPUT = enables diagnostic code in mouse/keyboard
# input areas
# -DDCLIP = enables clipboard measurement diag output
# -DDMARGINS =
# -DDIAG = turns on comm. port diagnostic output
# [for use with Diag() macro]
#
Res = write.ico mwlores.cur mwhires.cur pmscur.cur
ResH = menudefs.h dlgdefs.h str.h
ResB = cgabtns.bmp egabtns.bmp vgabtns.bmp 8514btns.bmp \
cgamarks.bmp egamarks.bmp vgamarks.bmp 8514mrks.bmp
OBJ1 = addprm.obj cache.obj chngwin.obj clipbord.obj \
clipbrd2.obj clipdisp.obj cmd.obj createww.obj curskeys.obj \
debug.obj diaalert.obj printdlg.obj diadiv.obj diapara.obj \
diarepag.obj diasubs.obj disp.obj doc.obj doprm.obj \
OBJ2 = doslib.obj edit.obj editpgtb.obj \
fetch.obj file.obj fileres.obj fileutil.obj fontdlg.obj fontenum.obj \
fontutil.obj format.obj \
format2.obj heapmain.obj heaprare.obj jumppage.obj \
OBJ3 = initmmw.obj initwin.obj insert.obj insert2.obj insertco.obj \
lib.obj loadfont.obj loadfnt2.obj mainloop.obj \
mdoc.obj menu.obj mglobals.obj mmw.obj \
mouse.obj open.obj \
pageinfo.obj pictdrag.obj picture.obj picture2.obj print.obj \
OBJ4 = print2.obj print3.obj quit.obj \
rare.obj ruler.obj ruler2.obj ruler3.obj running.obj \
screen.obj scrnchng.obj scrollhz.obj scrollvt.obj search.obj \
select.obj select2.obj selectsp.obj \
OBJ5 = transfer.obj trans2.obj trans3.obj trans4.obj transbuf.obj \
undo.obj util.obj util2.obj wwactde.obj \
OBJ6 = obj.obj obj2.obj obj3.obj objreg.obj commdlg.obj objpsp.obj objmini.obj
!IFDEF DBCS
# use FORM1.C(need to link with HELP.C) instead of FORMAT.ASM
OBJ_DBCS=help.obj
!ENDIF
.asm.obj:
masm $(AFLAGS) $(DEBUGDEF) $*.asm;
.c.obj:
cl16 -c $(CFLAGS) $(DFLAGS) $(DEBUGDEF) $*.c
#International mods
!IFNDEF LANG
all: write.exe
!ELSE
all: write.$(LANG)
!ENDIF
clean: cleanup all
cleanup:
del *.res
del *.rc
del *.rcv
del *.dlg
del *.obj
del *.sym
del *.map
!IFDEF DBCS
$(APP).exe: $(APP).res $(OBJ_DBCS) $(OBJ1) $(OBJ2) $(OBJ3) $(OBJ4) $(OBJ5) $(OBJ6) $(APP).def $(APP).lnk
!ELSE
$(APP).exe: $(APP).res $(OBJ1) $(OBJ2) $(OBJ3) $(OBJ4) $(OBJ5) $(OBJ6) $(APP).def $(APP).lnk
!ENDIF
#$(APP).exe: $(APP).res $(OBJ6) $(APP).def $(APP).lnk
# ilink /E "link @$(APP).lnk;rc $(RCFLAGS) $(APP).res $(APP).exe" $(APP)
link16 @$(APP).lnk
rc16 $(RCFLAGS) $(APP).res $(APP).exe
!ifndef CVW
mapsym $(APP)
copy write.exe write16.exe
copy write.map write16.map
copy write.sym write16.sym
binplace write16.exe write16.map write16.sym
!endif
! ifdef OS2
exehdr /newfiles notepad.exe
! endif
doslib.obj: doslib.asm
!IFDEF DBCS
format.obj: d_form1.c
cl16 -c $(CFLAGS) $(DFLAGS) $(DEBUGDEF) -Foformat.obj d_form1.c
!ELSE
format.obj: format.asm
!ENDIF
lib.obj: lib.asm
msseqds.obj: msseqds.asm
aaa.obj: aaa.c
addprm.obj: addprm.c
cache.obj: cache.c
chlook.obj: chlook.c
chngwin.obj: chngwin.c
clipbord.obj: clipbord.c
clipbrd2.obj: clipbrd2.c
clipdisp.obj: clipdisp.c
cmd.obj: cmd.c
createww.obj: createww.c
curskeys.obj: curskeys.c
debug.obj: debug.c
diaalert.obj: diaalert.c
printdlg.obj: printdlg.c
diadiv.obj: diadiv.c
diapara.obj: diapara.c
diarepag.obj: diarepag.c
diasubs.obj: diasubs.c
!IFDEF DBCS
disp.obj: d_disp.c
cl16 -c $(CFLAGS) $(DFLAGS) $(DEBUGDEF)-Fodisp.obj d_disp.c
!ELSE
disp.obj: disp.c
!ENDIF
doc.obj: doc.c
doprm.obj: doprm.c
edit.obj: edit.c
editftn.obj: editftn.c
editpgtb.obj: editpgtb.c
editsect.obj: editsect.c
fetch.obj: fetch.c
file.obj: file.c
fileres.obj: fileres.c
fileutil.obj: fileutil.c
fontdlg.obj: fontdlg.c
fontenum.obj: fontenum.c
fontutil.obj: fontutil.c
form1.obj: form1.c
format2.obj: format2.c
heapinit.obj: heapinit.c
heapmain.obj: heapmain.c
heaprare.obj: heaprare.c
help.obj: help.c
initmmw.obj: initmmw.c
initwin.obj: initwin.c
insert.obj: insert.c
insert2.obj: insert2.c
insertco.obj: insertco.c
jumppage.obj: jumppage.c
loadfnt2.obj: loadfnt2.c
loadfont.obj: loadfont.c
mainloop.obj: mainloop.c
mdoc.obj: mdoc.c
menu.obj: menu.c
mglobals.obj: mglobals.c
mmw.obj: mmw.c
mouse.obj: mouse.c
open.obj: open.c
ole.obj: ole.c
pageinfo.obj: pageinfo.c
pictdrag.obj: pictdrag.c
picture.obj: picture.c
picture2.obj: picture2.c
print.obj: print.c
print2.obj: print2.c
print3.obj: print3.c
quit.obj: quit.c
rare.obj: rare.c
ruler.obj: ruler.c
ruler2.obj: ruler2.c
ruler3.obj: ruler3.c
running.obj: running.c
screen.obj: screen.c
scrnchng.obj: scrnchng.c
scrollhz.obj: scrollhz.c
scrollvt.obj: scrollvt.c
search.obj: search.c
select.obj: select.c
!IFDEF DBCS
select2.obj: d_selec2.c
cl16 -c $(CFLAGS) $(DFLAGS) $(DEBUGDEF)-Foselect2.obj d_selec2.c
!ELSE
select2.obj: select2.c
!ENDIF
selectsp.obj: selectsp.c
trans2.obj: trans2.c
trans3.obj: trans3.c
trans4.obj: trans4.c
transbuf.obj: transbuf.c
transfer.obj: transfer.c
undo.obj: undo.c
util.obj: util.c
util2.obj: util2.c
wwactde.obj: wwactde.c
#International mods
!IFNDEF LANG
$(APP).rc: $(RES_DIR)\$(APP).rc
copy $(RES_DIR)\$(APP).rc
$(APP).rcv: $(RES_DIR)\$(APP).rcv
copy $(RES_DIR)\$(APP).rcv
$(APP).dlg: $(RES_DIR)\$(APP).dlg
copy $(RES_DIR)\$(APP).dlg
ole.dlg: $(RES_DIR)\ole.dlg
copy $(RES_DIR)\ole.dlg
$(APP).res: $(APP).rc $(APP).rcv $(APP).dlg ..\inc\common.ver ..\inc\version.h ..\inc\ver.h ole.dlg $(Res) $(ResH) $(ResB)
rc16 $(RCFLAGS) -r $(APP).rc
!ELSE
$(APP).res: $(RES_DIR)\$(APP).res
copy $(RES_DIR)\$(APP).res
!ENDIF
$(APP).lnk: MAKEFILE $(APP).sed
sed -n -f $(APP).sed MAKEFILE > $(APP).lnk
!IFDEF DBCS
sed "s/format\.obj/format\.obj help\.obj/" $(APP).lnk > $(DBCS).lnk
copy $(DBCS).lnk $(APP).lnk
del $(DBCS).lnk
!ENDIF
echo $(APP) $(LFLAGS) >> $(APP).lnk
echo $(APP) >> $(APP).lnk
!IFDEF DBCS
echo $(WINLIB)\winnls.lib $(WINLIB)\mlibcew.lib $(WINLIB)\libw.lib $(WINLIB)\olecli.lib $(WINLIB)\commdlg.lib $(WINLIB)\shell.lib >> $(APP).lnk
!ELSE
echo $(WINLIB)\mlibcew.lib $(WINLIB)\libw.lib $(WINLIB)\olecli.lib $(WINLIB)\commdlg.lib $(WINLIB)\shell.lib >> $(APP).lnk
!ENDIF
echo $(APP).def >> $(APP).lnk
#International mods
clean: cleanup all
cleanup:
del *.res
del *.rc
del *.dlg
$(APP).$(LANG): $(APP).res ..\inc\common.ver ..\inc\version.h ..\inc\ver.h
copy $(EXE_DIR)\$(APP).exe $(APP).$(LANG)
rc16 -t $(RCFLAGS) $(APP).res $(APP).$(LANG)
copy $(app).$(LANG) write16.exe
copy write.sym write16.sym
-binplace write16.exe write16.sym
|