www.pudn.com > open_watcom.rar > makecomm


$# just in case anyone is curious ... 
!ifdef %WCL386 
!    error WCL386 environment variable must not be set 
!endif 
!ifdef %WCL 
!    error WCL environment variable must not be set 
!endif 
!ifdef %WCC 
!    error WCC environment variable must not be set 
!endif 
!ifdef %WCC386 
!    error WCC386 environment variable must not be set 
!endif 
!ifdef %TESTMODE 
!    error You're building in test mode fool! 
!endif 
 
# don't output reams of junk by default 
!ifdef %VERBOSE 
verbose = 1 
!else 
verbose = 0 
!endif 
 
# don't ask, just nuke the files 
.ERASE 
 
# if you wish to build debug version 
!ifdef %DEBUG_BUILD 
debug_build = $(%DEBUG_BUILD) 
!endif 
# default windowing support 
!ifdef %DEFAULT_WINDOWING 
default_windowing = $(%DEFAULT_WINDOWING) 
!endif 
 
os2_toolkit     = $(%OS2TKROOT) 
 
!ifndef __LINUX__ 
 
tools_root      = $(%TOOLDR)\tools 
nlang_root      = $(%DWATCOM) 
build_root      = $(%DEVDIR) 
utils_root      = $(build_root) 
# a good enough location for any OS specific support files that may be needed. 
os_supp_dir     = $(build_root)\os_supp 
 
# The NOVELLNDK environment variable should be added during install. If not, the default location is 
# C:\NOVELL\NDK\NWSDK. 
nwndk_root      = $(%NOVELLNDK) 
ow_nwoss_root   = $(os_supp_dir)\novell 
 
# define compilers 
comp286=*wcc 
# 
# use these to override compilers if necessary 
# 
!ifdef %BWCC 
comp286 += @BWCC 
!endif 
 
!ifdef msc 
comp386=$(msvc_dir)\bin\cl 
!else 
comp386=*wcc386 
!ifdef %BWCC386 
comp386 += @BWCC386 
!endif 
!endif 
 
compaxp = $(nlang_root)\binnt\wccaxp 
!ifdef %BWCCAXP 
compaxp += @BWCCAXP 
!endif 
 
# 
# C++ stuff 
# 
# do not use '*' prefix because C++ MAKEFILEs already compact the cmdline 
# do not use /r or /r7/fpr because C++ has no existing customer base 
 
comp286plus=wpp 
 
!ifdef msc 
comp386plus=$(msvc_dir)\bin\cl 
!else 
comp386plus=wpp386 
!endif 
 
libaxp=$(nlang_root)\binnt\wlibaxp.exe 
 
 
# define library utility 
 
!ifdef msc 
lib=$(msvc_dir)\bin\lib /MACHINE:IX86 /NOLOGO 
!else 
lib=*wlib 
!endif 
 
 
# define linker 
 
!ifdef msc 
linker=$(msvc_dir)\bin\link /MACHINE:IX86 /NOLOGO 
!else 
linker=*wlink 
!endif 
 
 
# define assemblers 
 
asm386=386asm 
asm286=optasm 
wasm=wasm 
 
 
# define resource compilers 
 
!ifdef msc 
rc = $(msdev_dir)\bin\rc 
!else 
rc = rc 
!endif 
 
wrc = wrc 
wrce = wrc -zk 
wrck = wrc -zk 
 
# define resource converter 
 
!ifdef msc 
cvtres = $(msvc_dir)\bin\cvtres /MACHINE:IX86 /NOLOGO 
!else 
cvtres = rem 
!endif 
 
# define yacc 
 
runyacc = yacc 
 
 
# 
# define directories (with trailing \) 
# 
pharlap=$(tools_root)\ 
flashtek=$(tools_root)\x32\ 
c_dir=$(lang_root)\ 
misc_h=$(tools_root)\misc_h\ 
toolsdir=$(tools_root)\ 
fddir=$(tools_root)\uiforms\ 
fdos2dir=$(tools_root)\os2forms\ 
wdisasmdir=$(build_root)\wdisasm\ 
wldir=$(build_root)\wl\ 
wvdir=$(build_root)\wv\ 
wsampledir=$(build_root)\wsample\ 
watcomdir=$(build_root)\watcom\ 
 
# 
# Why the duplicates ? 
# 
sdkdir=$(build_root)\sdk 
wresdir=$(build_root)sdk\rc\wres 
# 
# define directories (without trailing \) 
# 
 
