Artifact
ead277b0fcbbe96a447bea749f86de1f29d70ffc:
0000: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d #---------------
0010: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0020: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0040: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a ---------------.
0050: 23 20 72 75 6c 65 73 2e 76 63 20 2d 2d 0a 23 0a # rules.vc --.#.
0060: 23 09 4d 69 63 72 6f 73 6f 66 74 20 56 69 73 75 #.Microsoft Visu
0070: 61 6c 20 43 2b 2b 20 6d 61 6b 65 66 69 6c 65 20 al C++ makefile
0080: 69 6e 63 6c 75 64 65 20 66 6f 72 20 64 65 63 6f include for deco
0090: 64 69 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 ding the command
00a0: 6c 69 6e 65 0a 23 09 6d 61 63 72 6f 73 2e 20 20 line.#.macros.
00b0: 54 68 69 73 20 66 69 6c 65 20 64 6f 65 73 20 6e This file does n
00c0: 6f 74 20 6e 65 65 64 20 65 64 69 74 69 6e 67 20 ot need editing
00d0: 74 6f 20 62 75 69 6c 64 20 54 63 6c 2e 0a 23 0a to build Tcl..#.
00e0: 23 09 54 68 69 73 20 76 65 72 73 69 6f 6e 20 69 #.This version i
00f0: 73 20 6d 6f 64 69 66 69 65 64 20 66 72 6f 6d 20 s modified from
0100: 74 68 65 20 54 63 6c 20 73 6f 75 72 63 65 20 76 the Tcl source v
0110: 65 72 73 69 6f 6e 20 74 6f 20 73 75 70 70 6f 72 ersion to suppor
0120: 74 0a 23 09 62 75 69 6c 64 69 6e 67 20 65 78 74 t.#.building ext
0130: 65 6e 73 69 6f 6e 73 20 75 73 69 6e 67 20 6e 6d ensions using nm
0140: 61 6b 65 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 ake..#.# See the
0150: 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 file "license.t
0160: 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d erms" for inform
0170: 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 ation on usage a
0180: 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f nd redistributio
0190: 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 n.# of this file
01a0: 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 , and for a DISC
01b0: 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 LAIMER OF ALL WA
01c0: 52 52 41 4e 54 49 45 53 2e 0a 23 20 0a 23 20 43 RRANTIES..# .# C
01d0: 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 opyright (c) 200
01e0: 31 2d 32 30 30 32 20 44 61 76 69 64 20 47 72 61 1-2002 David Gra
01f0: 76 65 72 65 61 75 78 2e 0a 23 20 43 6f 70 79 72 vereaux..# Copyr
0200: 69 67 68 74 20 28 63 29 20 32 30 30 33 2d 32 30 ight (c) 2003-20
0210: 30 38 20 50 61 74 72 69 63 6b 20 54 68 6f 79 74 08 Patrick Thoyt
0220: 73 0a 23 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d s.#.#-----------
0230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0240: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0250: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0260: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0270: 2d 2d 2d 0a 23 20 52 43 53 3a 20 40 28 23 29 20 ---.# RCS: @(#)
0280: 24 49 64 3a 20 72 75 6c 65 73 2e 76 63 2c 76 20 $Id: rules.vc,v
0290: 31 2e 34 20 32 30 30 38 2f 30 36 2f 31 38 20 31 1.4 2008/06/18 1
02a0: 31 3a 32 39 3a 33 37 20 70 61 74 74 68 6f 79 74 1:29:37 patthoyt
02b0: 73 20 45 78 70 20 24 0a 23 2d 2d 2d 2d 2d 2d 2d s Exp $.#-------
02c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
02d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
02e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
02f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0300: 2d 2d 2d 2d 2d 2d 2d 0a 0a 21 69 66 6e 64 65 66 -------..!ifndef
0310: 20 5f 52 55 4c 45 53 5f 56 43 0a 5f 52 55 4c 45 _RULES_VC._RULE
0320: 53 5f 56 43 20 3d 20 31 0a 0a 63 63 33 32 09 09 S_VC = 1..cc32..
0330: 3d 20 24 28 43 43 29 20 20 20 23 20 62 75 69 6c = $(CC) # buil
0340: 74 2d 69 6e 20 64 65 66 61 75 6c 74 2e 0a 6c 69 t-in default..li
0350: 6e 6b 33 32 09 09 3d 20 6c 69 6e 6b 0a 6c 69 62 nk32..= link.lib
0360: 33 32 09 09 3d 20 6c 69 62 0a 72 63 33 32 09 09 32..= lib.rc32..
0370: 3d 20 24 28 52 43 29 20 20 20 23 20 62 75 69 6c = $(RC) # buil
0380: 74 2d 69 6e 20 64 65 66 61 75 6c 74 2e 0a 0a 21 t-in default...!
0390: 69 66 6e 64 65 66 20 49 4e 53 54 41 4c 4c 44 49 ifndef INSTALLDI
03a0: 52 0a 23 23 23 20 41 73 73 75 6d 65 20 74 68 65 R.### Assume the
03b0: 20 6e 6f 72 6d 61 6c 20 64 65 66 61 75 6c 74 2e normal default.
03c0: 0a 5f 49 4e 53 54 41 4c 4c 44 49 52 09 3d 20 43 ._INSTALLDIR.= C
03d0: 3a 5c 50 72 6f 67 72 61 6d 20 46 69 6c 65 73 5c :\Program Files\
03e0: 54 63 6c 0a 21 65 6c 73 65 0a 23 23 23 20 46 69 Tcl.!else.### Fi
03f0: 78 20 74 68 65 20 70 61 74 68 20 73 65 70 61 72 x the path separ
0400: 61 74 6f 72 73 2e 0a 5f 49 4e 53 54 41 4c 4c 44 ators.._INSTALLD
0410: 49 52 09 3d 20 24 28 49 4e 53 54 41 4c 4c 44 49 IR.= $(INSTALLDI
0420: 52 3a 2f 3d 5c 29 0a 21 65 6e 64 69 66 0a 0a 21 R:/=\).!endif..!
0430: 69 66 6e 64 65 66 20 4d 41 43 48 49 4e 45 0a 21 ifndef MACHINE.!
0440: 69 66 20 22 24 28 43 50 55 29 22 20 3d 3d 20 22 if "$(CPU)" == "
0450: 22 20 7c 7c 20 22 24 28 43 50 55 29 22 20 3d 3d " || "$(CPU)" ==
0460: 20 22 69 33 38 36 22 0a 4d 41 43 48 49 4e 45 20 "i386".MACHINE
0470: 20 20 20 20 20 20 20 20 3d 20 49 58 38 36 0a 21 = IX86.!
0480: 65 6c 73 65 0a 4d 41 43 48 49 4e 45 20 20 20 20 else.MACHINE
0490: 20 20 20 20 20 3d 20 24 28 43 50 55 29 0a 21 65 = $(CPU).!e
04a0: 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 21 69 66 ndif.!endif..!if
04b0: 6e 64 65 66 20 43 46 47 5f 45 4e 43 4f 44 49 4e ndef CFG_ENCODIN
04c0: 47 0a 43 46 47 5f 45 4e 43 4f 44 49 4e 47 09 3d G.CFG_ENCODING.=
04d0: 20 5c 22 63 70 31 32 35 32 5c 22 0a 21 65 6e 64 \"cp1252\".!end
04e0: 69 66 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d if..#-----------
04f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0510: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a ---------------.
0520: 23 20 53 65 74 20 74 68 65 20 70 72 6f 70 65 72 # Set the proper
0530: 20 63 6f 70 79 20 6d 65 74 68 6f 64 20 74 6f 20 copy method to
0540: 61 76 6f 69 64 20 6f 76 65 72 77 72 69 74 65 20 avoid overwrite
0550: 71 75 65 73 74 69 6f 6e 73 0a 23 20 74 6f 20 74 questions.# to t
0560: 68 65 20 75 73 65 72 20 77 68 65 6e 20 63 6f 70 he user when cop
0570: 79 69 6e 67 20 66 69 6c 65 73 20 61 6e 64 20 73 ying files and s
0580: 65 6c 65 63 74 69 6e 67 20 74 68 65 20 72 69 67 electing the rig
0590: 68 74 0a 23 20 22 64 65 6c 65 74 65 20 61 6c 6c ht.# "delete all
05a0: 22 20 6d 65 74 68 6f 64 2e 0a 23 2d 2d 2d 2d 2d " method..#-----
05b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
05c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
05d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
05e0: 2d 2d 2d 2d 2d 0a 0a 21 69 66 20 22 24 28 4f 53 -----..!if "$(OS
05f0: 29 22 20 3d 3d 20 22 57 69 6e 64 6f 77 73 5f 4e )" == "Windows_N
0600: 54 22 0a 52 4d 44 49 52 09 3d 20 72 6d 64 69 72 T".RMDIR.= rmdir
0610: 20 2f 53 20 2f 51 0a 45 52 52 4e 55 4c 4c 20 20 /S /Q.ERRNULL
0620: 3d 20 32 3e 4e 55 4c 0a 21 69 66 20 21 5b 76 65 = 2>NUL.!if ![ve
0630: 72 20 7c 20 66 69 6e 64 20 22 34 2e 30 22 20 3e r | find "4.0" >
0640: 20 6e 75 6c 5d 0a 43 50 59 09 3d 20 65 63 68 6f nul].CPY.= echo
0650: 20 79 20 7c 20 78 63 6f 70 79 20 2f 69 20 3e 4e y | xcopy /i >N
0660: 55 4c 0a 43 4f 50 59 09 3d 20 63 6f 70 79 20 3e UL.COPY.= copy >
0670: 4e 55 4c 0a 21 65 6c 73 65 0a 43 50 59 09 3d 20 NUL.!else.CPY.=
0680: 78 63 6f 70 79 20 2f 69 20 2f 79 20 3e 4e 55 4c xcopy /i /y >NUL
0690: 0a 43 4f 50 59 09 3d 20 63 6f 70 79 20 2f 79 20 .COPY.= copy /y
06a0: 3e 4e 55 4c 0a 21 65 6e 64 69 66 0a 21 65 6c 73 >NUL.!endif.!els
06b0: 65 20 23 20 22 24 28 4f 53 29 22 20 21 3d 20 22 e # "$(OS)" != "
06c0: 57 69 6e 64 6f 77 73 5f 4e 54 22 0a 43 50 59 09 Windows_NT".CPY.
06d0: 3d 20 78 63 6f 70 79 20 2f 69 20 3e 5f 4a 55 4e = xcopy /i >_JUN
06e0: 4b 2e 4f 55 54 20 23 20 4f 6e 20 57 69 6e 39 38 K.OUT # On Win98
06f0: 20 4e 55 4c 20 64 6f 65 73 20 6e 6f 74 20 77 6f NUL does not wo
0700: 72 6b 20 68 65 72 65 2e 0a 43 4f 50 59 09 3d 20 rk here..COPY.=
0710: 63 6f 70 79 20 3e 5f 4a 55 4e 4b 2e 4f 55 54 20 copy >_JUNK.OUT
0720: 23 20 4f 6e 20 57 69 6e 39 38 20 4e 55 4c 20 64 # On Win98 NUL d
0730: 6f 65 73 20 6e 6f 74 20 77 6f 72 6b 20 68 65 72 oes not work her
0740: 65 2e 0a 52 4d 44 49 52 09 3d 20 64 65 6c 74 72 e..RMDIR.= deltr
0750: 65 65 20 2f 59 0a 4e 55 4c 4c 20 20 20 20 3d 20 ee /Y.NULL =
0760: 5c 4e 55 4c 20 23 20 55 73 65 64 20 69 6e 20 74 \NUL # Used in t
0770: 65 73 74 69 6e 67 20 64 69 72 65 63 74 6f 72 79 esting directory
0780: 20 65 78 69 73 74 65 6e 63 65 0a 45 52 52 4e 55 existence.ERRNU
0790: 4c 4c 20 3d 20 3e 4e 55 4c 20 23 20 57 69 6e 39 LL = >NUL # Win9
07a0: 78 20 73 68 65 6c 6c 20 63 61 6e 6e 6f 74 20 72 x shell cannot r
07b0: 65 64 69 72 65 63 74 20 73 74 64 65 72 72 0a 21 edirect stderr.!
07c0: 65 6e 64 69 66 0a 4d 4b 44 49 52 20 20 20 3d 20 endif.MKDIR =
07d0: 6d 6b 64 69 72 0a 0a 21 6d 65 73 73 61 67 65 20 mkdir..!message
07e0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
07f0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0800: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0810: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0820: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a ===============.
0830: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d .#--------------
0840: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0860: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 62 ------------.# b
0870: 75 69 6c 64 20 74 68 65 20 68 65 6c 70 65 72 20 uild the helper
0880: 61 70 70 20 77 65 20 6e 65 65 64 20 74 6f 20 6f app we need to o
0890: 76 65 72 63 6f 6d 65 20 6e 6d 61 6b 65 27 73 20 vercome nmake's
08a0: 6c 69 6d 69 74 69 6e 67 0a 23 20 65 6e 76 69 72 limiting.# envir
08b0: 6f 6e 6d 65 6e 74 2e 0a 23 2d 2d 2d 2d 2d 2d 2d onment..#-------
08c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
08d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
08e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
08f0: 2d 2d 2d 0a 0a 21 69 66 20 21 65 78 69 73 74 28 ---..!if !exist(
0900: 6e 6d 61 6b 65 68 6c 70 2e 65 78 65 29 0a 21 69 nmakehlp.exe).!i
0910: 66 20 5b 24 28 63 63 33 32 29 20 2d 6e 6f 6c 6f f [$(cc32) -nolo
0920: 67 6f 20 6e 6d 61 6b 65 68 6c 70 2e 63 20 2d 6c go nmakehlp.c -l
0930: 69 6e 6b 20 2d 73 75 62 73 79 73 74 65 6d 3a 63 ink -subsystem:c
0940: 6f 6e 73 6f 6c 65 20 3e 20 6e 75 6c 5d 0a 21 65 onsole > nul].!e
0950: 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 23 2d 2d ndif.!endif..#--
0960: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0970: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0980: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0990: 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 65 73 74 20 --------.# Test
09a0: 66 6f 72 20 63 6f 6d 70 69 6c 65 72 20 66 65 61 for compiler fea
09b0: 74 75 72 65 73 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d tures.#---------
09c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
09d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
09e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
09f0: 2d 0a 0a 23 23 23 20 74 65 73 74 20 66 6f 72 20 -..### test for
0a00: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 0a 21 69 optimizations.!i
0a10: 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 20 2d f [nmakehlp -c -
0a20: 4f 74 5d 0a 21 6d 65 73 73 61 67 65 20 2a 2a 2a Ot].!message ***
0a30: 20 43 6f 6d 70 69 6c 65 72 20 68 61 73 20 27 4f Compiler has 'O
0a40: 70 74 69 6d 69 7a 61 74 69 6f 6e 73 27 0a 4f 50 ptimizations'.OP
0a50: 54 49 4d 49 5a 49 4e 47 09 3d 20 31 0a 21 65 6c TIMIZING.= 1.!el
0a60: 73 65 0a 21 6d 65 73 73 61 67 65 20 2a 2a 2a 20 se.!message ***
0a70: 43 6f 6d 70 69 6c 65 72 20 64 6f 65 73 20 6e 6f Compiler does no
0a80: 74 20 68 61 76 65 20 27 4f 70 74 69 6d 69 7a 61 t have 'Optimiza
0a90: 74 69 6f 6e 73 27 0a 4f 50 54 49 4d 49 5a 49 4e tions'.OPTIMIZIN
0aa0: 47 09 3d 20 30 0a 21 65 6e 64 69 66 0a 0a 4f 50 G.= 0.!endif..OP
0ab0: 54 49 4d 49 5a 41 54 49 4f 4e 53 20 20 3d 0a 0a TIMIZATIONS =..
0ac0: 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 !if [nmakehlp -c
0ad0: 20 2d 4f 74 5d 0a 4f 50 54 49 4d 49 5a 41 54 49 -Ot].OPTIMIZATI
0ae0: 4f 4e 53 20 20 3d 20 24 28 4f 50 54 49 4d 49 5a ONS = $(OPTIMIZ
0af0: 41 54 49 4f 4e 53 29 20 2d 4f 74 0a 21 65 6e 64 ATIONS) -Ot.!end
0b00: 69 66 0a 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c if..!if [nmakehl
0b10: 70 20 2d 63 20 2d 4f 69 5d 0a 4f 50 54 49 4d 49 p -c -Oi].OPTIMI
0b20: 5a 41 54 49 4f 4e 53 20 20 3d 20 24 28 4f 50 54 ZATIONS = $(OPT
0b30: 49 4d 49 5a 41 54 49 4f 4e 53 29 20 2d 4f 69 0a IMIZATIONS) -Oi.
0b40: 21 65 6e 64 69 66 0a 0a 21 69 66 20 5b 6e 6d 61 !endif..!if [nma
0b50: 6b 65 68 6c 70 20 2d 63 20 2d 4f 70 5d 0a 4f 50 kehlp -c -Op].OP
0b60: 54 49 4d 49 5a 41 54 49 4f 4e 53 20 20 3d 20 24 TIMIZATIONS = $
0b70: 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 20 (OPTIMIZATIONS)
0b80: 2d 4f 70 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 -Op.!endif..!if
0b90: 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 20 2d 66 70 [nmakehlp -c -fp
0ba0: 3a 73 74 72 69 63 74 5d 0a 4f 50 54 49 4d 49 5a :strict].OPTIMIZ
0bb0: 41 54 49 4f 4e 53 20 20 3d 20 24 28 4f 50 54 49 ATIONS = $(OPTI
0bc0: 4d 49 5a 41 54 49 4f 4e 53 29 20 2d 66 70 3a 73 MIZATIONS) -fp:s
0bd0: 74 72 69 63 74 0a 21 65 6e 64 69 66 0a 0a 21 69 trict.!endif..!i
0be0: 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 20 2d f [nmakehlp -c -
0bf0: 47 73 5d 0a 4f 50 54 49 4d 49 5a 41 54 49 4f 4e Gs].OPTIMIZATION
0c00: 53 20 20 3d 20 24 28 4f 50 54 49 4d 49 5a 41 54 S = $(OPTIMIZAT
0c10: 49 4f 4e 53 29 20 2d 47 73 0a 21 65 6e 64 69 66 IONS) -Gs.!endif
0c20: 0a 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 ..!if [nmakehlp
0c30: 2d 63 20 2d 47 53 5d 0a 4f 50 54 49 4d 49 5a 41 -c -GS].OPTIMIZA
0c40: 54 49 4f 4e 53 20 20 3d 20 24 28 4f 50 54 49 4d TIONS = $(OPTIM
0c50: 49 5a 41 54 49 4f 4e 53 29 20 2d 47 53 0a 21 65 IZATIONS) -GS.!e
0c60: 6e 64 69 66 0a 0a 21 69 66 20 5b 6e 6d 61 6b 65 ndif..!if [nmake
0c70: 68 6c 70 20 2d 63 20 2d 47 4c 5d 0a 4f 50 54 49 hlp -c -GL].OPTI
0c80: 4d 49 5a 41 54 49 4f 4e 53 20 20 3d 20 24 28 4f MIZATIONS = $(O
0c90: 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 20 2d 47 PTIMIZATIONS) -G
0ca0: 4c 0a 21 65 6e 64 69 66 0a 0a 44 45 42 55 47 46 L.!endif..DEBUGF
0cb0: 4c 41 47 53 20 20 20 20 20 3d 0a 0a 21 69 66 20 LAGS =..!if
0cc0: 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 20 2d 52 54 [nmakehlp -c -RT
0cd0: 43 31 5d 0a 44 45 42 55 47 46 4c 41 47 53 20 20 C1].DEBUGFLAGS
0ce0: 20 20 20 3d 20 24 28 44 45 42 55 47 46 4c 41 47 = $(DEBUGFLAG
0cf0: 53 29 20 2d 52 54 43 31 0a 21 65 6c 73 65 69 66 S) -RTC1.!elseif
0d00: 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 20 2d 47 [nmakehlp -c -G
0d10: 5a 5d 0a 44 45 42 55 47 46 4c 41 47 53 20 20 20 Z].DEBUGFLAGS
0d20: 20 20 3d 20 24 28 44 45 42 55 47 46 4c 41 47 53 = $(DEBUGFLAGS
0d30: 29 20 2d 47 5a 0a 21 65 6e 64 69 66 0a 0a 43 4f ) -GZ.!endif..CO
0d40: 4d 50 49 4c 45 52 46 4c 41 47 53 20 20 3d 2d 57 MPILERFLAGS =-W
0d50: 33 0a 0a 23 20 49 6e 20 76 31 33 20 2d 47 4c 20 3..# In v13 -GL
0d60: 61 6e 64 20 2d 59 58 20 61 72 65 20 69 6e 63 6f and -YX are inco
0d70: 6d 70 61 74 69 62 6c 65 2e 0a 21 69 66 20 5b 6e mpatible..!if [n
0d80: 6d 61 6b 65 68 6c 70 20 2d 63 20 2d 59 58 5d 0a makehlp -c -YX].
0d90: 21 69 66 20 21 5b 6e 6d 61 6b 65 68 6c 70 20 2d !if ![nmakehlp -
0da0: 63 20 2d 47 4c 5d 0a 4f 50 54 49 4d 49 5a 41 54 c -GL].OPTIMIZAT
0db0: 49 4f 4e 53 20 20 3d 20 24 28 4f 50 54 49 4d 49 IONS = $(OPTIMI
0dc0: 5a 41 54 49 4f 4e 53 29 20 2d 59 58 0a 21 65 6e ZATIONS) -YX.!en
0dd0: 64 69 66 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 dif.!endif..!if
0de0: 22 24 28 4d 41 43 48 49 4e 45 29 22 20 3d 3d 20 "$(MACHINE)" ==
0df0: 22 49 58 38 36 22 0a 23 23 23 20 74 65 73 74 20 "IX86".### test
0e00: 66 6f 72 20 70 65 6e 74 69 75 6d 20 65 72 72 61 for pentium erra
0e10: 74 61 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 ta.!if [nmakehlp
0e20: 20 2d 63 20 2d 51 49 30 66 5d 0a 21 6d 65 73 73 -c -QI0f].!mess
0e30: 61 67 65 20 2a 2a 2a 20 43 6f 6d 70 69 6c 65 72 age *** Compiler
0e40: 20 68 61 73 20 27 50 65 6e 74 69 75 6d 20 30 78 has 'Pentium 0x
0e50: 30 66 20 66 69 78 27 0a 43 4f 4d 50 49 4c 45 52 0f fix'.COMPILER
0e60: 46 4c 41 47 53 20 20 3d 20 24 28 43 4f 4d 50 49 FLAGS = $(COMPI
0e70: 4c 45 52 46 4c 41 47 53 53 29 20 2d 51 49 30 66 LERFLAGSS) -QI0f
0e80: 0a 21 65 6c 73 65 0a 21 6d 65 73 73 61 67 65 20 .!else.!message
0e90: 2a 2a 2a 20 43 6f 6d 70 69 6c 65 72 20 64 6f 65 *** Compiler doe
0ea0: 73 20 6e 6f 74 20 68 61 76 65 20 27 50 65 6e 74 s not have 'Pent
0eb0: 69 75 6d 20 30 78 30 66 20 66 69 78 27 0a 21 65 ium 0x0f fix'.!e
0ec0: 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 21 69 66 ndif.!endif..!if
0ed0: 20 22 24 28 4d 41 43 48 49 4e 45 29 22 20 3d 3d "$(MACHINE)" ==
0ee0: 20 22 49 41 36 34 22 0a 23 23 23 20 74 65 73 74 "IA64".### test
0ef0: 20 66 6f 72 20 49 74 61 6e 69 75 6d 20 65 72 72 for Itanium err
0f00: 61 74 61 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c ata.!if [nmakehl
0f10: 70 20 2d 63 20 2d 51 49 41 36 34 5f 42 78 5d 0a p -c -QIA64_Bx].
0f20: 21 6d 65 73 73 61 67 65 20 2a 2a 2a 20 43 6f 6d !message *** Com
0f30: 70 69 6c 65 72 20 68 61 73 20 27 42 2d 73 74 65 piler has 'B-ste
0f40: 70 70 69 6e 67 20 65 72 72 61 74 61 20 77 6f 72 pping errata wor
0f50: 6b 61 72 6f 75 6e 64 73 27 0a 43 4f 4d 50 49 4c karounds'.COMPIL
0f60: 45 52 46 4c 41 47 53 20 20 20 3d 20 24 28 43 4f ERFLAGS = $(CO
0f70: 4d 50 49 4c 45 52 46 4c 41 47 53 29 20 2d 51 49 MPILERFLAGS) -QI
0f80: 41 36 34 5f 42 78 0a 21 65 6c 73 65 0a 21 6d 65 A64_Bx.!else.!me
0f90: 73 73 61 67 65 20 2a 2a 2a 20 43 6f 6d 70 69 6c ssage *** Compil
0fa0: 65 72 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 er does not have
0fb0: 20 27 42 2d 73 74 65 70 70 69 6e 67 20 65 72 72 'B-stepping err
0fc0: 61 74 61 20 77 6f 72 6b 61 72 6f 75 6e 64 73 27 ata workarounds'
0fd0: 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a .!endif.!endif..
0fe0: 21 69 66 20 22 24 28 4d 41 43 48 49 4e 45 29 22 !if "$(MACHINE)"
0ff0: 20 3d 3d 20 22 49 58 38 36 22 0a 23 23 23 20 74 == "IX86".### t
1000: 65 73 74 20 66 6f 72 20 2d 61 6c 69 67 6e 3a 34 est for -align:4
1010: 30 39 36 2c 20 77 68 65 6e 20 61 6c 69 67 6e 3a 096, when align:
1020: 35 31 32 20 77 69 6c 6c 20 64 6f 2e 0a 21 69 66 512 will do..!if
1030: 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 6c 20 2d 6f [nmakehlp -l -o
1040: 70 74 3a 6e 6f 77 69 6e 39 38 5d 0a 21 6d 65 73 pt:nowin98].!mes
1050: 73 61 67 65 20 2a 2a 2a 20 4c 69 6e 6b 65 72 20 sage *** Linker
1060: 68 61 73 20 27 57 69 6e 39 38 20 61 6c 69 67 6e has 'Win98 align
1070: 6d 65 6e 74 20 70 72 6f 62 6c 65 6d 27 0a 41 4c ment problem'.AL
1080: 49 47 4e 39 38 5f 48 41 43 4b 09 3d 20 31 0a 21 IGN98_HACK.= 1.!
1090: 65 6c 73 65 0a 21 6d 65 73 73 61 67 65 20 2a 2a else.!message **
10a0: 2a 20 4c 69 6e 6b 65 72 20 64 6f 65 73 20 6e 6f * Linker does no
10b0: 74 20 68 61 76 65 20 27 57 69 6e 39 38 20 61 6c t have 'Win98 al
10c0: 69 67 6e 6d 65 6e 74 20 70 72 6f 62 6c 65 6d 27 ignment problem'
10d0: 0a 41 4c 49 47 4e 39 38 5f 48 41 43 4b 09 3d 20 .ALIGN98_HACK.=
10e0: 30 0a 21 65 6e 64 69 66 0a 21 65 6c 73 65 0a 41 0.!endif.!else.A
10f0: 4c 49 47 4e 39 38 5f 48 41 43 4b 09 3d 20 30 0a LIGN98_HACK.= 0.
1100: 21 65 6e 64 69 66 0a 0a 4c 49 4e 4b 45 52 46 4c !endif..LINKERFL
1110: 41 47 53 20 20 20 20 20 3d 0a 0a 21 69 66 20 5b AGS =..!if [
1120: 6e 6d 61 6b 65 68 6c 70 20 2d 6c 20 2d 6c 74 63 nmakehlp -l -ltc
1130: 67 5d 0a 4c 49 4e 4b 45 52 46 4c 41 47 53 20 20 g].LINKERFLAGS
1140: 20 20 20 3d 2d 6c 74 63 67 0a 21 65 6e 64 69 66 =-ltcg.!endif
1150: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ..#-------------
1160: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1170: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1180: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 -------------.#
1190: 4d 53 56 43 38 20 28 73 68 69 70 73 20 77 69 74 MSVC8 (ships wit
11a0: 68 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 20 h Visual Studio
11b0: 32 30 30 35 29 20 67 65 6e 65 72 61 74 65 73 20 2005) generates
11c0: 61 20 6d 61 6e 69 66 65 73 74 0a 23 20 66 69 6c a manifest.# fil
11d0: 65 20 74 68 61 74 20 77 65 20 73 68 6f 75 6c 64 e that we should
11e0: 20 6c 69 6e 6b 20 69 6e 74 6f 20 74 68 65 20 62 link into the b
11f0: 69 6e 61 72 69 65 73 2e 20 54 68 69 73 20 69 73 inaries. This is
1200: 20 68 6f 77 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d how..#---------
1210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1220: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1240: 2d 0a 0a 5f 56 43 5f 4d 41 4e 49 46 45 53 54 5f -.._VC_MANIFEST_
1250: 45 4d 42 45 44 5f 45 58 45 3d 0a 5f 56 43 5f 4d EMBED_EXE=._VC_M
1260: 41 4e 49 46 45 53 54 5f 45 4d 42 45 44 5f 44 4c ANIFEST_EMBED_DL
1270: 4c 3d 0a 56 43 56 45 52 3d 30 0a 21 69 66 20 21 L=.VCVER=0.!if !
1280: 5b 65 63 68 6f 20 56 43 56 45 52 53 49 4f 4e 3d [echo VCVERSION=
1290: 5f 4d 53 43 5f 56 45 52 20 3e 20 76 65 72 63 6c _MSC_VER > vercl
12a0: 2e 78 5d 20 5c 0a 20 20 20 20 26 26 20 21 5b 63 .x] \. && ![c
12b0: 6c 20 2d 6e 6f 6c 6f 67 6f 20 2d 54 43 20 2d 50 l -nologo -TC -P
12c0: 20 76 65 72 63 6c 2e 78 20 24 28 45 52 52 4e 55 vercl.x $(ERRNU
12d0: 4c 4c 29 5d 0a 21 69 6e 63 6c 75 64 65 20 76 65 LL)].!include ve
12e0: 72 63 6c 2e 69 0a 21 69 66 20 24 28 56 43 56 45 rcl.i.!if $(VCVE
12f0: 52 53 49 4f 4e 29 20 3e 3d 20 31 35 30 30 0a 56 RSION) >= 1500.V
1300: 43 56 45 52 3d 39 0a 21 65 6c 73 65 69 66 20 24 CVER=9.!elseif $
1310: 28 56 43 56 45 52 53 49 4f 4e 29 20 3e 3d 20 31 (VCVERSION) >= 1
1320: 34 30 30 0a 56 43 56 45 52 3d 38 0a 21 65 6c 73 400.VCVER=8.!els
1330: 65 69 66 20 24 28 56 43 56 45 52 53 49 4f 4e 29 eif $(VCVERSION)
1340: 20 3e 3d 20 31 33 30 30 0a 56 43 56 45 52 3d 37 >= 1300.VCVER=7
1350: 0a 21 65 6c 73 65 69 66 20 24 28 56 43 56 45 52 .!elseif $(VCVER
1360: 53 49 4f 4e 29 20 3e 3d 20 31 32 30 30 0a 56 43 SION) >= 1200.VC
1370: 56 45 52 3d 36 0a 21 65 6e 64 69 66 0a 21 65 6e VER=6.!endif.!en
1380: 64 69 66 0a 0a 23 20 53 69 6e 63 65 20 4d 53 56 dif..# Since MSV
1390: 43 38 20 77 65 20 6d 75 73 74 20 64 65 61 6c 20 C8 we must deal
13a0: 77 69 74 68 20 6d 61 6e 69 66 65 73 74 20 72 65 with manifest re
13b0: 73 6f 75 72 63 65 73 2e 0a 21 69 66 20 24 28 56 sources..!if $(V
13c0: 43 56 45 52 53 49 4f 4e 29 20 3e 3d 20 31 34 30 CVERSION) >= 140
13d0: 30 0a 5f 56 43 5f 4d 41 4e 49 46 45 53 54 5f 45 0._VC_MANIFEST_E
13e0: 4d 42 45 44 5f 45 58 45 3d 69 66 20 65 78 69 73 MBED_EXE=if exis
13f0: 74 20 24 40 2e 6d 61 6e 69 66 65 73 74 20 6d 74 t $@.manifest mt
1400: 20 2d 6e 6f 6c 6f 67 6f 20 2d 6d 61 6e 69 66 65 -nologo -manife
1410: 73 74 20 24 40 2e 6d 61 6e 69 66 65 73 74 20 2d st $@.manifest -
1420: 6f 75 74 70 75 74 72 65 73 6f 75 72 63 65 3a 24 outputresource:$
1430: 40 3b 31 0a 5f 56 43 5f 4d 41 4e 49 46 45 53 54 @;1._VC_MANIFEST
1440: 5f 45 4d 42 45 44 5f 44 4c 4c 3d 69 66 20 65 78 _EMBED_DLL=if ex
1450: 69 73 74 20 24 40 2e 6d 61 6e 69 66 65 73 74 20 ist $@.manifest
1460: 6d 74 20 2d 6e 6f 6c 6f 67 6f 20 2d 6d 61 6e 69 mt -nologo -mani
1470: 66 65 73 74 20 24 40 2e 6d 61 6e 69 66 65 73 74 fest $@.manifest
1480: 20 2d 6f 75 74 70 75 74 72 65 73 6f 75 72 63 65 -outputresource
1490: 3a 24 40 3b 32 0a 21 65 6e 64 69 66 0a 0a 23 2d :$@;2.!endif..#-
14a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
14b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
14c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
14d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 44 65 63 6f ---------.# Deco
14e0: 64 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 72 de the options r
14f0: 65 71 75 65 73 74 65 64 2e 0a 23 2d 2d 2d 2d 2d equested..#-----
1500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1510: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1520: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1530: 2d 2d 2d 2d 2d 0a 0a 21 69 66 20 22 24 28 4f 50 -----..!if "$(OP
1540: 54 53 29 22 20 3d 3d 20 22 22 20 7c 7c 20 5b 6e TS)" == "" || [n
1550: 6d 61 6b 65 68 6c 70 20 2d 66 20 22 24 28 4f 50 makehlp -f "$(OP
1560: 54 53 29 22 20 22 6e 6f 6e 65 22 5d 0a 53 54 41 TS)" "none"].STA
1570: 54 49 43 5f 42 55 49 4c 44 09 3d 20 30 0a 54 43 TIC_BUILD.= 0.TC
1580: 4c 5f 54 48 52 45 41 44 53 09 3d 20 31 0a 44 45 L_THREADS.= 1.DE
1590: 42 55 47 09 09 3d 20 30 0a 50 52 4f 46 49 4c 45 BUG..= 0.PROFILE
15a0: 09 09 3d 20 30 0a 4d 53 56 43 52 54 09 09 3d 20 ..= 0.MSVCRT..=
15b0: 30 0a 4c 4f 49 4d 50 41 43 54 09 3d 20 30 0a 54 0.LOIMPACT.= 0.T
15c0: 43 4c 5f 55 53 45 5f 53 54 41 54 49 43 5f 50 41 CL_USE_STATIC_PA
15d0: 43 4b 41 47 45 53 09 3d 20 30 0a 55 53 45 5f 54 CKAGES.= 0.USE_T
15e0: 48 52 45 41 44 5f 41 4c 4c 4f 43 20 3d 20 31 0a HREAD_ALLOC = 1.
15f0: 55 53 45 5f 54 48 52 45 41 44 5f 53 54 4f 52 41 USE_THREAD_STORA
1600: 47 45 20 3d 20 31 0a 55 4e 43 48 45 43 4b 45 44 GE = 1.UNCHECKED
1610: 20 20 20 20 20 20 20 3d 20 30 0a 21 65 6c 73 65 = 0.!else
1620: 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d .!if [nmakehlp -
1630: 66 20 24 28 4f 50 54 53 29 20 22 73 74 61 74 69 f $(OPTS) "stati
1640: 63 22 5d 0a 21 6d 65 73 73 61 67 65 20 2a 2a 2a c"].!message ***
1650: 20 44 6f 69 6e 67 20 73 74 61 74 69 63 0a 53 54 Doing static.ST
1660: 41 54 49 43 5f 42 55 49 4c 44 09 3d 20 31 0a 21 ATIC_BUILD.= 1.!
1670: 65 6c 73 65 0a 53 54 41 54 49 43 5f 42 55 49 4c else.STATIC_BUIL
1680: 44 09 3d 20 30 0a 21 65 6e 64 69 66 0a 21 69 66 D.= 0.!endif.!if
1690: 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 24 28 [nmakehlp -f $(
16a0: 4f 50 54 53 29 20 22 6d 73 76 63 72 74 22 5d 0a OPTS) "msvcrt"].
16b0: 21 6d 65 73 73 61 67 65 20 2a 2a 2a 20 44 6f 69 !message *** Doi
16c0: 6e 67 20 6d 73 76 63 72 74 0a 4d 53 56 43 52 54 ng msvcrt.MSVCRT
16d0: 09 09 3d 20 31 0a 21 65 6c 73 65 0a 4d 53 56 43 ..= 1.!else.MSVC
16e0: 52 54 09 09 3d 20 30 0a 21 65 6e 64 69 66 0a 21 RT..= 0.!endif.!
16f0: 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 if [nmakehlp -f
1700: 24 28 4f 50 54 53 29 20 22 73 74 61 74 69 63 70 $(OPTS) "staticp
1710: 6b 67 22 5d 0a 21 6d 65 73 73 61 67 65 20 2a 2a kg"].!message **
1720: 2a 20 44 6f 69 6e 67 20 73 74 61 74 69 63 70 6b * Doing staticpk
1730: 67 0a 54 43 4c 5f 55 53 45 5f 53 54 41 54 49 43 g.TCL_USE_STATIC
1740: 5f 50 41 43 4b 41 47 45 53 09 3d 20 31 0a 21 65 _PACKAGES.= 1.!e
1750: 6c 73 65 0a 54 43 4c 5f 55 53 45 5f 53 54 41 54 lse.TCL_USE_STAT
1760: 49 43 5f 50 41 43 4b 41 47 45 53 09 3d 20 30 0a IC_PACKAGES.= 0.
1770: 21 65 6e 64 69 66 0a 21 69 66 20 5b 6e 6d 61 6b !endif.!if [nmak
1780: 65 68 6c 70 20 2d 66 20 24 28 4f 50 54 53 29 20 ehlp -f $(OPTS)
1790: 22 6e 6f 74 68 72 65 61 64 73 22 5d 0a 21 6d 65 "nothreads"].!me
17a0: 73 73 61 67 65 20 2a 2a 2a 20 43 6f 6d 70 69 6c ssage *** Compil
17b0: 65 20 65 78 70 6c 69 63 69 74 6c 79 20 66 6f 72 e explicitly for
17c0: 20 6e 6f 6e 2d 74 68 72 65 61 64 65 64 20 74 63 non-threaded tc
17d0: 6c 0a 54 43 4c 5f 54 48 52 45 41 44 53 09 3d 20 l.TCL_THREADS.=
17e0: 30 0a 21 65 6c 73 65 0a 54 43 4c 5f 54 48 52 45 0.!else.TCL_THRE
17f0: 41 44 53 20 20 20 20 20 3d 20 31 0a 21 65 6e 64 ADS = 1.!end
1800: 69 66 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 if.!if [nmakehlp
1810: 20 2d 66 20 24 28 4f 50 54 53 29 20 22 73 79 6d -f $(OPTS) "sym
1820: 62 6f 6c 73 22 5d 0a 21 6d 65 73 73 61 67 65 20 bols"].!message
1830: 2a 2a 2a 20 44 6f 69 6e 67 20 73 79 6d 62 6f 6c *** Doing symbol
1840: 73 0a 44 45 42 55 47 09 09 3d 20 31 0a 21 65 6c s.DEBUG..= 1.!el
1850: 73 65 0a 44 45 42 55 47 09 09 3d 20 30 0a 21 65 se.DEBUG..= 0.!e
1860: 6e 64 69 66 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 ndif.!if [nmakeh
1870: 6c 70 20 2d 66 20 24 28 4f 50 54 53 29 20 22 70 lp -f $(OPTS) "p
1880: 72 6f 66 69 6c 65 22 5d 0a 21 6d 65 73 73 61 67 rofile"].!messag
1890: 65 20 2a 2a 2a 20 44 6f 69 6e 67 20 70 72 6f 66 e *** Doing prof
18a0: 69 6c 65 0a 50 52 4f 46 49 4c 45 09 09 3d 20 31 ile.PROFILE..= 1
18b0: 0a 21 65 6c 73 65 0a 50 52 4f 46 49 4c 45 09 09 .!else.PROFILE..
18c0: 3d 20 30 0a 21 65 6e 64 69 66 0a 21 69 66 20 5b = 0.!endif.!if [
18d0: 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 24 28 4f 50 nmakehlp -f $(OP
18e0: 54 53 29 20 22 6c 6f 69 6d 70 61 63 74 22 5d 0a TS) "loimpact"].
18f0: 21 6d 65 73 73 61 67 65 20 2a 2a 2a 20 44 6f 69 !message *** Doi
1900: 6e 67 20 6c 6f 69 6d 70 61 63 74 0a 4c 4f 49 4d ng loimpact.LOIM
1910: 50 41 43 54 09 3d 20 31 0a 21 65 6c 73 65 0a 4c PACT.= 1.!else.L
1920: 4f 49 4d 50 41 43 54 09 3d 20 30 0a 21 65 6e 64 OIMPACT.= 0.!end
1930: 69 66 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 if.!if [nmakehlp
1940: 20 2d 66 20 24 28 4f 50 54 53 29 20 22 74 68 72 -f $(OPTS) "thr
1950: 64 61 6c 6c 6f 63 22 5d 0a 21 6d 65 73 73 61 67 dalloc"].!messag
1960: 65 20 2a 2a 2a 20 44 6f 69 6e 67 20 74 68 72 64 e *** Doing thrd
1970: 61 6c 6c 6f 63 0a 55 53 45 5f 54 48 52 45 41 44 alloc.USE_THREAD
1980: 5f 41 4c 4c 4f 43 20 3d 20 31 0a 21 65 6c 73 65 _ALLOC = 1.!else
1990: 0a 55 53 45 5f 54 48 52 45 41 44 5f 41 4c 4c 4f .USE_THREAD_ALLO
19a0: 43 20 3d 20 30 0a 21 65 6e 64 69 66 0a 21 69 66 C = 0.!endif.!if
19b0: 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 24 28 [nmakehlp -f $(
19c0: 4f 50 54 53 29 20 22 74 68 72 64 73 74 6f 72 61 OPTS) "thrdstora
19d0: 67 65 22 5d 0a 21 6d 65 73 73 61 67 65 20 2a 2a ge"].!message **
19e0: 2a 20 44 6f 69 6e 67 20 74 68 72 64 73 74 6f 72 * Doing thrdstor
19f0: 61 67 65 0a 55 53 45 5f 54 48 52 45 41 44 5f 53 age.USE_THREAD_S
1a00: 54 4f 52 41 47 45 20 3d 20 31 0a 21 65 6c 73 65 TORAGE = 1.!else
1a10: 0a 55 53 45 5f 54 48 52 45 41 44 5f 53 54 4f 52 .USE_THREAD_STOR
1a20: 41 47 45 20 3d 20 30 0a 21 65 6e 64 69 66 0a 21 AGE = 0.!endif.!
1a30: 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 if [nmakehlp -f
1a40: 24 28 4f 50 54 53 29 20 22 75 6e 63 68 65 63 6b $(OPTS) "uncheck
1a50: 65 64 22 5d 0a 21 6d 65 73 73 61 67 65 20 2a 2a ed"].!message **
1a60: 2a 20 44 6f 69 6e 67 20 75 6e 63 68 65 63 6b 65 * Doing unchecke
1a70: 64 0a 55 4e 43 48 45 43 4b 45 44 20 3d 20 31 0a d.UNCHECKED = 1.
1a80: 21 65 6c 73 65 0a 55 4e 43 48 45 43 4b 45 44 20 !else.UNCHECKED
1a90: 3d 20 30 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 = 0.!endif.!endi
1aa0: 66 0a 0a 0a 21 69 66 20 21 24 28 53 54 41 54 49 f...!if !$(STATI
1ab0: 43 5f 42 55 49 4c 44 29 0a 23 20 4d 61 6b 65 20 C_BUILD).# Make
1ac0: 73 75 72 65 20 77 65 20 64 6f 6e 27 74 20 62 75 sure we don't bu
1ad0: 69 6c 64 20 6f 76 65 72 6c 79 20 66 61 74 20 44 ild overly fat D
1ae0: 4c 4c 73 2e 0a 4d 53 56 43 52 54 09 09 3d 20 31 LLs..MSVCRT..= 1
1af0: 0a 23 20 57 65 20 73 68 6f 75 6c 64 6e 27 74 20 .# We shouldn't
1b00: 73 74 61 74 69 63 61 6c 6c 79 20 70 75 74 20 74 statically put t
1b10: 68 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 69 6e he extensions in
1b20: 73 69 64 65 20 74 68 65 20 73 68 65 6c 6c 20 77 side the shell w
1b30: 68 65 6e 20 64 79 6e 61 6d 69 63 2e 0a 54 43 4c hen dynamic..TCL
1b40: 5f 55 53 45 5f 53 54 41 54 49 43 5f 50 41 43 4b _USE_STATIC_PACK
1b50: 41 47 45 53 20 3d 20 30 0a 21 65 6e 64 69 66 0a AGES = 0.!endif.
1b60: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ..#-------------
1b70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1b80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1b90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 -------------.#
1ba0: 46 69 67 75 72 65 2d 6f 75 74 20 68 6f 77 20 74 Figure-out how t
1bb0: 6f 20 6e 61 6d 65 20 6f 75 72 20 69 6e 74 65 72 o name our inter
1bc0: 6d 65 64 69 61 74 65 20 61 6e 64 20 6f 75 74 70 mediate and outp
1bd0: 75 74 20 64 69 72 65 63 74 6f 72 69 65 73 2e 0a ut directories..
1be0: 23 20 57 65 20 77 6f 75 6c 64 6e 27 74 20 77 61 # We wouldn't wa
1bf0: 6e 74 20 64 69 66 66 65 72 65 6e 74 20 62 75 69 nt different bui
1c00: 6c 64 73 20 74 6f 20 75 73 65 20 74 68 65 20 73 lds to use the s
1c10: 61 6d 65 20 2e 6f 62 6a 20 66 69 6c 65 73 0a 23 ame .obj files.#
1c20: 20 62 79 20 61 63 63 69 64 65 6e 74 2e 0a 23 2d by accident..#-
1c30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1c40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1c50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1c60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 2d 2d 2d 2d ---------..#----
1c70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1c80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1c90: 2d 2d 2d 2d 0a 23 20 4e 61 6d 69 6e 67 20 63 6f ----.# Naming co
1ca0: 6e 76 65 6e 74 69 6f 6e 3a 0a 23 20 20 20 74 20 nvention:.# t
1cb0: 3d 20 66 75 6c 6c 20 74 68 72 65 61 64 20 73 75 = full thread su
1cc0: 70 70 6f 72 74 2e 0a 23 20 20 20 73 20 3d 20 73 pport..# s = s
1cd0: 74 61 74 69 63 20 6c 69 62 72 61 72 79 20 28 61 tatic library (a
1ce0: 73 20 6f 70 70 6f 73 65 64 20 74 6f 20 61 6e 0a s opposed to an.
1cf0: 23 09 69 6d 70 6f 72 74 20 6c 69 62 72 61 72 79 #.import library
1d00: 29 0a 23 20 20 20 67 20 3d 20 6c 69 6e 6b 65 64 ).# g = linked
1d10: 20 74 6f 20 74 68 65 20 64 65 62 75 67 20 65 6e to the debug en
1d20: 61 62 6c 65 64 20 43 0a 23 09 72 75 6e 2d 74 69 abled C.#.run-ti
1d30: 6d 65 2e 0a 23 20 20 20 78 20 3d 20 73 70 65 63 me..# x = spec
1d40: 69 61 6c 20 73 74 61 74 69 63 20 62 75 69 6c 64 ial static build
1d50: 20 77 68 65 6e 20 69 74 0a 23 09 6c 69 6e 6b 73 when it.#.links
1d60: 20 74 6f 20 74 68 65 20 64 79 6e 61 6d 69 63 20 to the dynamic
1d70: 43 20 72 75 6e 2d 74 69 6d 65 2e 0a 23 2d 2d 2d C run-time..#---
1d80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1d90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
1da0: 2d 2d 2d 2d 2d 0a 53 55 46 58 09 20 20 20 20 3d -----.SUFX. =
1db0: 20 73 67 78 0a 0a 21 69 66 20 24 28 44 45 42 55 sgx..!if $(DEBU
1dc0: 47 29 0a 42 55 49 4c 44 44 49 52 54 4f 50 20 3d G).BUILDDIRTOP =
1dd0: 20 44 65 62 75 67 0a 21 65 6c 73 65 0a 42 55 49 Debug.!else.BUI
1de0: 4c 44 44 49 52 54 4f 50 20 3d 20 52 65 6c 65 61 LDDIRTOP = Relea
1df0: 73 65 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 22 se.!endif..!if "
1e00: 24 28 4d 41 43 48 49 4e 45 29 22 20 21 3d 20 22 $(MACHINE)" != "
1e10: 49 58 38 36 22 0a 42 55 49 4c 44 44 49 52 54 4f IX86".BUILDDIRTO
1e20: 50 20 3d 24 28 42 55 49 4c 44 44 49 52 54 4f 50 P =$(BUILDDIRTOP
1e30: 29 5f 24 28 4d 41 43 48 49 4e 45 29 0a 21 65 6e )_$(MACHINE).!en
1e40: 64 69 66 0a 21 69 66 20 24 28 56 43 56 45 52 29 dif.!if $(VCVER)
1e50: 20 3e 20 36 0a 42 55 49 4c 44 44 49 52 54 4f 50 > 6.BUILDDIRTOP
1e60: 20 3d 24 28 42 55 49 4c 44 44 49 52 54 4f 50 29 =$(BUILDDIRTOP)
1e70: 5f 56 43 24 28 56 43 56 45 52 29 0a 21 65 6e 64 _VC$(VCVER).!end
1e80: 69 66 0a 0a 21 69 66 20 21 24 28 44 45 42 55 47 if..!if !$(DEBUG
1e90: 29 20 7c 7c 20 24 28 44 45 42 55 47 29 20 26 26 ) || $(DEBUG) &&
1ea0: 20 24 28 55 4e 43 48 45 43 4b 45 44 29 0a 53 55 $(UNCHECKED).SU
1eb0: 46 58 09 20 20 20 20 3d 20 24 28 53 55 46 58 3a FX. = $(SUFX:
1ec0: 67 3d 29 0a 21 65 6e 64 69 66 0a 0a 54 4d 50 5f g=).!endif..TMP_
1ed0: 44 49 52 46 55 4c 4c 20 3d 20 2e 5c 24 28 42 55 DIRFULL = .\$(BU
1ee0: 49 4c 44 44 49 52 54 4f 50 29 5c 24 28 50 52 4f ILDDIRTOP)\$(PRO
1ef0: 4a 45 43 54 29 5f 54 68 72 65 61 64 65 64 44 79 JECT)_ThreadedDy
1f00: 6e 61 6d 69 63 53 74 61 74 69 63 58 0a 0a 21 69 namicStaticX..!i
1f10: 66 20 21 24 28 53 54 41 54 49 43 5f 42 55 49 4c f !$(STATIC_BUIL
1f20: 44 29 0a 54 4d 50 5f 44 49 52 46 55 4c 4c 20 3d D).TMP_DIRFULL =
1f30: 20 24 28 54 4d 50 5f 44 49 52 46 55 4c 4c 3a 53 $(TMP_DIRFULL:S
1f40: 74 61 74 69 63 3d 29 0a 53 55 46 58 09 20 20 20 tatic=).SUFX.
1f50: 20 3d 20 24 28 53 55 46 58 3a 73 3d 29 0a 45 58 = $(SUFX:s=).EX
1f60: 54 09 20 20 20 20 3d 20 64 6c 6c 0a 21 69 66 20 T. = dll.!if
1f70: 24 28 4d 53 56 43 52 54 29 0a 54 4d 50 5f 44 49 $(MSVCRT).TMP_DI
1f80: 52 46 55 4c 4c 20 3d 20 24 28 54 4d 50 5f 44 49 RFULL = $(TMP_DI
1f90: 52 46 55 4c 4c 3a 58 3d 29 0a 53 55 46 58 09 20 RFULL:X=).SUFX.
1fa0: 20 20 20 3d 20 24 28 53 55 46 58 3a 78 3d 29 0a = $(SUFX:x=).
1fb0: 21 65 6e 64 69 66 0a 21 65 6c 73 65 0a 54 4d 50 !endif.!else.TMP
1fc0: 5f 44 49 52 46 55 4c 4c 20 3d 20 24 28 54 4d 50 _DIRFULL = $(TMP
1fd0: 5f 44 49 52 46 55 4c 4c 3a 44 79 6e 61 6d 69 63 _DIRFULL:Dynamic
1fe0: 3d 29 0a 45 58 54 09 20 20 20 20 3d 20 6c 69 62 =).EXT. = lib
1ff0: 0a 21 69 66 20 21 24 28 4d 53 56 43 52 54 29 0a .!if !$(MSVCRT).
2000: 54 4d 50 5f 44 49 52 46 55 4c 4c 20 3d 20 24 28 TMP_DIRFULL = $(
2010: 54 4d 50 5f 44 49 52 46 55 4c 4c 3a 58 3d 29 0a TMP_DIRFULL:X=).
2020: 53 55 46 58 09 20 20 20 20 3d 20 24 28 53 55 46 SUFX. = $(SUF
2030: 58 3a 78 3d 29 0a 21 65 6e 64 69 66 0a 21 65 6e X:x=).!endif.!en
2040: 64 69 66 0a 0a 21 69 66 20 21 24 28 54 43 4c 5f dif..!if !$(TCL_
2050: 54 48 52 45 41 44 53 29 0a 54 4d 50 5f 44 49 52 THREADS).TMP_DIR
2060: 46 55 4c 4c 20 3d 20 24 28 54 4d 50 5f 44 49 52 FULL = $(TMP_DIR
2070: 46 55 4c 4c 3a 54 68 72 65 61 64 65 64 3d 29 0a FULL:Threaded=).
2080: 53 55 46 58 09 20 20 20 20 3d 20 24 28 53 55 46 SUFX. = $(SUF
2090: 58 3a 74 3d 29 0a 21 65 6e 64 69 66 0a 0a 21 69 X:t=).!endif..!i
20a0: 66 6e 64 65 66 20 54 4d 50 5f 44 49 52 0a 54 4d fndef TMP_DIR.TM
20b0: 50 5f 44 49 52 09 20 20 20 20 3d 20 24 28 54 4d P_DIR. = $(TM
20c0: 50 5f 44 49 52 46 55 4c 4c 29 0a 21 69 66 6e 64 P_DIRFULL).!ifnd
20d0: 65 66 20 4f 55 54 5f 44 49 52 0a 4f 55 54 5f 44 ef OUT_DIR.OUT_D
20e0: 49 52 09 20 20 20 20 3d 20 2e 5c 24 28 42 55 49 IR. = .\$(BUI
20f0: 4c 44 44 49 52 54 4f 50 29 0a 21 65 6e 64 69 66 LDDIRTOP).!endif
2100: 0a 21 65 6c 73 65 0a 21 69 66 6e 64 65 66 20 4f .!else.!ifndef O
2110: 55 54 5f 44 49 52 0a 4f 55 54 5f 44 49 52 09 20 UT_DIR.OUT_DIR.
2120: 20 20 20 3d 20 24 28 54 4d 50 5f 44 49 52 29 0a = $(TMP_DIR).
2130: 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 0a !endif.!endif...
2140: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d #---------------
2150: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2160: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2170: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 44 65 -----------.# De
2180: 63 6f 64 65 20 74 68 65 20 73 74 61 74 69 73 74 code the statist
2190: 69 63 73 20 72 65 71 75 65 73 74 65 64 2e 0a 23 ics requested..#
21a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
21b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
21c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
21d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 21 69 66 20 ----------..!if
21e0: 22 24 28 53 54 41 54 53 29 22 20 3d 3d 20 22 22 "$(STATS)" == ""
21f0: 20 7c 7c 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 || [nmakehlp -f
2200: 20 22 24 28 53 54 41 54 53 29 22 20 22 6e 6f 6e "$(STATS)" "non
2210: 65 22 5d 0a 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 e"].TCL_MEM_DEBU
2220: 47 09 20 20 20 20 3d 20 30 0a 54 43 4c 5f 43 4f G. = 0.TCL_CO
2230: 4d 50 49 4c 45 5f 44 45 42 55 47 20 20 20 3d 20 MPILE_DEBUG =
2240: 30 0a 21 65 6c 73 65 0a 21 69 66 20 5b 6e 6d 61 0.!else.!if [nma
2250: 6b 65 68 6c 70 20 2d 66 20 24 28 53 54 41 54 53 kehlp -f $(STATS
2260: 29 20 22 6d 65 6d 64 62 67 22 5d 0a 21 6d 65 73 ) "memdbg"].!mes
2270: 73 61 67 65 20 2a 2a 2a 20 44 6f 69 6e 67 20 6d sage *** Doing m
2280: 65 6d 64 62 67 0a 54 43 4c 5f 4d 45 4d 5f 44 45 emdbg.TCL_MEM_DE
2290: 42 55 47 09 20 20 20 20 3d 20 31 0a 21 65 6c 73 BUG. = 1.!els
22a0: 65 0a 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 09 e.TCL_MEM_DEBUG.
22b0: 20 20 20 20 3d 20 30 0a 21 65 6e 64 69 66 0a 21 = 0.!endif.!
22c0: 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 if [nmakehlp -f
22d0: 24 28 53 54 41 54 53 29 20 22 63 6f 6d 70 64 62 $(STATS) "compdb
22e0: 67 22 5d 0a 21 6d 65 73 73 61 67 65 20 2a 2a 2a g"].!message ***
22f0: 20 44 6f 69 6e 67 20 63 6f 6d 70 64 62 67 0a 54 Doing compdbg.T
2300: 43 4c 5f 43 4f 4d 50 49 4c 45 5f 44 45 42 55 47 CL_COMPILE_DEBUG
2310: 20 20 20 3d 20 31 0a 21 65 6c 73 65 0a 54 43 4c = 1.!else.TCL
2320: 5f 43 4f 4d 50 49 4c 45 5f 44 45 42 55 47 20 20 _COMPILE_DEBUG
2330: 20 3d 20 30 0a 21 65 6e 64 69 66 0a 21 65 6e 64 = 0.!endif.!end
2340: 69 66 0a 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d if...#----------
2350: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2360: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2370: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2380: 0a 23 20 44 65 63 6f 64 65 20 74 68 65 20 63 68 .# Decode the ch
2390: 65 63 6b 73 20 72 65 71 75 65 73 74 65 64 2e 0a ecks requested..
23a0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d #---------------
23b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
23c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
23d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 21 69 66 -----------..!if
23e0: 20 22 24 28 43 48 45 43 4b 53 29 22 20 3d 3d 20 "$(CHECKS)" ==
23f0: 22 22 20 7c 7c 20 5b 6e 6d 61 6b 65 68 6c 70 20 "" || [nmakehlp
2400: 2d 66 20 22 24 28 43 48 45 43 4b 53 29 22 20 22 -f "$(CHECKS)" "
2410: 6e 6f 6e 65 22 5d 0a 54 43 4c 5f 4e 4f 5f 44 45 none"].TCL_NO_DE
2420: 50 52 45 43 41 54 45 44 09 20 20 20 20 3d 20 30 PRECATED. = 0
2430: 0a 57 41 52 4e 49 4e 47 53 09 09 20 20 20 20 3d .WARNINGS.. =
2440: 20 2d 57 33 0a 21 65 6c 73 65 0a 21 69 66 20 5b -W3.!else.!if [
2450: 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 24 28 43 48 nmakehlp -f $(CH
2460: 45 43 4b 53 29 20 22 6e 6f 64 65 70 22 5d 0a 21 ECKS) "nodep"].!
2470: 6d 65 73 73 61 67 65 20 2a 2a 2a 20 44 6f 69 6e message *** Doin
2480: 67 20 6e 6f 64 65 70 20 63 68 65 63 6b 0a 54 43 g nodep check.TC
2490: 4c 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 44 09 L_NO_DEPRECATED.
24a0: 20 20 20 20 3d 20 31 0a 21 65 6c 73 65 0a 54 43 = 1.!else.TC
24b0: 4c 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 44 09 L_NO_DEPRECATED.
24c0: 20 20 20 20 3d 20 30 0a 21 65 6e 64 69 66 0a 21 = 0.!endif.!
24d0: 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 if [nmakehlp -f
24e0: 24 28 43 48 45 43 4b 53 29 20 22 66 75 6c 6c 77 $(CHECKS) "fullw
24f0: 61 72 6e 22 5d 0a 21 6d 65 73 73 61 67 65 20 2a arn"].!message *
2500: 2a 2a 20 44 6f 69 6e 67 20 66 75 6c 6c 20 77 61 ** Doing full wa
2510: 72 6e 69 6e 67 73 20 63 68 65 63 6b 0a 57 41 52 rnings check.WAR
2520: 4e 49 4e 47 53 09 09 20 20 20 20 3d 20 2d 57 34 NINGS.. = -W4
2530: 0a 21 69 66 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d .!if [nmakehlp -
2540: 6c 20 2d 77 61 72 6e 3a 33 5d 0a 4c 49 4e 4b 45 l -warn:3].LINKE
2550: 52 46 4c 41 47 53 09 09 20 20 20 20 3d 20 24 28 RFLAGS.. = $(
2560: 4c 49 4e 4b 45 52 46 4c 41 47 53 29 20 2d 77 61 LINKERFLAGS) -wa
2570: 72 6e 3a 33 0a 21 65 6e 64 69 66 0a 21 65 6c 73 rn:3.!endif.!els
2580: 65 0a 57 41 52 4e 49 4e 47 53 09 09 20 20 20 20 e.WARNINGS..
2590: 3d 20 2d 57 33 0a 21 65 6e 64 69 66 0a 21 69 66 = -W3.!endif.!if
25a0: 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 66 20 24 28 [nmakehlp -f $(
25b0: 43 48 45 43 4b 53 29 20 22 36 34 62 69 74 22 5d CHECKS) "64bit"]
25c0: 20 26 26 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 63 && [nmakehlp -c
25d0: 20 2d 57 70 36 34 5d 0a 21 6d 65 73 73 61 67 65 -Wp64].!message
25e0: 20 2a 2a 2a 20 44 6f 69 6e 67 20 36 34 62 69 74 *** Doing 64bit
25f0: 20 70 6f 72 74 61 62 69 6c 69 74 79 20 77 61 72 portability war
2600: 6e 69 6e 67 73 0a 57 41 52 4e 49 4e 47 53 09 09 nings.WARNINGS..
2610: 20 20 20 20 3d 20 24 28 57 41 52 4e 49 4e 47 53 = $(WARNINGS
2620: 29 20 2d 57 70 36 34 0a 21 65 6e 64 69 66 0a 21 ) -Wp64.!endif.!
2630: 65 6e 64 69 66 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d endif..#--------
2640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2650: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2660: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2670: 2d 2d 0a 23 20 53 65 74 20 6f 75 72 20 64 65 66 --.# Set our def
2680: 69 6e 65 73 20 6e 6f 77 20 61 72 6d 65 64 20 77 ines now armed w
2690: 69 74 68 20 6f 75 72 20 6f 70 74 69 6f 6e 73 2e ith our options.
26a0: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d .#--------------
26b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
26c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
26d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4f 50 ------------..OP
26e0: 54 44 45 46 49 4e 45 53 09 3d 20 2d 44 54 43 4c TDEFINES.= -DTCL
26f0: 5f 43 46 47 56 41 4c 5f 45 4e 43 4f 44 49 4e 47 _CFGVAL_ENCODING
2700: 3d 24 28 43 46 47 5f 45 4e 43 4f 44 49 4e 47 29 =$(CFG_ENCODING)
2710: 20 2d 44 53 54 44 43 5f 48 45 41 44 45 52 53 0a -DSTDC_HEADERS.
2720: 0a 21 69 66 20 24 28 54 43 4c 5f 4d 45 4d 5f 44 .!if $(TCL_MEM_D
2730: 45 42 55 47 29 0a 4f 50 54 44 45 46 49 4e 45 53 EBUG).OPTDEFINES
2740: 09 3d 20 24 28 4f 50 54 44 45 46 49 4e 45 53 29 .= $(OPTDEFINES)
2750: 20 2d 44 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 -DTCL_MEM_DEBUG
2760: 0a 21 65 6e 64 69 66 0a 21 69 66 20 24 28 54 43 .!endif.!if $(TC
2770: 4c 5f 43 4f 4d 50 49 4c 45 5f 44 45 42 55 47 29 L_COMPILE_DEBUG)
2780: 0a 4f 50 54 44 45 46 49 4e 45 53 09 3d 20 24 28 .OPTDEFINES.= $(
2790: 4f 50 54 44 45 46 49 4e 45 53 29 20 2d 44 54 43 OPTDEFINES) -DTC
27a0: 4c 5f 43 4f 4d 50 49 4c 45 5f 44 45 42 55 47 20 L_COMPILE_DEBUG
27b0: 2d 44 54 43 4c 5f 43 4f 4d 50 49 4c 45 5f 53 54 -DTCL_COMPILE_ST
27c0: 41 54 53 0a 21 65 6e 64 69 66 0a 21 69 66 20 24 ATS.!endif.!if $
27d0: 28 54 43 4c 5f 54 48 52 45 41 44 53 29 0a 4f 50 (TCL_THREADS).OP
27e0: 54 44 45 46 49 4e 45 53 09 3d 20 24 28 4f 50 54 TDEFINES.= $(OPT
27f0: 44 45 46 49 4e 45 53 29 20 2d 44 54 43 4c 5f 54 DEFINES) -DTCL_T
2800: 48 52 45 41 44 53 3d 31 0a 21 69 66 20 24 28 55 HREADS=1.!if $(U
2810: 53 45 5f 54 48 52 45 41 44 5f 41 4c 4c 4f 43 29 SE_THREAD_ALLOC)
2820: 0a 4f 50 54 44 45 46 49 4e 45 53 09 3d 20 24 28 .OPTDEFINES.= $(
2830: 4f 50 54 44 45 46 49 4e 45 53 29 20 2d 44 55 53 OPTDEFINES) -DUS
2840: 45 5f 54 48 52 45 41 44 5f 41 4c 4c 4f 43 3d 31 E_THREAD_ALLOC=1
2850: 0a 21 65 6e 64 69 66 0a 21 69 66 20 24 28 55 53 .!endif.!if $(US
2860: 45 5f 54 48 52 45 41 44 5f 53 54 4f 52 41 47 45 E_THREAD_STORAGE
2870: 29 0a 4f 50 54 44 45 46 49 4e 45 53 09 3d 20 24 ).OPTDEFINES.= $
2880: 28 4f 50 54 44 45 46 49 4e 45 53 29 20 2d 44 55 (OPTDEFINES) -DU
2890: 53 45 5f 54 48 52 45 41 44 5f 53 54 4f 52 41 47 SE_THREAD_STORAG
28a0: 45 3d 31 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 E=1.!endif.!endi
28b0: 66 0a 21 69 66 20 24 28 53 54 41 54 49 43 5f 42 f.!if $(STATIC_B
28c0: 55 49 4c 44 29 0a 4f 50 54 44 45 46 49 4e 45 53 UILD).OPTDEFINES
28d0: 09 3d 20 24 28 4f 50 54 44 45 46 49 4e 45 53 29 .= $(OPTDEFINES)
28e0: 20 2d 44 53 54 41 54 49 43 5f 42 55 49 4c 44 0a -DSTATIC_BUILD.
28f0: 21 65 6e 64 69 66 0a 21 69 66 20 24 28 54 43 4c !endif.!if $(TCL
2900: 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 44 29 0a _NO_DEPRECATED).
2910: 4f 50 54 44 45 46 49 4e 45 53 09 3d 20 24 28 4f OPTDEFINES.= $(O
2920: 50 54 44 45 46 49 4e 45 53 29 20 2d 44 54 43 4c PTDEFINES) -DTCL
2930: 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 44 0a 21 _NO_DEPRECATED.!
2940: 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 44 45 42 endif..!if $(DEB
2950: 55 47 29 0a 4f 50 54 44 45 46 49 4e 45 53 09 3d UG).OPTDEFINES.=
2960: 20 24 28 4f 50 54 44 45 46 49 4e 45 53 29 20 2d $(OPTDEFINES) -
2970: 44 54 43 4c 5f 43 46 47 5f 44 45 42 55 47 0a 21 DTCL_CFG_DEBUG.!
2980: 65 6c 73 65 69 66 20 24 28 4f 50 54 49 4d 49 5a elseif $(OPTIMIZ
2990: 49 4e 47 29 0a 4f 50 54 44 45 46 49 4e 45 53 09 ING).OPTDEFINES.
29a0: 3d 20 24 28 4f 50 54 44 45 46 49 4e 45 53 29 20 = $(OPTDEFINES)
29b0: 2d 44 54 43 4c 5f 43 46 47 5f 4f 50 54 49 4d 49 -DTCL_CFG_OPTIMI
29c0: 5a 45 44 0a 21 65 6e 64 69 66 0a 21 69 66 20 24 ZED.!endif.!if $
29d0: 28 50 52 4f 46 49 4c 45 29 0a 4f 50 54 44 45 46 (PROFILE).OPTDEF
29e0: 49 4e 45 53 09 3d 20 24 28 4f 50 54 44 45 46 49 INES.= $(OPTDEFI
29f0: 4e 45 53 29 20 2d 44 54 43 4c 5f 43 46 47 5f 50 NES) -DTCL_CFG_P
2a00: 52 4f 46 49 4c 45 44 0a 21 65 6e 64 69 66 0a 21 ROFILED.!endif.!
2a10: 69 66 20 22 24 28 4d 41 43 48 49 4e 45 29 22 20 if "$(MACHINE)"
2a20: 3d 3d 20 22 49 41 36 34 22 20 7c 7c 20 22 24 28 == "IA64" || "$(
2a30: 4d 41 43 48 49 4e 45 29 22 20 3d 3d 20 22 41 4d MACHINE)" == "AM
2a40: 44 36 34 22 0a 4f 50 54 44 45 46 49 4e 45 53 09 D64".OPTDEFINES.
2a50: 3d 20 24 28 4f 50 54 44 45 46 49 4e 45 53 29 20 = $(OPTDEFINES)
2a60: 2d 44 54 43 4c 5f 43 46 47 5f 44 4f 36 34 42 49 -DTCL_CFG_DO64BI
2a70: 54 0a 21 65 6e 64 69 66 0a 0a 0a 23 2d 2d 2d 2d T.!endif...#----
2a80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2a90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2aa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2ab0: 2d 2d 2d 2d 2d 2d 0a 23 20 47 65 74 20 63 6f 6d ------.# Get com
2ac0: 6d 6f 6e 20 69 6e 66 6f 20 75 73 65 64 20 77 68 mon info used wh
2ad0: 65 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 74 65 en building exte
2ae0: 6e 73 69 6f 6e 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d nsions..#-------
2af0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
2b20: 2d 2d 2d 0a 0a 21 69 66 20 22 24 28 50 52 4f 4a ---..!if "$(PROJ
2b30: 45 43 54 29 22 20 21 3d 20 22 74 63 6c 22 0a 0a ECT)" != "tcl"..
2b40: 23 20 49 66 20 49 4e 53 54 41 4c 4c 44 49 52 20 # If INSTALLDIR
2b50: 73 65 74 20 74 6f 20 74 63 6c 20 72 6f 6f 74 20 set to tcl root
2b60: 64 69 72 20 74 68 65 6e 20 72 65 73 65 74 20 74 dir then reset t
2b70: 6f 20 74 68 65 20 6c 69 62 20 64 69 72 2e 0a 21 o the lib dir..!
2b80: 69 66 20 65 78 69 73 74 28 22 24 28 5f 49 4e 53 if exist("$(_INS
2b90: 54 41 4c 4c 44 49 52 29 5c 69 6e 63 6c 75 64 65 TALLDIR)\include
2ba0: 5c 74 63 6c 2e 68 22 29 0a 5f 49 4e 53 54 41 4c \tcl.h")._INSTAL
2bb0: 4c 44 49 52 3d 24 28 5f 49 4e 53 54 41 4c 4c 44 LDIR=$(_INSTALLD
2bc0: 49 52 29 5c 6c 69 62 0a 21 65 6e 64 69 66 0a 0a IR)\lib.!endif..
2bd0: 21 69 66 20 21 64 65 66 69 6e 65 64 28 54 43 4c !if !defined(TCL
2be0: 44 49 52 29 0a 21 69 66 20 65 78 69 73 74 28 22 DIR).!if exist("
2bf0: 24 28 5f 49 4e 53 54 41 4c 4c 44 49 52 29 5c 2e $(_INSTALLDIR)\.
2c00: 2e 5c 69 6e 63 6c 75 64 65 5c 74 63 6c 2e 68 22 .\include\tcl.h"
2c10: 29 0a 54 43 4c 49 4e 53 54 41 4c 4c 09 3d 20 31 ).TCLINSTALL.= 1
2c20: 0a 5f 54 43 4c 44 49 52 09 09 3d 20 24 28 5f 49 ._TCLDIR..= $(_I
2c30: 4e 53 54 41 4c 4c 44 49 52 29 5c 2e 2e 0a 5f 54 NSTALLDIR)\..._T
2c40: 43 4c 5f 48 20 20 20 20 20 20 20 20 20 20 3d 20 CL_H =
2c50: 24 28 5f 49 4e 53 54 41 4c 4c 44 49 52 29 5c 2e $(_INSTALLDIR)\.
2c60: 2e 5c 69 6e 63 6c 75 64 65 5c 74 63 6c 2e 68 0a .\include\tcl.h.
2c70: 54 43 4c 44 49 52 20 20 20 20 20 20 20 20 20 20 TCLDIR
2c80: 3d 20 24 28 5f 49 4e 53 54 41 4c 4c 44 49 52 29 = $(_INSTALLDIR)
2c90: 5c 2e 2e 0a 21 65 6c 73 65 0a 4d 53 47 3d 5e 0a \...!else.MSG=^.
2ca0: 46 61 69 6c 65 64 20 74 6f 20 66 69 6e 64 20 74 Failed to find t
2cb0: 63 6c 2e 68 2e 20 20 53 65 74 20 74 68 65 20 54 cl.h. Set the T
2cc0: 43 4c 44 49 52 20 6d 61 63 72 6f 2e 0a 21 65 72 CLDIR macro..!er
2cd0: 72 6f 72 20 24 28 4d 53 47 29 0a 21 65 6e 64 69 ror $(MSG).!endi
2ce0: 66 0a 21 65 6c 73 65 0a 5f 54 43 4c 44 49 52 09 f.!else._TCLDIR.
2cf0: 3d 20 24 28 54 43 4c 44 49 52 3a 2f 3d 5c 29 0a = $(TCLDIR:/=\).
2d00: 21 69 66 20 65 78 69 73 74 28 22 24 28 5f 54 43 !if exist("$(_TC
2d10: 4c 44 49 52 29 5c 69 6e 63 6c 75 64 65 5c 74 63 LDIR)\include\tc
2d20: 6c 2e 68 22 29 0a 54 43 4c 49 4e 53 54 41 4c 4c l.h").TCLINSTALL
2d30: 09 3d 20 31 0a 5f 54 43 4c 5f 48 20 20 20 20 20 .= 1._TCL_H
2d40: 20 20 20 20 20 3d 20 24 28 5f 54 43 4c 44 49 52 = $(_TCLDIR
2d50: 29 5c 69 6e 63 6c 75 64 65 5c 74 63 6c 2e 68 0a )\include\tcl.h.
2d60: 21 65 6c 73 65 69 66 20 65 78 69 73 74 28 22 24 !elseif exist("$
2d70: 28 5f 54 43 4c 44 49 52 29 5c 67 65 6e 65 72 69 (_TCLDIR)\generi
2d80: 63 5c 74 63 6c 2e 68 22 29 0a 54 43 4c 49 4e 53 c\tcl.h").TCLINS
2d90: 54 41 4c 4c 09 3d 20 30 0a 5f 54 43 4c 5f 48 20 TALL.= 0._TCL_H
2da0: 20 20 20 20 20 20 20 20 20 3d 20 24 28 5f 54 43 = $(_TC
2db0: 4c 44 49 52 29 5c 67 65 6e 65 72 69 63 5c 74 63 LDIR)\generic\tc
2dc0: 6c 2e 68 0a 21 65 6c 73 65 0a 4d 53 47 20 3d 5e l.h.!else.MSG =^
2dd0: 0a 46 61 69 6c 65 64 20 74 6f 20 66 69 6e 64 20 .Failed to find
2de0: 74 63 6c 2e 68 2e 20 20 54 68 65 20 54 43 4c 44 tcl.h. The TCLD
2df0: 49 52 20 6d 61 63 72 6f 20 64 6f 65 73 20 6e 6f IR macro does no
2e00: 74 20 61 70 70 65 61 72 20 63 6f 72 72 65 63 74 t appear correct
2e10: 2e 0a 21 65 72 72 6f 72 20 24 28 4d 53 47 29 0a ..!error $(MSG).
2e20: 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 21 !endif.!endif..!
2e30: 69 66 20 5b 65 63 68 6f 20 52 45 4d 20 3d 20 54 if [echo REM = T
2e40: 68 69 73 20 66 69 6c 65 20 69 73 20 67 65 6e 65 his file is gene
2e50: 72 61 74 65 64 20 66 72 6f 6d 20 72 75 6c 65 73 rated from rules
2e60: 2e 76 63 20 3e 20 76 65 72 73 69 6f 6e 2e 76 63 .vc > version.vc
2e70: 5d 0a 21 65 6e 64 69 66 0a 21 69 66 20 65 78 69 ].!endif.!if exi
2e80: 73 74 28 22 24 28 5f 54 43 4c 5f 48 29 22 29 0a st("$(_TCL_H)").
2e90: 21 69 66 20 5b 65 63 68 6f 20 54 43 4c 5f 44 4f !if [echo TCL_DO
2ea0: 54 56 45 52 53 49 4f 4e 20 3d 20 5c 3e 3e 20 76 TVERSION = \>> v
2eb0: 65 72 73 69 6f 6e 2e 76 63 5d 20 5c 0a 20 20 20 ersion.vc] \.
2ec0: 26 26 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 56 20 && [nmakehlp -V
2ed0: 22 24 28 5f 54 43 4c 5f 48 29 22 20 54 43 4c 5f "$(_TCL_H)" TCL_
2ee0: 56 45 52 53 49 4f 4e 20 3e 3e 20 76 65 72 73 69 VERSION >> versi
2ef0: 6f 6e 2e 76 63 5d 0a 21 65 6e 64 69 66 0a 21 65 on.vc].!endif.!e
2f00: 6e 64 69 66 0a 21 69 6e 63 6c 75 64 65 20 76 65 ndif.!include ve
2f10: 72 73 69 6f 6e 2e 76 63 0a 54 43 4c 5f 56 45 52 rsion.vc.TCL_VER
2f20: 53 49 4f 4e 09 3d 20 24 28 54 43 4c 5f 44 4f 54 SION.= $(TCL_DOT
2f30: 56 45 52 53 49 4f 4e 3a 2e 3d 29 0a 0a 21 69 66 VERSION:.=)..!if
2f40: 20 24 28 54 43 4c 49 4e 53 54 41 4c 4c 29 0a 54 $(TCLINSTALL).T
2f50: 43 4c 53 48 09 09 3d 20 22 24 28 5f 54 43 4c 44 CLSH..= "$(_TCLD
2f60: 49 52 29 5c 62 69 6e 5c 74 63 6c 73 68 24 28 54 IR)\bin\tclsh$(T
2f70: 43 4c 5f 56 45 52 53 49 4f 4e 29 24 28 53 55 46 CL_VERSION)$(SUF
2f80: 58 29 2e 65 78 65 22 0a 21 69 66 20 21 65 78 69 X).exe".!if !exi
2f90: 73 74 28 24 28 54 43 4c 53 48 29 29 20 26 26 20 st($(TCLSH)) &&
2fa0: 24 28 54 43 4c 5f 54 48 52 45 41 44 53 29 0a 54 $(TCL_THREADS).T
2fb0: 43 4c 53 48 20 20 20 20 20 20 20 20 20 20 20 3d CLSH =
2fc0: 20 22 24 28 5f 54 43 4c 44 49 52 29 5c 62 69 6e "$(_TCLDIR)\bin
2fd0: 5c 74 63 6c 73 68 24 28 54 43 4c 5f 56 45 52 53 \tclsh$(TCL_VERS
2fe0: 49 4f 4e 29 74 24 28 53 55 46 58 29 2e 65 78 65 ION)t$(SUFX).exe
2ff0: 22 0a 21 65 6e 64 69 66 0a 54 43 4c 53 54 55 42 ".!endif.TCLSTUB
3000: 4c 49 42 09 3d 20 22 24 28 5f 54 43 4c 44 49 52 LIB.= "$(_TCLDIR
3010: 29 5c 6c 69 62 5c 74 63 6c 73 74 75 62 24 28 54 )\lib\tclstub$(T
3020: 43 4c 5f 56 45 52 53 49 4f 4e 29 2e 6c 69 62 22 CL_VERSION).lib"
3030: 0a 54 43 4c 49 4d 50 4c 49 42 09 3d 20 22 24 28 .TCLIMPLIB.= "$(
3040: 5f 54 43 4c 44 49 52 29 5c 6c 69 62 5c 74 63 6c _TCLDIR)\lib\tcl
3050: 24 28 54 43 4c 5f 56 45 52 53 49 4f 4e 29 24 28 $(TCL_VERSION)$(
3060: 53 55 46 58 29 2e 6c 69 62 22 0a 54 43 4c 5f 4c SUFX).lib".TCL_L
3070: 49 42 52 41 52 59 09 3d 20 24 28 5f 54 43 4c 44 IBRARY.= $(_TCLD
3080: 49 52 29 5c 6c 69 62 0a 54 43 4c 5f 49 4e 43 4c IR)\lib.TCL_INCL
3090: 55 44 45 53 20 20 20 20 3d 20 2d 49 22 24 28 5f UDES = -I"$(_
30a0: 54 43 4c 44 49 52 29 5c 69 6e 63 6c 75 64 65 22 TCLDIR)\include"
30b0: 0a 21 65 6c 73 65 0a 54 43 4c 53 48 09 09 3d 20 .!else.TCLSH..=
30c0: 22 24 28 5f 54 43 4c 44 49 52 29 5c 77 69 6e 5c "$(_TCLDIR)\win\
30d0: 24 28 42 55 49 4c 44 44 49 52 54 4f 50 29 5c 74 $(BUILDDIRTOP)\t
30e0: 63 6c 73 68 24 28 54 43 4c 5f 56 45 52 53 49 4f clsh$(TCL_VERSIO
30f0: 4e 29 24 28 53 55 46 58 29 2e 65 78 65 22 0a 21 N)$(SUFX).exe".!
3100: 69 66 20 21 65 78 69 73 74 28 24 28 54 43 4c 53 if !exist($(TCLS
3110: 48 29 29 20 26 26 20 24 28 54 43 4c 5f 54 48 52 H)) && $(TCL_THR
3120: 45 41 44 53 29 0a 54 43 4c 53 48 09 09 3d 20 22 EADS).TCLSH..= "
3130: 24 28 5f 54 43 4c 44 49 52 29 5c 77 69 6e 5c 24 $(_TCLDIR)\win\$
3140: 28 42 55 49 4c 44 44 49 52 54 4f 50 29 5c 74 63 (BUILDDIRTOP)\tc
3150: 6c 73 68 24 28 54 43 4c 5f 56 45 52 53 49 4f 4e lsh$(TCL_VERSION
3160: 29 74 24 28 53 55 46 58 29 2e 65 78 65 22 0a 21 )t$(SUFX).exe".!
3170: 65 6e 64 69 66 0a 54 43 4c 53 54 55 42 4c 49 42 endif.TCLSTUBLIB
3180: 09 3d 20 22 24 28 5f 54 43 4c 44 49 52 29 5c 77 .= "$(_TCLDIR)\w
3190: 69 6e 5c 24 28 42 55 49 4c 44 44 49 52 54 4f 50 in\$(BUILDDIRTOP
31a0: 29 5c 74 63 6c 73 74 75 62 24 28 54 43 4c 5f 56 )\tclstub$(TCL_V
31b0: 45 52 53 49 4f 4e 29 2e 6c 69 62 22 0a 54 43 4c ERSION).lib".TCL
31c0: 49 4d 50 4c 49 42 09 3d 20 22 24 28 5f 54 43 4c IMPLIB.= "$(_TCL
31d0: 44 49 52 29 5c 77 69 6e 5c 24 28 42 55 49 4c 44 DIR)\win\$(BUILD
31e0: 44 49 52 54 4f 50 29 5c 74 63 6c 24 28 54 43 4c DIRTOP)\tcl$(TCL
31f0: 5f 56 45 52 53 49 4f 4e 29 24 28 53 55 46 58 29 _VERSION)$(SUFX)
3200: 2e 6c 69 62 22 0a 54 43 4c 5f 4c 49 42 52 41 52 .lib".TCL_LIBRAR
3210: 59 09 3d 20 24 28 5f 54 43 4c 44 49 52 29 5c 6c Y.= $(_TCLDIR)\l
3220: 69 62 72 61 72 79 0a 54 43 4c 5f 49 4e 43 4c 55 ibrary.TCL_INCLU
3230: 44 45 53 09 3d 20 2d 49 22 24 28 5f 54 43 4c 44 DES.= -I"$(_TCLD
3240: 49 52 29 5c 67 65 6e 65 72 69 63 22 20 2d 49 22 IR)\generic" -I"
3250: 24 28 5f 54 43 4c 44 49 52 29 5c 77 69 6e 22 0a $(_TCLDIR)\win".
3260: 21 65 6e 64 69 66 0a 0a 21 65 6e 64 69 66 0a 0a !endif..!endif..
3270: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d #---------------
3280: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3290: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
32a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 4f 70 -----------.# Op
32b0: 74 69 6f 6e 61 6c 6c 79 20 63 68 65 63 6b 20 66 tionally check f
32c0: 6f 72 20 54 6b 20 69 6e 66 6f 20 66 6f 72 20 62 or Tk info for b
32d0: 75 69 6c 64 69 6e 67 20 65 78 74 65 6e 73 69 6f uilding extensio
32e0: 6e 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ns..#-----------
32f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3300: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3310: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a ---------------.
3320: 0a 21 69 66 64 65 66 20 50 52 4f 4a 45 43 54 5f .!ifdef PROJECT_
3330: 52 45 51 55 49 52 45 53 5f 54 4b 0a 21 69 66 20 REQUIRES_TK.!if
3340: 22 24 28 50 52 4f 4a 45 43 54 29 22 20 21 3d 20 "$(PROJECT)" !=
3350: 22 74 63 6c 22 20 26 26 20 22 24 28 50 52 4f 4a "tcl" && "$(PROJ
3360: 45 43 54 29 22 20 21 3d 20 22 74 6b 22 0a 0a 21 ECT)" != "tk"..!
3370: 69 66 20 21 64 65 66 69 6e 65 64 28 54 4b 44 49 if !defined(TKDI
3380: 52 29 0a 21 69 66 20 65 78 69 73 74 28 22 24 28 R).!if exist("$(
3390: 5f 49 4e 53 54 41 4c 4c 44 49 52 29 5c 2e 2e 5c _INSTALLDIR)\..\
33a0: 69 6e 63 6c 75 64 65 5c 74 6b 2e 68 22 29 0a 54 include\tk.h").T
33b0: 4b 49 4e 53 54 41 4c 4c 20 20 20 20 20 20 3d 20 KINSTALL =
33c0: 31 0a 5f 54 4b 44 49 52 20 20 20 20 20 20 20 20 1._TKDIR
33d0: 20 3d 20 24 28 5f 49 4e 53 54 41 4c 4c 44 49 52 = $(_INSTALLDIR
33e0: 29 5c 2e 2e 0a 5f 54 4b 5f 48 20 20 20 20 20 20 )\..._TK_H
33f0: 20 20 20 20 3d 20 24 28 5f 54 4b 44 49 52 29 5c = $(_TKDIR)\
3400: 69 6e 63 6c 75 64 65 5c 74 6b 2e 68 0a 54 4b 44 include\tk.h.TKD
3410: 49 52 20 20 20 20 20 20 20 20 20 20 3d 20 24 28 IR = $(
3420: 5f 54 4b 44 49 52 29 0a 21 65 6c 73 65 69 66 20 _TKDIR).!elseif
3430: 65 78 69 73 74 28 22 24 28 5f 54 43 4c 44 49 52 exist("$(_TCLDIR
3440: 29 5c 69 6e 63 6c 75 64 65 5c 74 6b 2e 68 22 29 )\include\tk.h")
3450: 0a 54 4b 49 4e 53 54 41 4c 4c 20 20 20 20 20 20 .TKINSTALL
3460: 3d 20 31 0a 5f 54 4b 44 49 52 20 20 20 20 20 20 = 1._TKDIR
3470: 20 20 20 3d 20 24 28 5f 54 43 4c 44 49 52 29 0a = $(_TCLDIR).
3480: 5f 54 4b 5f 48 20 20 20 20 20 20 20 20 20 20 3d _TK_H =
3490: 20 24 28 5f 54 4b 44 49 52 29 5c 69 6e 63 6c 75 $(_TKDIR)\inclu
34a0: 64 65 5c 74 6b 2e 68 0a 54 4b 44 49 52 20 20 20 de\tk.h.TKDIR
34b0: 20 20 20 20 20 20 20 3d 20 24 28 5f 54 4b 44 49 = $(_TKDI
34c0: 52 29 0a 21 65 6e 64 69 66 0a 21 65 6c 73 65 0a R).!endif.!else.
34d0: 5f 54 4b 44 49 52 20 3d 20 24 28 54 4b 44 49 52 _TKDIR = $(TKDIR
34e0: 3a 2f 3d 5c 29 0a 21 69 66 20 65 78 69 73 74 28 :/=\).!if exist(
34f0: 22 24 28 5f 54 4b 44 49 52 29 5c 69 6e 63 6c 75 "$(_TKDIR)\inclu
3500: 64 65 5c 74 6b 2e 68 22 29 0a 54 4b 49 4e 53 54 de\tk.h").TKINST
3510: 41 4c 4c 20 20 20 20 20 20 3d 20 31 0a 5f 54 4b ALL = 1._TK
3520: 5f 48 20 20 20 20 20 20 20 20 20 20 3d 20 24 28 _H = $(
3530: 5f 54 4b 44 49 52 29 5c 69 6e 63 6c 75 64 65 5c _TKDIR)\include\
3540: 74 6b 2e 68 0a 21 65 6c 73 65 69 66 20 65 78 69 tk.h.!elseif exi
3550: 73 74 28 22 24 28 5f 54 4b 44 49 52 29 5c 67 65 st("$(_TKDIR)\ge
3560: 6e 65 72 69 63 5c 74 6b 2e 68 22 29 0a 54 4b 49 neric\tk.h").TKI
3570: 4e 53 54 41 4c 4c 20 20 20 20 20 20 3d 20 30 0a NSTALL = 0.
3580: 5f 54 4b 5f 48 20 20 20 20 20 20 20 20 20 20 3d _TK_H =
3590: 20 24 28 5f 54 4b 44 49 52 29 5c 67 65 6e 65 72 $(_TKDIR)\gener
35a0: 69 63 5c 74 6b 2e 68 0a 21 65 6c 73 65 0a 4d 53 ic\tk.h.!else.MS
35b0: 47 20 3d 5e 0a 46 61 69 6c 65 64 20 74 6f 20 66 G =^.Failed to f
35c0: 69 6e 64 20 74 6b 2e 68 2e 20 54 68 65 20 54 4b ind tk.h. The TK
35d0: 44 49 52 20 6d 61 63 72 6f 20 64 6f 65 73 20 6e DIR macro does n
35e0: 6f 74 20 61 70 70 65 61 72 20 63 6f 72 72 65 63 ot appear correc
35f0: 74 2e 0a 21 65 72 72 6f 72 20 24 28 4d 53 47 29 t..!error $(MSG)
3600: 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a .!endif.!endif..
3610: 21 69 66 20 64 65 66 69 6e 65 64 28 54 4b 44 49 !if defined(TKDI
3620: 52 29 0a 54 4b 5f 44 4f 54 56 45 52 53 49 4f 4e R).TK_DOTVERSION
3630: 20 3d 20 38 2e 34 0a 21 69 66 20 65 78 69 73 74 = 8.4.!if exist
3640: 28 22 24 28 5f 54 4b 5f 48 29 22 29 0a 21 69 66 ("$(_TK_H)").!if
3650: 20 5b 65 63 68 6f 20 54 4b 5f 44 4f 54 56 45 52 [echo TK_DOTVER
3660: 53 49 4f 4e 20 3d 20 5c 3e 3e 20 76 65 72 73 69 SION = \>> versi
3670: 6f 6e 2e 76 63 5d 20 5c 0a 20 20 20 26 26 20 5b on.vc] \. && [
3680: 6e 6d 61 6b 65 68 6c 70 20 2d 56 20 22 24 28 5f nmakehlp -V "$(_
3690: 54 4b 5f 48 29 22 20 54 4b 5f 56 45 52 53 49 4f TK_H)" TK_VERSIO
36a0: 4e 20 3e 3e 20 76 65 72 73 69 6f 6e 2e 76 63 5d N >> version.vc]
36b0: 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a 21 .!endif.!endif.!
36c0: 69 6e 63 6c 75 64 65 20 76 65 72 73 69 6f 6e 2e include version.
36d0: 76 63 0a 54 4b 5f 56 45 52 53 49 4f 4e 20 3d 20 vc.TK_VERSION =
36e0: 24 28 54 4b 5f 44 4f 54 56 45 52 53 49 4f 4e 3a $(TK_DOTVERSION:
36f0: 2e 3d 29 0a 0a 21 69 66 20 24 28 54 4b 49 4e 53 .=)..!if $(TKINS
3700: 54 41 4c 4c 29 0a 57 49 53 48 09 09 3d 20 22 24 TALL).WISH..= "$
3710: 28 5f 54 4b 44 49 52 29 5c 62 69 6e 5c 77 69 73 (_TKDIR)\bin\wis
3720: 68 24 28 54 4b 5f 56 45 52 53 49 4f 4e 29 24 28 h$(TK_VERSION)$(
3730: 53 55 46 58 29 2e 65 78 65 22 0a 21 69 66 20 21 SUFX).exe".!if !
3740: 65 78 69 73 74 28 24 28 57 49 53 48 29 29 20 26 exist($(WISH)) &
3750: 26 20 24 28 54 43 4c 5f 54 48 52 45 41 44 53 29 & $(TCL_THREADS)
3760: 0a 57 49 53 48 09 09 3d 20 22 24 28 5f 54 4b 44 .WISH..= "$(_TKD
3770: 49 52 29 5c 62 69 6e 5c 77 69 73 68 24 28 54 4b IR)\bin\wish$(TK
3780: 5f 56 45 52 53 49 4f 4e 29 74 24 28 53 55 46 58 _VERSION)t$(SUFX
3790: 29 2e 65 78 65 22 0a 21 65 6e 64 69 66 0a 54 4b ).exe".!endif.TK
37a0: 53 54 55 42 4c 49 42 09 3d 20 22 24 28 5f 54 4b STUBLIB.= "$(_TK
37b0: 44 49 52 29 5c 6c 69 62 5c 74 6b 73 74 75 62 24 DIR)\lib\tkstub$
37c0: 28 54 4b 5f 56 45 52 53 49 4f 4e 29 2e 6c 69 62 (TK_VERSION).lib
37d0: 22 0a 54 4b 49 4d 50 4c 49 42 09 3d 20 22 24 28 ".TKIMPLIB.= "$(
37e0: 5f 54 4b 44 49 52 29 5c 6c 69 62 5c 74 6b 24 28 _TKDIR)\lib\tk$(
37f0: 54 4b 5f 56 45 52 53 49 4f 4e 29 24 28 53 55 46 TK_VERSION)$(SUF
3800: 58 29 2e 6c 69 62 22 0a 54 4b 5f 49 4e 43 4c 55 X).lib".TK_INCLU
3810: 44 45 53 20 20 20 20 20 3d 20 2d 49 22 24 28 5f DES = -I"$(_
3820: 54 4b 44 49 52 29 5c 69 6e 63 6c 75 64 65 22 0a TKDIR)\include".
3830: 54 4b 5f 4c 49 42 52 41 52 59 09 3d 20 24 28 5f TK_LIBRARY.= $(_
3840: 54 4b 44 49 52 29 5c 6c 69 62 0a 21 65 6c 73 65 TKDIR)\lib.!else
3850: 0a 57 49 53 48 09 09 3d 20 22 24 28 5f 54 4b 44 .WISH..= "$(_TKD
3860: 49 52 29 5c 77 69 6e 5c 24 28 42 55 49 4c 44 44 IR)\win\$(BUILDD
3870: 49 52 54 4f 50 29 5c 77 69 73 68 24 28 54 43 4c IRTOP)\wish$(TCL
3880: 5f 56 45 52 53 49 4f 4e 29 24 28 53 55 46 58 29 _VERSION)$(SUFX)
3890: 2e 65 78 65 22 0a 21 69 66 20 21 65 78 69 73 74 .exe".!if !exist
38a0: 28 24 28 57 49 53 48 29 29 20 26 26 20 24 28 54 ($(WISH)) && $(T
38b0: 43 4c 5f 54 48 52 45 41 44 53 29 0a 57 49 53 48 CL_THREADS).WISH
38c0: 09 09 3d 20 22 24 28 5f 54 4b 44 49 52 29 5c 77 ..= "$(_TKDIR)\w
38d0: 69 6e 5c 24 28 42 55 49 4c 44 44 49 52 54 4f 50 in\$(BUILDDIRTOP
38e0: 29 5c 77 69 73 68 24 28 54 43 4c 5f 56 45 52 53 )\wish$(TCL_VERS
38f0: 49 4f 4e 29 74 24 28 53 55 46 58 29 2e 65 78 65 ION)t$(SUFX).exe
3900: 22 0a 21 65 6e 64 69 66 0a 54 4b 53 54 55 42 4c ".!endif.TKSTUBL
3910: 49 42 09 3d 20 22 24 28 5f 54 4b 44 49 52 29 5c IB.= "$(_TKDIR)\
3920: 77 69 6e 5c 24 28 42 55 49 4c 44 44 49 52 54 4f win\$(BUILDDIRTO
3930: 50 29 5c 74 6b 73 74 75 62 24 28 54 43 4c 5f 56 P)\tkstub$(TCL_V
3940: 45 52 53 49 4f 4e 29 2e 6c 69 62 22 0a 54 4b 49 ERSION).lib".TKI
3950: 4d 50 4c 49 42 09 3d 20 22 24 28 5f 54 4b 44 49 MPLIB.= "$(_TKDI
3960: 52 29 5c 77 69 6e 5c 24 28 42 55 49 4c 44 44 49 R)\win\$(BUILDDI
3970: 52 54 4f 50 29 5c 74 6b 24 28 54 43 4c 5f 56 45 RTOP)\tk$(TCL_VE
3980: 52 53 49 4f 4e 29 24 28 53 55 46 58 29 2e 6c 69 RSION)$(SUFX).li
3990: 62 22 0a 54 4b 5f 49 4e 43 4c 55 44 45 53 20 20 b".TK_INCLUDES
39a0: 20 20 20 3d 20 2d 49 22 24 28 5f 54 4b 44 49 52 = -I"$(_TKDIR
39b0: 29 5c 67 65 6e 65 72 69 63 22 20 2d 49 22 24 28 )\generic" -I"$(
39c0: 5f 54 4b 44 49 52 29 5c 77 69 6e 22 20 2d 49 22 _TKDIR)\win" -I"
39d0: 24 28 5f 54 4b 44 49 52 29 5c 78 6c 69 62 22 0a $(_TKDIR)\xlib".
39e0: 54 4b 5f 4c 49 42 52 41 52 59 09 3d 20 24 28 5f TK_LIBRARY.= $(_
39f0: 54 4b 44 49 52 29 5c 6c 69 62 72 61 72 79 0a 21 TKDIR)\library.!
3a00: 65 6e 64 69 66 0a 0a 21 65 6e 64 69 66 0a 21 65 endif..!endif.!e
3a10: 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 0a 23 2d ndif.!endif...#-
3a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3a30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3a40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3a50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 53 65 74 75 ---------.# Setu
3a60: 70 20 74 68 65 20 66 75 6c 6c 79 20 71 75 61 6c p the fully qual
3a70: 69 66 69 65 64 20 4f 55 54 5f 44 49 52 20 70 61 ified OUT_DIR pa
3a80: 74 68 20 61 73 20 4f 55 54 5f 44 49 52 5f 50 41 th as OUT_DIR_PA
3a90: 54 48 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d TH.#------------
3aa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3ab0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3ac0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 21 --------------.!
3ad0: 69 66 20 5b 65 63 68 6f 20 4f 55 54 5f 44 49 52 if [echo OUT_DIR
3ae0: 5f 50 41 54 48 20 3d 20 5c 3e 3e 20 76 65 72 73 _PATH = \>> vers
3af0: 69 6f 6e 2e 76 63 5d 20 5c 0a 20 20 20 20 26 26 ion.vc] \. &&
3b00: 20 5b 6e 6d 61 6b 65 68 6c 70 20 2d 51 20 22 24 [nmakehlp -Q "$
3b10: 28 4f 55 54 5f 44 49 52 29 22 20 3e 3e 20 76 65 (OUT_DIR)" >> ve
3b20: 72 73 69 6f 6e 2e 76 63 5d 0a 21 65 6e 64 69 66 rsion.vc].!endif
3b30: 0a 21 69 6e 63 6c 75 64 65 20 76 65 72 73 69 6f .!include versio
3b40: 6e 2e 76 63 0a 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d n.vc...#--------
3b50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3b60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3b70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3b80: 2d 2d 0a 23 20 44 69 73 70 6c 61 79 20 73 74 61 --.# Display sta
3b90: 74 73 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 23 ts being used..#
3ba0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3bd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 21 6d 65 73 ----------..!mes
3be0: 73 61 67 65 20 2a 2a 2a 20 49 6e 74 65 72 6d 65 sage *** Interme
3bf0: 64 69 61 74 65 20 64 69 72 65 63 74 6f 72 79 20 diate directory
3c00: 77 69 6c 6c 20 62 65 20 27 24 28 54 4d 50 5f 44 will be '$(TMP_D
3c10: 49 52 29 27 0a 21 6d 65 73 73 61 67 65 20 2a 2a IR)'.!message **
3c20: 2a 20 4f 75 74 70 75 74 20 64 69 72 65 63 74 6f * Output directo
3c30: 72 79 20 77 69 6c 6c 20 62 65 20 27 24 28 4f 55 ry will be '$(OU
3c40: 54 5f 44 49 52 29 27 0a 21 6d 65 73 73 61 67 65 T_DIR)'.!message
3c50: 20 2a 2a 2a 20 53 75 66 66 69 78 20 66 6f 72 20 *** Suffix for
3c60: 62 69 6e 61 72 69 65 73 20 77 69 6c 6c 20 62 65 binaries will be
3c70: 20 27 24 28 53 55 46 58 29 27 0a 21 6d 65 73 73 '$(SUFX)'.!mess
3c80: 61 67 65 20 2a 2a 2a 20 4f 70 74 69 6f 6e 61 6c age *** Optional
3c90: 20 64 65 66 69 6e 65 73 20 61 72 65 20 27 24 28 defines are '$(
3ca0: 4f 50 54 44 45 46 49 4e 45 53 29 27 0a 21 6d 65 OPTDEFINES)'.!me
3cb0: 73 73 61 67 65 20 2a 2a 2a 20 43 6f 6d 70 69 6c ssage *** Compil
3cc0: 65 72 20 76 65 72 73 69 6f 6e 20 24 28 56 43 56 er version $(VCV
3cd0: 45 52 29 2e 20 54 61 72 67 65 74 20 6d 61 63 68 ER). Target mach
3ce0: 69 6e 65 20 69 73 20 24 28 4d 41 43 48 49 4e 45 ine is $(MACHINE
3cf0: 29 0a 21 6d 65 73 73 61 67 65 20 2a 2a 2a 20 43 ).!message *** C
3d00: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 ompiler options
3d10: 27 24 28 43 4f 4d 50 49 4c 45 52 46 4c 41 47 53 '$(COMPILERFLAGS
3d20: 29 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e ) $(OPTIMIZATION
3d30: 53 29 20 24 28 44 45 42 55 47 46 4c 41 47 53 29 S) $(DEBUGFLAGS)
3d40: 20 24 28 57 41 52 4e 49 4e 47 53 29 27 0a 21 6d $(WARNINGS)'.!m
3d50: 65 73 73 61 67 65 20 2a 2a 2a 20 4c 69 6e 6b 20 essage *** Link
3d60: 6f 70 74 69 6f 6e 73 20 27 24 28 4c 49 4e 4b 45 options '$(LINKE
3d70: 52 46 4c 41 47 53 29 27 0a 0a 21 65 6e 64 69 66 RFLAGS)'..!endif
3d80: 0a .