1#------------------------------------------------------------------------------ 2# rules.vc -- 3# 4# Microsoft Visual C++ makefile include for decoding the commandline 5# macros. This file does not need editing to build Tcl. 6# 7# See the file "license.terms" for information on usage and redistribution 8# of this file, and for a DISCLAIMER OF ALL WARRANTIES. 9# 10# Copyright (c) 2001-2003 David Gravereaux. 11# Copyright (c) 2003-2007 Patrick Thoyts 12# 13#------------------------------------------------------------------------------ 14# RCS: @(#) $Id: rules.vc,v 1.35.2.1 2008/06/25 10:57:54 patthoyts Exp $ 15#------------------------------------------------------------------------------ 16 17!ifndef _RULES_VC 18_RULES_VC = 1 19 20cc32 = $(CC) # built-in default. 21link32 = link 22lib32 = lib 23rc32 = $(RC) # built-in default. 24 25!ifndef INSTALLDIR 26### Assume the normal default. 27_INSTALLDIR = C:\Program Files\Tcl 28!else 29### Fix the path separators. 30_INSTALLDIR = $(INSTALLDIR:/=\) 31!endif 32 33!ifndef MACHINE 34!if "$(CPU)" == "" || "$(CPU)" == "i386" 35MACHINE = IX86 36!else 37MACHINE = $(CPU) 38!endif 39!endif 40 41!ifndef CFG_ENCODING 42CFG_ENCODING = \"cp1252\" 43!endif 44 45#---------------------------------------------------------- 46# Set the proper copy method to avoid overwrite questions 47# to the user when copying files and selecting the right 48# "delete all" method. 49#---------------------------------------------------------- 50 51!if "$(OS)" == "Windows_NT" 52RMDIR = rmdir /S /Q 53ERRNULL = 2>NUL 54!if ![ver | find "4.0" > nul] 55CPY = echo y | xcopy /i >NUL 56COPY = copy >NUL 57!else 58CPY = xcopy /i /y >NUL 59COPY = copy /y >NUL 60!endif 61!else # "$(OS)" != "Windows_NT" 62CPY = xcopy /i >_JUNK.OUT # On Win98 NUL does not work here. 63COPY = copy >_JUNK.OUT # On Win98 NUL does not work here. 64RMDIR = deltree /Y 65NULL = \NUL # Used in testing directory existence 66ERRNULL = >NUL # Win9x shell cannot redirect stderr 67!endif 68MKDIR = mkdir 69 70!message =============================================================================== 71 72#---------------------------------------------------------- 73# build the helper app we need to overcome nmake's limiting 74# environment. 75#---------------------------------------------------------- 76 77!if !exist(nmakehlp.exe) 78!if [$(cc32) -nologo nmakehlp.c -link -subsystem:console > nul] 79!endif 80!endif 81 82#---------------------------------------------------------- 83# Test for compiler features 84#---------------------------------------------------------- 85 86### test for optimizations 87!if [nmakehlp -c -Ot] 88!message *** Compiler has 'Optimizations' 89OPTIMIZING = 1 90!else 91!message *** Compiler does not have 'Optimizations' 92OPTIMIZING = 0 93!endif 94 95OPTIMIZATIONS = 96 97!if [nmakehlp -c -Ot] 98OPTIMIZATIONS = $(OPTIMIZATIONS) -Ot 99!endif 100 101!if [nmakehlp -c -Oi] 102OPTIMIZATIONS = $(OPTIMIZATIONS) -Oi 103!endif 104 105!if [nmakehlp -c -Op] 106OPTIMIZATIONS = $(OPTIMIZATIONS) -Op 107!endif 108 109!if [nmakehlp -c -fp:strict] 110OPTIMIZATIONS = $(OPTIMIZATIONS) -fp:strict 111!endif 112 113!if [nmakehlp -c -Gs] 114OPTIMIZATIONS = $(OPTIMIZATIONS) -Gs 115!endif 116 117!if [nmakehlp -c -GS] 118OPTIMIZATIONS = $(OPTIMIZATIONS) -GS 119!endif 120 121!if [nmakehlp -c -GL] 122OPTIMIZATIONS = $(OPTIMIZATIONS) -GL 123!endif 124 125DEBUGFLAGS = 126 127!if [nmakehlp -c -RTC1] 128DEBUGFLAGS = $(DEBUGFLAGS) -RTC1 129!elseif [nmakehlp -c -GZ] 130DEBUGFLAGS = $(DEBUGFLAGS) -GZ 131!endif 132 133COMPILERFLAGS =-W3 134 135# In v13 -GL and -YX are incompatible. 136!if [nmakehlp -c -YX] 137!if ![nmakehlp -c -GL] 138OPTIMIZATIONS = $(OPTIMIZATIONS) -YX 139!endif 140!endif 141 142!if "$(MACHINE)" == "IX86" 143### test for pentium errata 144!if [nmakehlp -c -QI0f] 145!message *** Compiler has 'Pentium 0x0f fix' 146COMPILERFLAGS = $(COMPILERFLAGSS) -QI0f 147!else 148!message *** Compiler does not have 'Pentium 0x0f fix' 149!endif 150!endif 151 152!if "$(MACHINE)" == "IA64" 153### test for Itanium errata 154!if [nmakehlp -c -QIA64_Bx] 155!message *** Compiler has 'B-stepping errata workarounds' 156COMPILERFLAGS = $(COMPILERFLAGS) -QIA64_Bx 157!else 158!message *** Compiler does not have 'B-stepping errata workarounds' 159!endif 160!endif 161 162!if "$(MACHINE)" == "IX86" 163### test for -align:4096, when align:512 will do. 164!if [nmakehlp -l -opt:nowin98] 165!message *** Linker has 'Win98 alignment problem' 166ALIGN98_HACK = 1 167!else 168!message *** Linker does not have 'Win98 alignment problem' 169ALIGN98_HACK = 0 170!endif 171!else 172ALIGN98_HACK = 0 173!endif 174 175LINKERFLAGS = 176 177!if [nmakehlp -l -ltcg] 178LINKERFLAGS =-ltcg 179!endif 180 181#---------------------------------------------------------- 182# MSVC8 (ships with Visual Studio 2005) generates a manifest 183# file that we should link into the binaries. This is how. 184#---------------------------------------------------------- 185 186_VC_MANIFEST_EMBED_EXE= 187_VC_MANIFEST_EMBED_DLL= 188VCVER=0 189!if ![echo VCVERSION=_MSC_VER > vercl.x] \ 190 && ![cl -nologo -TC -P vercl.x $(ERRNULL)] 191!include vercl.i 192!if $(VCVERSION) >= 1500 193VCVER=9 194!elseif $(VCVERSION) >= 1400 195VCVER=8 196!elseif $(VCVERSION) >= 1300 197VCVER=7 198!elseif $(VCVERSION) >= 1200 199VCVER=6 200!endif 201!endif 202 203# Since MSVC8 we must deal with manifest resources. 204!if $(VCVERSION) >= 1400 205_VC_MANIFEST_EMBED_EXE=if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;1 206_VC_MANIFEST_EMBED_DLL=if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;2 207!endif 208 209#---------------------------------------------------------- 210# Decode the options requested. 211#---------------------------------------------------------- 212 213!if "$(OPTS)" == "" || [nmakehlp -f "$(OPTS)" "none"] 214STATIC_BUILD = 0 215TCL_THREADS = 0 216DEBUG = 0 217SYMBOLS = 0 218PROFILE = 0 219MSVCRT = 0 220LOIMPACT = 0 221TCL_USE_STATIC_PACKAGES = 0 222USE_THREAD_ALLOC = 0 223UNCHECKED = 0 224!else 225!if [nmakehlp -f $(OPTS) "static"] 226!message *** Doing static 227STATIC_BUILD = 1 228!else 229STATIC_BUILD = 0 230!endif 231!if [nmakehlp -f $(OPTS) "msvcrt"] 232!message *** Doing msvcrt 233MSVCRT = 1 234!else 235MSVCRT = 0 236!endif 237!if [nmakehlp -f $(OPTS) "staticpkg"] 238!message *** Doing staticpkg 239TCL_USE_STATIC_PACKAGES = 1 240!else 241TCL_USE_STATIC_PACKAGES = 0 242!endif 243!if [nmakehlp -f $(OPTS) "threads"] 244!message *** Doing threads 245TCL_THREADS = 1 246!else 247TCL_THREADS = 0 248!endif 249!if [nmakehlp -f $(OPTS) "symbols"] 250!message *** Doing symbols 251DEBUG = 1 252!else 253DEBUG = 0 254!endif 255!if [nmakehlp -f $(OPTS) "pdbs"] 256!message *** Doing pdbs 257SYMBOLS = 1 258!else 259SYMBOLS = 0 260!endif 261!if [nmakehlp -f $(OPTS) "profile"] 262!message *** Doing profile 263PROFILE = 1 264!else 265PROFILE = 0 266!endif 267!if [nmakehlp -f $(OPTS) "loimpact"] 268!message *** Doing loimpact 269LOIMPACT = 1 270!else 271LOIMPACT = 0 272!endif 273!if [nmakehlp -f $(OPTS) "thrdalloc"] 274!message *** Doing thrdalloc 275USE_THREAD_ALLOC = 1 276!else 277USE_THREAD_ALLOC = 0 278!endif 279!if [nmakehlp -f $(OPTS) "unchecked"] 280!message *** Doing unchecked 281UNCHECKED = 1 282!else 283UNCHECKED = 0 284!endif 285!endif 286 287 288!if !$(STATIC_BUILD) 289# Make sure we don't build overly fat DLLs. 290MSVCRT = 1 291# We shouldn't statically put the extensions inside the shell when dynamic. 292TCL_USE_STATIC_PACKAGES = 0 293!endif 294 295 296#---------------------------------------------------------- 297# Figure-out how to name our intermediate and output directories. 298# We wouldn't want different builds to use the same .obj files 299# by accident. 300#---------------------------------------------------------- 301 302#---------------------------------------- 303# Naming convention: 304# t = full thread support. 305# s = static library (as opposed to an 306# import library) 307# g = linked to the debug enabled C 308# run-time. 309# x = special static build when it 310# links to the dynamic C run-time. 311#---------------------------------------- 312SUFX = tsgx 313 314!if $(DEBUG) 315BUILDDIRTOP = Debug 316!else 317BUILDDIRTOP = Release 318!endif 319 320!if "$(MACHINE)" != "IX86" 321BUILDDIRTOP =$(BUILDDIRTOP)_$(MACHINE) 322!endif 323!if $(VCVER) > 6 324BUILDDIRTOP =$(BUILDDIRTOP)_VC$(VCVER) 325!endif 326 327!if !$(DEBUG) || $(DEBUG) && $(UNCHECKED) 328SUFX = $(SUFX:g=) 329!endif 330 331TMP_DIRFULL = .\$(BUILDDIRTOP)\$(PROJECT)_ThreadedDynamicStaticX 332 333!if !$(STATIC_BUILD) 334TMP_DIRFULL = $(TMP_DIRFULL:Static=) 335SUFX = $(SUFX:s=) 336EXT = dll 337!if $(MSVCRT) 338TMP_DIRFULL = $(TMP_DIRFULL:X=) 339SUFX = $(SUFX:x=) 340!endif 341!else 342TMP_DIRFULL = $(TMP_DIRFULL:Dynamic=) 343EXT = lib 344!if !$(MSVCRT) 345TMP_DIRFULL = $(TMP_DIRFULL:X=) 346SUFX = $(SUFX:x=) 347!endif 348!endif 349 350!if !$(TCL_THREADS) 351TMP_DIRFULL = $(TMP_DIRFULL:Threaded=) 352SUFX = $(SUFX:t=) 353!endif 354 355!ifndef TMP_DIR 356TMP_DIR = $(TMP_DIRFULL) 357!ifndef OUT_DIR 358OUT_DIR = .\$(BUILDDIRTOP) 359!endif 360!else 361!ifndef OUT_DIR 362OUT_DIR = $(TMP_DIR) 363!endif 364!endif 365 366 367#---------------------------------------------------------- 368# Decode the statistics requested. 369#---------------------------------------------------------- 370 371!if "$(STATS)" == "" || [nmakehlp -f "$(STATS)" "none"] 372TCL_MEM_DEBUG = 0 373TCL_COMPILE_DEBUG = 0 374!else 375!if [nmakehlp -f $(STATS) "memdbg"] 376!message *** Doing memdbg 377TCL_MEM_DEBUG = 1 378!else 379TCL_MEM_DEBUG = 0 380!endif 381!if [nmakehlp -f $(STATS) "compdbg"] 382!message *** Doing compdbg 383TCL_COMPILE_DEBUG = 1 384!else 385TCL_COMPILE_DEBUG = 0 386!endif 387!endif 388 389 390#---------------------------------------------------------- 391# Decode the checks requested. 392#---------------------------------------------------------- 393 394!if "$(CHECKS)" == "" || [nmakehlp -f "$(CHECKS)" "none"] 395TCL_NO_DEPRECATED = 0 396WARNINGS = -W3 397!else 398!if [nmakehlp -f $(CHECKS) "nodep"] 399!message *** Doing nodep check 400TCL_NO_DEPRECATED = 1 401!else 402TCL_NO_DEPRECATED = 0 403!endif 404!if [nmakehlp -f $(CHECKS) "fullwarn"] 405!message *** Doing full warnings check 406WARNINGS = -W4 407!if [nmakehlp -l -warn:3] 408LINKERFLAGS = $(LINKERFLAGS) -warn:3 409!endif 410!else 411WARNINGS = -W3 412!endif 413!if [nmakehlp -f $(CHECKS) "64bit"] && [nmakehlp -c -Wp64] 414!message *** Doing 64bit portability warnings 415WARNINGS = $(WARNINGS) -Wp64 416!endif 417!endif 418 419#---------------------------------------------------------- 420# Set our defines now armed with our options. 421#---------------------------------------------------------- 422 423OPTDEFINES = -DTCL_CFGVAL_ENCODING=$(CFG_ENCODING) -DSTDC_HEADERS 424 425!if $(TCL_MEM_DEBUG) 426OPTDEFINES = $(OPTDEFINES) -DTCL_MEM_DEBUG 427!endif 428!if $(TCL_COMPILE_DEBUG) 429OPTDEFINES = $(OPTDEFINES) -DTCL_COMPILE_DEBUG -DTCL_COMPILE_STATS 430!endif 431!if $(TCL_THREADS) 432OPTDEFINES = $(OPTDEFINES) -DTCL_THREADS=1 433!if $(USE_THREAD_ALLOC) 434OPTDEFINES = $(OPTDEFINES) -DUSE_THREAD_ALLOC=1 435!endif 436!endif 437!if $(STATIC_BUILD) 438OPTDEFINES = $(OPTDEFINES) -DSTATIC_BUILD 439!endif 440!if $(TCL_NO_DEPRECATED) 441OPTDEFINES = $(OPTDEFINES) -DTCL_NO_DEPRECATED 442!endif 443 444!if $(DEBUG) 445OPTDEFINES = $(OPTDEFINES) -DTCL_CFG_DEBUG 446!elseif $(OPTIMIZING) 447OPTDEFINES = $(OPTDEFINES) -DTCL_CFG_OPTIMIZED 448!endif 449!if $(PROFILE) 450OPTDEFINES = $(OPTDEFINES) -DTCL_CFG_PROFILED 451!endif 452!if "$(MACHINE)" == "IA64" || "$(MACHINE)" == "AMD64" 453OPTDEFINES = $(OPTDEFINES) -DTCL_CFG_DO64BIT 454!endif 455 456 457#---------------------------------------------------------- 458# Locate the Tcl headers to build against 459#---------------------------------------------------------- 460 461!if "$(PROJECT)" == "tcl" 462 463_TCL_H = ..\generic\tcl.h 464 465!else 466 467# If INSTALLDIR set to tcl root dir then reset to the lib dir. 468!if exist("$(_INSTALLDIR)\include\tcl.h") 469_INSTALLDIR=$(_INSTALLDIR)\lib 470!endif 471 472!if !defined(TCLDIR) 473!if exist("$(_INSTALLDIR)\..\include\tcl.h") 474TCLINSTALL = 1 475_TCLDIR = $(_INSTALLDIR)\.. 476_TCL_H = $(_INSTALLDIR)\..\include\tcl.h 477TCLDIR = $(_INSTALLDIR)\.. 478!else 479MSG=^ 480Failed to find tcl.h. Set the TCLDIR macro. 481!error $(MSG) 482!endif 483!else 484_TCLDIR = $(TCLDIR:/=\) 485!if exist("$(_TCLDIR)\include\tcl.h") 486TCLINSTALL = 1 487_TCL_H = $(_TCLDIR)\include\tcl.h 488!elseif exist("$(_TCLDIR)\generic\tcl.h") 489TCLINSTALL = 0 490_TCL_H = $(_TCLDIR)\generic\tcl.h 491!else 492MSG =^ 493Failed to find tcl.h. The TCLDIR macro does not appear correct. 494!error $(MSG) 495!endif 496!endif 497!endif 498 499#-------------------------------------------------------------- 500# Extract various version numbers from tcl headers 501# The generated file is then included in the makefile. 502#-------------------------------------------------------------- 503 504!if [echo REM = This file is generated from rules.vc > versions.vc] 505!endif 506!if [echo TCL_MAJOR_VERSION = \>> versions.vc] \ 507 && [nmakehlp -V "$(_TCL_H)" TCL_MAJOR_VERSION >> versions.vc] 508!endif 509!if [echo TCL_MINOR_VERSION = \>> versions.vc] \ 510 && [nmakehlp -V "$(_TCL_H)" TCL_MINOR_VERSION >> versions.vc] 511!endif 512!if [echo TCL_PATCH_LEVEL = \>> versions.vc] \ 513 && [nmakehlp -V "$(_TCL_H)" TCL_PATCH_LEVEL >> versions.vc] 514!endif 515 516# If building the tcl core then we need additional package versions 517!if "$(PROJECT)" == "tcl" 518!if [echo PKG_HTTP_VER = \>> versions.vc] \ 519 && [nmakehlp -V ..\library\http\pkgIndex.tcl http >> versions.vc] 520!endif 521!if [echo PKG_TCLTEST_VER = \>> versions.vc] \ 522 && [nmakehlp -V ..\library\tcltest\pkgIndex.tcl tcltest >> versions.vc] 523!endif 524!if [echo PKG_MSGCAT_VER = \>> versions.vc] \ 525 && [nmakehlp -V ..\library\msgcat\pkgIndex.tcl msgcat >> versions.vc] 526!endif 527!if [echo PKG_PLATFORM_VER = \>> versions.vc] \ 528 && [nmakehlp -V ..\library\platform\pkgIndex.tcl "platform " >> versions.vc] 529!endif 530!if [echo PKG_SHELL_VER = \>> versions.vc] \ 531 && [nmakehlp -V ..\library\platform\pkgIndex.tcl "platform::shell" >> versions.vc] 532!endif 533!if [echo PKG_DDE_VER = \>> versions.vc] \ 534 && [nmakehlp -V ..\library\dde\pkgIndex.tcl "dde " >> versions.vc] 535!endif 536!if [echo PKG_REG_VER =\>> versions.vc] \ 537 && [nmakehlp -V ..\library\reg\pkgIndex.tcl registry >> versions.vc] 538!endif 539!endif 540 541!include versions.vc 542 543#-------------------------------------------------------------- 544# Setup tcl version dependent stuff headers 545#-------------------------------------------------------------- 546 547!if "$(PROJECT)" != "tcl" 548 549TCL_VERSION = $(TCL_MAJOR_VERSION)$(TCL_MINOR_VERSION) 550 551!if $(TCL_VERSION) < 81 552TCL_DOES_STUBS = 0 553!else 554TCL_DOES_STUBS = 1 555!endif 556 557!if $(TCLINSTALL) 558TCLSH = "$(_TCLDIR)\bin\tclsh$(TCL_VERSION)$(SUFX).exe" 559!if !exist($(TCLSH)) && $(TCL_THREADS) 560TCLSH = "$(_TCLDIR)\bin\tclsh$(TCL_VERSION)t$(SUFX).exe" 561!endif 562TCLSTUBLIB = "$(_TCLDIR)\lib\tclstub$(TCL_VERSION).lib" 563TCLIMPLIB = "$(_TCLDIR)\lib\tcl$(TCL_VERSION)$(SUFX).lib" 564TCL_LIBRARY = $(_TCLDIR)\lib 565TCLREGLIB = "$(_TCLDIR)\lib\tclreg12$(SUFX:t=).lib" 566TCLDDELIB = "$(_TCLDIR)\lib\tcldde13$(SUFX:t=).lib" 567COFFBASE = \must\have\tcl\sources\to\build\this\target 568TCLTOOLSDIR = \must\have\tcl\sources\to\build\this\target 569TCL_INCLUDES = -I"$(_TCLDIR)\include" 570!else 571TCLSH = "$(_TCLDIR)\win\$(BUILDDIRTOP)\tclsh$(TCL_VERSION)$(SUFX).exe" 572!if !exist($(TCLSH)) && $(TCL_THREADS) 573TCLSH = "$(_TCLDIR)\win\$(BUILDDIRTOP)\tclsh$(TCL_VERSION)t$(SUFX).exe" 574!endif 575TCLSTUBLIB = "$(_TCLDIR)\win\$(BUILDDIRTOP)\tclstub$(TCL_VERSION).lib" 576TCLIMPLIB = "$(_TCLDIR)\win\$(BUILDDIRTOP)\tcl$(TCL_VERSION)$(SUFX).lib" 577TCL_LIBRARY = $(_TCLDIR)\library 578TCLREGLIB = "$(_TCLDIR)\win\$(BUILDDIRTOP)\tclreg12$(SUFX:t=).lib" 579TCLDDELIB = "$(_TCLDIR)\win\$(BUILDDIRTOP)\tcldde13$(SUFX:t=).lib" 580COFFBASE = "$(_TCLDIR)\win\coffbase.txt" 581TCLTOOLSDIR = $(_TCLDIR)\tools 582TCL_INCLUDES = -I"$(_TCLDIR)\generic" -I"$(_TCLDIR)\win" 583!endif 584 585!endif 586 587#------------------------------------------------------------------------- 588# Locate the Tk headers to build against 589#------------------------------------------------------------------------- 590 591!if "$(PROJECT)" == "tk" 592_TK_H = ..\generic\tk.h 593_INSTALLDIR = $(_INSTALLDIR)\.. 594!endif 595 596!ifdef PROJECT_REQUIRES_TK 597!if !defined(TKDIR) 598!if exist("$(_INSTALLDIR)\..\include\tk.h") 599TKINSTALL = 1 600_TKDIR = $(_INSTALLDIR)\.. 601_TK_H = $(_TKDIR)\include\tk.h 602TKDIR = $(_TKDIR) 603!elseif exist("$(_TCLDIR)\include\tk.h") 604TKINSTALL = 1 605_TKDIR = $(_TCLDIR) 606_TK_H = $(_TKDIR)\include\tk.h 607TKDIR = $(_TKDIR) 608!endif 609!else 610_TKDIR = $(TKDIR:/=\) 611!if exist("$(_TKDIR)\include\tk.h") 612TKINSTALL = 1 613_TK_H = $(_TKDIR)\include\tk.h 614!elseif exist("$(_TKDIR)\generic\tk.h") 615TKINSTALL = 0 616_TK_H = $(_TKDIR)\generic\tk.h 617!else 618MSG =^ 619Failed to find tk.h. The TKDIR macro does not appear correct. 620!error $(MSG) 621!endif 622!endif 623!endif 624 625#------------------------------------------------------------------------- 626# Extract Tk version numbers 627#------------------------------------------------------------------------- 628 629!if defined(PROJECT_REQUIRES_TK) || "$(PROJECT)" == "tk" 630 631!if [echo TK_MAJOR_VERSION = \>> versions.vc] \ 632 && [nmakehlp -V $(_TK_H) TK_MAJOR_VERSION >> versions.vc] 633!endif 634!if [echo TK_MINOR_VERSION = \>> versions.vc] \ 635 && [nmakehlp -V $(_TK_H) TK_MINOR_VERSION >> versions.vc] 636!endif 637!if [echo TK_PATCH_LEVEL = \>> versions.vc] \ 638 && [nmakehlp -V $(_TK_H) TK_PATCH_LEVEL >> versions.vc] 639!endif 640 641!include versions.vc 642 643TK_DOTVERSION = $(TK_MAJOR_VERSION).$(TK_MINOR_VERSION) 644TK_VERSION = $(TK_MAJOR_VERSION)$(TK_MINOR_VERSION) 645 646!if "$(PROJECT)" != "tk" 647!if $(TKINSTALL) 648WISH = "$(_TKDIR)\bin\wish$(TK_VERSION)$(SUFX).exe" 649TKSTUBLIB = "$(_TKDIR)\lib\tkstub$(TK_VERSION).lib" 650TKIMPLIB = "$(_TKDIR)\lib\tk$(TK_VERSION)$(SUFX).lib" 651TK_INCLUDES = -I"$(_TKDIR)\include" 652!else 653WISH = "$(_TKDIR)\win\$(BUILDDIRTOP)\wish$(TCL_VERSION)$(SUFX).exe" 654TKSTUBLIB = "$(_TKDIR)\win\$(BUILDDIRTOP)\tkstub$(TCL_VERSION).lib" 655TKIMPLIB = "$(_TKDIR)\win\$(BUILDDIRTOP)\tk$(TCL_VERSION)$(SUFX).lib" 656TK_INCLUDES = -I"$(_TKDIR)\generic" -I"$(_TKDIR)\win" -I"$(_TKDIR)\xlib" 657!endif 658!endif 659 660!endif 661 662#---------------------------------------------------------- 663# Display stats being used. 664#---------------------------------------------------------- 665 666!message *** Intermediate directory will be '$(TMP_DIR)' 667!message *** Output directory will be '$(OUT_DIR)' 668!message *** Suffix for binaries will be '$(SUFX)' 669!message *** Optional defines are '$(OPTDEFINES)' 670!message *** Compiler version $(VCVER). Target machine is $(MACHINE) 671!message *** Compiler options '$(COMPILERFLAGS) $(OPTIMIZATIONS) $(DEBUGFLAGS) $(WARNINGS)' 672!message *** Link options '$(LINKERFLAGS)' 673 674!endif 675 676