win386dir=$(build_root)\win386 
batchdir=$(build_root)\idebatch 
wclassdir=$(build_root)\wclass 
waxsvr_dir=$(build_root)\waxsvr 
uidir=$(build_root)\ui 
guidir=$(build_root)\gui 
auidir=$(build_root)\aui 
altsym_dir=$(build_root)\altsym 
startup=$(build_root)\src\startup 
ecsdir=$(tools_root)\ecslib 
plsdir=$(tools_root)\dilib 
adsdir=$(tools_root)\adslib 
rsilib=$(tools_root)\rsilib 
nwos2dir=$(tools_root)\nwos2lib 
#nwdir=$(tools_root)\nwclib 
#nwsrc=$(tools_root)\src 
#nw40src=$(tools_root)\nw40src 
#nw40dir=$(tools_root)\nw40clib 
new_clib=$(build_root)\clib 
clibdir=$(new_clib) 
new_mlib=$(build_root)\mathlib 
emu386=$(build_root)\emu 
emu286=$(build_root)\emu86 
viperdir=$(build_root)\viper 
browsedir=$(build_root)\browser 
wl95_dir=$(build_root)\wl95 
nwclass_dir=$(build_root)\nwclass 
ide_dir=$(build_root)\buildeng 
 
# 
# define substructure of WATCOM project - DON'T ADD MORE. just use watcom_dir 
# 
wat_utils=$(build_root)\watcom 
watcom_nt_h=$(lang_root)\h\nt 
watcom_h=$(wat_utils)\h 
watcom_lib=$(wat_utils)\lib 
 
datactl_dir=$(tools_root)\datactl 
win_h=$(lang_root)\h\win 
asm_h=$(wat_utils)\h 
ui_h=$(build_root)\ui\h 
hdr_proj=$(build_root)\hdr 
bld_h=$(hdr_proj)\dos 
uiutil_h=$(build_root)\uiforms\util 
new_qnx_h=$(hdr_proj)\qnx 
qnx_h=$(lang_root)\qh 
oshdrs=$(watcom_h) 
wasmdir=$(build_root)\wasm 
dwarfdir=$(build_root)\dwarf 
editdll = $(build_root)\editdll 
risc_dir = $(build_root) 
 
# 
# define OS2/DOS bound app stuff 
# 
binder=$(tools_root) 
bindcalls=$(build_root)\watcom\lib\doscalls.lib 
doscalls=$(build_root)\watcom\lib\doscalls.lib 
apilib=$(build_root)\watcom\lib\api.lib 
 
os2386=$(lang_root)\lib386\os2\os2386.lib 
os2286=$(lang_root)\lib286\os2\os2.lib 
 
# 
# in order to build CLIB (replaces drive.mif/drive386.mif) 
# 
lib_drv = $(build_root) 
inc_drv = $(tools_root) 
obj_drv = $(build_root) 
 
# 
# for creating on-line help 
# 
docs_root = $(%DOC_ROOT) 
gml_root  = $(docs_root)\gml 
gmllib    = $(docs_root)\gml\syslib 
windev_dir= $(tools_root)\windev 
 
!else 
 
tools_root      = $(%TOOLDR)/tools 
nlang_root      = $(%DWATCOM) 
build_root      = $(%DEVDIR) 
utils_root      = $(build_root) 
# a good enough location for any OS specific support files that may be needed. 
os_supp_dir     = $(build_root)/os_supp 
 
# The NOVELLNDK environment variable should be added during install. If not, the default location is 
# C:\NOVELL\NDK\NWSDK. 
nwndk_root      = $(%NOVELLNDK) 
ow_nwoss_root   = $(os_supp_dir)/novell 
 
# define compilers 
comp286=*wcc 
# 
# use these to override compilers if necessary 
# 
!ifdef %BWCC 
comp286 += @BWCC 
!endif 
 
!ifdef gcc 
comp386=gcc 
!else 
comp386=*wcc386 
!ifdef %BWCC386 
comp386 += @BWCC386 
!endif 
!endif 
 
compaxp = $(nlang_root)/binnt/wccaxp 
!ifdef %BWCCAXP 
compaxp += @BWCCAXP 
!endif 
 
# 
# C++ stuff 
# 
# do not use '*' prefix because C++ MAKEFILEs already compact the cmdline 
# do not use /r or /r7/fpr because C++ has no existing customer base 
 
comp286plus=wpp 
 
!ifdef gcc 
comp386plus=ld 
!else 
comp386plus=wpp386 
!endif 
 
libaxp=$(nlang_root)/binnt/wlibaxp.exe 
 
 
# define library utility 
 
!ifdef gcc 
lib=ar 
!else 
lib=*wlib 
!endif 
 
 
# define linker 
 
!ifdef gcc 
linker=ld 
!else 
linker=*wlink 
!endif 
 
 
# define assemblers 
 
asm386=386asm 
asm286=optasm 
wasm=wasm 
 
 
# define resource compilers 
 
rc = rc 
wrc = wrc 
wrce = wrc -zk 
wrck = wrc -zk 
 
# define resource converter 
 
cvtres = rem 
 
# define yacc 
 
runyacc = wyacc 
 
 
# 
# define directories (with trailing \) 
# 
pharlap=$(tools_root)/ 
flashtek=$(tools_root)/x32/ 
c_dir=$(lang_root)/ 
misc_h=$(tools_root)/misc_h/ 
toolsdir=$(tools_root)/ 
fddir=$(tools_root)/uiforms/ 
fdos2dir=$(tools_root)/os2forms/ 
wdisasmdir=$(build_root)/wdisasm/ 
wldir=$(build_root)/wl/ 
wvdir=$(build_root)/wv/ 
wsampledir=$(build_root)/wsample/ 
watcomdir=$(build_root)/watcom/ 
 
# 
# Why the duplicates ? 
# 
sdkdir=$(build_root)/sdk 
wresdir=$(build_root)sdk/rc/wres 
# 
# define directories (without trailing /) 
# 
bin_root_wv=$(build_root)/bin 
win386dir=$(build_root)/win386 
batchdir=$(build_root)/idebatch 
wclassdir=$(build_root)/wclass 
waxsvr_dir=$(build_root)/waxsvr 
uidir=$(build_root)/ui 
guidir=$(build_root)/gui 
auidir=$(build_root)/aui 
altsym_dir=$(build_root)/altsym 
startup=$(build_root)/src/startup 
new_clib=$(build_root)/clib 
clibdir=$(new_clib) 
new_mlib=$(build_root)/mathlib 
emu386=$(build_root)/emu 
emu286=$(build_root)/emu86 
viperdir=$(build_root)/viper 
browsedir=$(build_root)/browser 
wl95_dir=$(build_root)/wl95 
nwclass_dir=$(build_root)/nwclass 
ide_dir=$(build_root)/buildeng 
 
# 
# define substructure of WATCOM project - DON'T ADD MORE. just use watcom_dir 
# 
wat_utils=$(build_root)/watcom 
watcom_nt_h=$(lang_root)/h/nt 
watcom_h=$(wat_utils)/h 
watcom_lib=$(wat_utils)/lib 
 
win_h=$(lang_root)/h/win 
asm_h=$(wat_utils)/h 
ui_h=$(build_root)/ui/h 
hdr_proj=$(build_root)/hdr 
bld_h=$(hdr_proj)/dos 
uiutil_h=$(build_root)/uiforms/util 
new_qnx_h=$(hdr_proj)/qnx 
qnx_h=$(lang_root)/qh 
oshdrs=$(watcom_h) 
wasmdir=$(build_root)/wasm 
dwarfdir=$(build_root)/dwarf 
editdll = $(build_root)/editdll 
risc_dir = $(build_root) 
 
# 
# define OS2/DOS bound app stuff 
# 
binder=$(tools_root) 
bindcalls=$(build_root)/watcom/lib/doscalls.lib 
doscalls=$(build_root)/watcom/lib/doscalls.lib 
apilib=$(build_root)/watcom/lib/api.lib 
 
os2386=$(lang_root)/lib386/os2/os2386.lib 
os2286=$(lang_root)/lib286/os2/os2.lib 
 
lib_drv = $(build_root) 
inc_drv = $(tools_root) 
obj_drv = $(build_root) 
 
# 
# for creating on-line help 
# 
docs_root = $(%DOC_ROOT) 
gml_root  = $(docs_root)/gml 
gmllib    = $(docs_root)/gml/syslib 
windev_dir= $(tools_root)/windev 
 
!endif 
 
# 
# 
# Projects that should use autodepend 
# 
# Check defrule.mif 
# 
# format is projectname_autodepends 
# 
cg_autodepends = .AUTODEPEND 
cc_version = tree 
 
wlink_autodepends = .AUTODEPEND 
wasm_autodepends = .AUTODEPEND