OSDN Git Service

Updated to tk 8.4.1
[pf3gnuchains/sourceware.git] / tk / win / makefile.bc
index 050d012..d26d00b 100644 (file)
-# Borland C++ 4.5 makefile for Tk
-#
-# Copyright (c) 1995-1996 by Sun Microsystems, Inc.
-#
-# See the file "license.terms" for information on usage and redistribution
-# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
-#
-# SCCS: @(#) makefile.bc 1.73 97/11/05 16:12:27
-
-
-#
-# Project directories
-#
-# ROOT = top of source tree
-# TMPDIR = location where .obj files should be stored during build
-# TCLDIR = location of top of Tcl source heirarchy
-#
-
-ROOT   = ..
-TMPDIR = .
-TOOLS  = c:\bc45
-TCLDIR = ..\..\tcl8.0
-
-# uncomment the following line to compile with symbols
-#DEBUG=1
-
-# uncomment the following line to compile with TCL_MEM_DEBUG
-#DEBUGDEFINES  =TCL_MEM_DEBUG
-
-#
-# Borland C++ tools
-#
-
-BORLAND = $(TOOLS)
-IMPLIB  = $(BORLAND)\bin\Implib
-BCC32   = $(BORLAND)\bin\Bcc32
-TLINK32 = $(BORLAND)\bin\tlink32
-RC     = $(BORLAND)\bin\brcc32
-CP      = copy
-RM      = del
-
-INCLUDES =     $(BORLAND)\include;$(ROOT)\generic;$(ROOT)\bitmaps;$(ROOT)\xlib;$(ROOT)\win;$(TCLDIR)\generic
-LIBDIRS =      $(BORLAND)\lib;$(ROOT)\win
-TCLLIBDIR =    $(TCLDIR)\win
-
-
-!ifndef DEBUG
-
-# these macros cause maximum optimization and no symbols
-DEBUGLDFLAGS = 
-DEBUGCCFLAGS = -v- -vi- -O2
-
-!else
-
-# these macros enable debugging
-DEBUGLDFLAGS = -v
-DEBUGCCFLAGS = -k -Od -v
-
-!endif
-
-DEFINES = MT;_RTLDLL;STRICT;$(DEBUGDEFINES)
-PROJECTCCFLAGS= $(DEBUGCCFLAGS) -w-par -w-stu
-
-LNFLAGS_exe = -Tpe -aa -c $(DEBUGLDFLAGS) $(BORLAND)\lib\c0w32
-LNFLAGS_dll = -Tpd -aa -c $(DEBUGLDFLAGS) $(BORLAND)\lib\c0d32
-
-LNLIBS_exe =   $(TKLIB) $(TCLLIBDIR)\$(TCLLIB) import32 cw32mti
-LNLIBS_dll =   $(TCLLIBDIR)\$(TCLLIB) import32 cw32mti
-
-# 
-# Global makefile settings
-#
-
-.AUTODEPEND
-.CACHEAUTODEPEND
-
-.suffixes: .c .dll .lib .obj .exe
-
-.path.c=$(ROOT)\win;$(ROOT)\generic;$(ROOT)\xlib;$(ROOT)\unix
-.path.obj=$(TMPDIR)
-
-WISHOBJS = \
-       $(TMPDIR)\winMain.obj
-
-TKTESTOBJS = \
-       $(TMPDIR)\tkTest.obj \
-       $(TMPDIR)\tkSquare.obj \
-       $(TMPDIR)\testMain.obj
-
-XLIBOBJS = \
-       $(TMPDIR)\xcolors.obj \
-       $(TMPDIR)\xdraw.obj \
-       $(TMPDIR)\xgc.obj \
-       $(TMPDIR)\ximage.obj \
-       $(TMPDIR)\xutil.obj
-
-TKOBJS = \
-       $(TMPDIR)\tkConsole.obj \
-       $(TMPDIR)\tkUnixMenubu.obj \
-       $(TMPDIR)\tkUnixScale.obj \
-       $(XLIBOBJS) \
-       $(TMPDIR)\tkWin3d.obj \
-       $(TMPDIR)\tkWin32Dll.obj \
-       $(TMPDIR)\tkWinButton.obj \
-       $(TMPDIR)\tkWinClipboard.obj \
-       $(TMPDIR)\tkWinColor.obj \
-       $(TMPDIR)\tkWinCursor.obj \
-       $(TMPDIR)\tkWinDialog.obj \
-       $(TMPDIR)\tkWinDraw.obj \
-       $(TMPDIR)\tkWinEmbed.obj \
-       $(TMPDIR)\tkWinFont.obj \
-       $(TMPDIR)\tkWinImage.obj \
-       $(TMPDIR)\tkWinInit.obj \
-       $(TMPDIR)\tkWinKey.obj \
-       $(TMPDIR)\tkWinMenu.obj \
-       $(TMPDIR)\tkWinPixmap.obj \
-       $(TMPDIR)\tkWinPointer.obj \
-       $(TMPDIR)\tkWinRegion.obj \
-       $(TMPDIR)\tkWinScrlbr.obj \
-       $(TMPDIR)\tkWinSend.obj \
-       $(TMPDIR)\tkWinWindow.obj \
-       $(TMPDIR)\tkWinWm.obj \
-       $(TMPDIR)\tkWinX.obj \
-       $(TMPDIR)\stubs.obj \
-       $(TMPDIR)\tk3d.obj \
-       $(TMPDIR)\tkArgv.obj \
-       $(TMPDIR)\tkAtom.obj \
-       $(TMPDIR)\tkBind.obj \
-       $(TMPDIR)\tkBitmap.obj \
-       $(TMPDIR)\tkButton.obj \
-       $(TMPDIR)\tkCanvArc.obj \
-       $(TMPDIR)\tkCanvBmap.obj \
-       $(TMPDIR)\tkCanvImg.obj \
-       $(TMPDIR)\tkCanvLine.obj \
-       $(TMPDIR)\tkCanvPoly.obj \
-       $(TMPDIR)\tkCanvPs.obj \
-       $(TMPDIR)\tkCanvText.obj \
-       $(TMPDIR)\tkCanvUtil.obj \
-       $(TMPDIR)\tkCanvWind.obj \
-       $(TMPDIR)\tkCanvas.obj \
-       $(TMPDIR)\tkClipboard.obj \
-       $(TMPDIR)\tkCmds.obj \
-       $(TMPDIR)\tkColor.obj \
-       $(TMPDIR)\tkConfig.obj \
-       $(TMPDIR)\tkCursor.obj \
-       $(TMPDIR)\tkEntry.obj \
-       $(TMPDIR)\tkError.obj \
-       $(TMPDIR)\tkEvent.obj \
-       $(TMPDIR)\tkFileFilter.obj \
-       $(TMPDIR)\tkFocus.obj \
-       $(TMPDIR)\tkFont.obj \
-       $(TMPDIR)\tkFrame.obj \
-       $(TMPDIR)\tkGC.obj \
-       $(TMPDIR)\tkGeometry.obj \
-       $(TMPDIR)\tkGet.obj \
-       $(TMPDIR)\tkGrab.obj \
-       $(TMPDIR)\tkGrid.obj \
-       $(TMPDIR)\tkImage.obj \
-       $(TMPDIR)\tkImgBmap.obj \
-       $(TMPDIR)\tkImgGIF.obj \
-       $(TMPDIR)\tkImgPPM.obj \
-       $(TMPDIR)\tkImgPhoto.obj \
-       $(TMPDIR)\tkImgUtil.obj \
-       $(TMPDIR)\tkListbox.obj \
-       $(TMPDIR)\tkMacWinMenu.obj \
-       $(TMPDIR)\tkMain.obj \
-       $(TMPDIR)\tkMenu.obj \
-       $(TMPDIR)\tkMenubutton.obj \
-       $(TMPDIR)\tkMenuDraw.obj \
-       $(TMPDIR)\tkMessage.obj \
-       $(TMPDIR)\tkOption.obj \
-       $(TMPDIR)\tkPack.obj \
-       $(TMPDIR)\tkPlace.obj \
-       $(TMPDIR)\tkPointer.obj \
-       $(TMPDIR)\tkRectOval.obj \
-       $(TMPDIR)\tkScale.obj \
-       $(TMPDIR)\tkScrollbar.obj \
-       $(TMPDIR)\tkSelect.obj \
-       $(TMPDIR)\tkText.obj \
-       $(TMPDIR)\tkTextBTree.obj \
-       $(TMPDIR)\tkTextDisp.obj \
-       $(TMPDIR)\tkTextImage.obj \
-       $(TMPDIR)\tkTextIndex.obj \
-       $(TMPDIR)\tkTextMark.obj \
-       $(TMPDIR)\tkTextTag.obj \
-       $(TMPDIR)\tkTextWind.obj \
-       $(TMPDIR)\tkTrig.obj \
-       $(TMPDIR)\tkUtil.obj \
-       $(TMPDIR)\tkVisual.obj \
-       $(TMPDIR)\tkWindow.obj
-
-TCLDLL = tcl80.dll
-TCLLIB = tcl80.lib
-TKDLL = tk80.dll
-TKLIB = tk80.lib
-WISH = wish80.exe
-TKTEST = tktest.exe
-
-#
-# Targets
-#
-
-all: cfgdll $(TKDLL) cfgexe $(WISH) cfgcln
-tktest: cfgdll $(TKDLL) cfgtest $(TKTEST) cfgcln
-
-test: tktest
-       $(TKTEST) &&|
-               cd ../tests
-               console show
-               update
-               source all
-|
-
-# Implicit Targets
-
-.c.obj:
-       @$(BCC32) {$< }
-
-.dll.lib:
-       $(IMPLIB) -c $@ $<
-
-.rc.res:
-       $(RC) -i$(INCLUDES) $<
-
-#
-# Special case object file targets
-#
-
-$(TMPDIR)\testMain.obj : $(ROOT)\win\winMain.c
-       $(BCC32) -c -o$@ $(ROOT)\win\winMain.c
-
-#
-# Configuration file targets - these files are implicitly used by the compiler
-#
-
-cfgdll:
-       @$(CP) &&|
-               -n$(TMPDIR) -I$(INCLUDES) -c -WM
-               -D$(DEFINES) -3 -d $(PROJECTCCFLAGS)
-| bcc32.cfg >NUL
-
-cfgexe:
-       @$(CP) &&|
-               -n$(TMPDIR) -I$(INCLUDES) -c -W
-               -D$(DEFINES) -3 -d $(PROJECTCCFLAGS)
-| bcc32.cfg >NUL
-
-cfgtest:
-       @$(CP) &&|
-               -n$(TMPDIR) -I$(INCLUDES) -c -W
-               -D$(DEFINES);TK_TEST -3 -d $(PROJECTCCFLAGS)
-| bcc32.cfg >NUL
-
-cfgcln:
-       @$(RM) bcc32.cfg
-
-#
-# Executable targets
-#
-
-$(TKDLL): $(TKOBJS) tk.def rc\tk.res
-       $(TLINK32) @&&|
-$(LNFLAGS_dll) $(TKOBJS)
-$@
--x
-$(LNLIBS_dll)
-tk.def
-rc\tk.res
-|
-
-$(WISH): $(WISHOBJS) $(TKLIB) rc\wish.res
-       $(TLINK32) @&&|
-$(LNFLAGS_exe) $(WISHOBJS)
-$@
--x
-$(LNLIBS_exe)
-|, &&|
-EXETYPE WINDOWS
-CODE PRELOAD MOVEABLE DISCARDABLE
-DATA PRELOAD MOVEABLE MULTIPLE
-|, rc\wish.res
-
-$(TKTEST): $(TKTESTOBJS) $(TKLIB)
-       $(TLINK32) $(LNFLAGS_exe) @&&|
-$(TKTESTOBJS)
-$@
--x
-$(LNLIBS_exe)
-|, &&|
-EXETYPE WINDOWS
-CODE PRELOAD MOVEABLE DISCARDABLE
-DATA PRELOAD MOVEABLE MULTIPLE
-|, 
-
-# 
-# Other dependencies
-#
-
-rc\wish.res: rc\wish.ico
-rc\tk.res: rc\tk.ico rc\*.cur
-
-# The following rule automatically generates a tk.def file containing
-# an export entry for every public symbol in the $(TKDLL) library.
-
-tk.def: $(TKOBJS)
-       $(TCLLIBDIR)\dumpexts.exe -o $@ $(TKDLL) @&&|
-               $(TKOBJS)
-|
-
-# rule to build library object files
-
-# debugging rules, the .dll and .exe files must be in the same
-# directory as the object files for debugging purposes
-
-$(TMPDIR)\$(TKDLL): $(TKDLL)
-       $(CP) $(TKDLL) $(TMPDIR)
-
-$(TMPDIR)\$(TCLDLL): $(TCLLIBDIR)\$(TCLDLL)
-       $(CP) $(TCLLIBDIR)\$(TCLDLL) $(TMPDIR)
-
-$(TMPDIR)\$(WISH): $(WISH)
-       $(CP) $(WISH) $(TMPDIR)
-
-$(TMPDIR)\$(TKTEST): $(TKTEST)
-       $(CP) $(TKTEST) $(TMPDIR)
-
-debug: $(TMPDIR)\$(TKDLL) $(TMPDIR)\$(TCLDLL) $(TMPDIR)\$(TKTEST)
-
-
-# remove all generated files
-
-clean:
-       $(RM) $(WISH)
-       $(RM) $(TKTEST)
-       $(RM) $(TKLIB) 
-       $(RM) $(TKDLL)  
-       $(RM) rc\*.res  
-       $(RM) tk.def
-       $(RM) $(TMPDIR)\*.obj
-       $(RM) *.cfg
+#\r
+# Makefile for Borland C++ 5.5 (or C++ Builder 5), adapted from the makefile\r
+#   for Visual C++ that came with tk 8.3.3\r
+#\r
+# Some "not so obvious" details in this makefile are preceded by a comment\r
+# "maintenance hint", which tries to explain what's going on. Better to \r
+# leave those in place.\r
+# Helmut Giese, July 2002\r
+#\r
+# See the file "license.terms" for information on usage and redistribution\r
+# of this file, and for a DISCLAIMER OF ALL WARRANTIES.\r
+#\r
+# Copyright (c) 1995-1997 Sun Microsystems, Inc.\r
+# Copyright (c) 1998-2000 Ajuba Solutions.\r
+#\r
+# RCS: @(#) $Id$\r
+\r
+# Does not depend on the presence of any environment variables in\r
+# order to compile tcl; all needed information is derived from\r
+# location of the compiler directories.\r
+\r
+#\r
+# Project directories\r
+#\r
+# ROOT    = top of source tree\r
+#\r
+# TMPDIR  = location where .obj files should be stored during build\r
+#\r
+# TOOLS32 = location of Borland development tools.\r
+#\r
+# TCLDIR = location of top of Tcl source hierarchy\r
+#\r
+\r
+ROOT        = ..\r
+TCLDIR      = ..\..\tcl8.4\r
+INSTALLDIR  = D:\tmp\tcl\r
+\r
+# If you have C++ Builder 5 or the free Borland C++ 5.5 compiler\r
+# adapt the following paths as appropriate for your system\r
+TOOLS32    = d:\cbld5\r
+TOOLS32_rc = d:\cbld5\r
+#TOOLS32    = c:\bc55\r
+#TOOLS32_rc = c:\bc55\r
+\r
+cc32      = "$(TOOLS32)\bin\bcc32.exe"\r
+link32    = "$(TOOLS32)\bin\ilink32.exe"\r
+lib32     = "$(TOOLS32)\bin\tlib.exe"\r
+rc32      = "$(TOOLS32_rc)\bin\brcc32.exe"\r
+include32 = -I"$(TOOLS32)\include;$(TOOLS32)\include\mfc"\r
+libpath32 = -L"$(TOOLS32)\lib"\r
+\r
+# Uncomment the following line to compile with thread support\r
+#THREADDEFINES = -DTCL_THREADS=1\r
+\r
+# Allow definition of NDEBUG via command line\r
+# Set NODEBUG to 0 to compile with symbols\r
+!if !defined(NODEBUG)\r
+NODEBUG = 1\r
+!endif\r
+\r
+# uncomment the following two lines to compile with TCL_MEM_DEBUG\r
+#DEBUGDEFINES =-DTCL_MEM_DEBUG\r
+\r
+######################################################################\r
+# Do not modify below this line\r
+######################################################################\r
+\r
+TCLNAMEPREFIX = tcl\r
+TKNAMEPREFIX = tk\r
+WISHNAMEPREFIX = wish\r
+VERSION = 84\r
+DOTVERSION = 8.4\r
+\r
+TCLSTUBPREFIX = $(TCLNAMEPREFIX)stub\r
+TKSTUBPREFIX  = $(TKNAMEPREFIX)stub\r
+\r
+\r
+BINROOT   = .\r
+!IF "$(NODEBUG)" == "1"\r
+TMPDIRNAME  = Release\r
+DBGX        =\r
+!ELSE\r
+TMPDIRNAME  = Debug\r
+DBGX        =\r
+#DBGX       = d\r
+!ENDIF\r
+TMPDIR      = $(BINROOT)\$(TMPDIRNAME)\r
+OUTDIRNAME  = $(TMPDIRNAME)\r
+OUTDIR      = $(TMPDIR)\r
+\r
+TCLLIB        = $(TCLNAMEPREFIX)$(VERSION)$(DBGX).lib\r
+TCLPLUGINLIB  = $(TCLNAMEPREFIX)$(VERSION)p.lib\r
+TCLSTUBLIB    = $(TCLSTUBPREFIX)$(VERSION)$(DBGX).lib\r
+TKDLLNAME     = $(TKNAMEPREFIX)$(VERSION)$(DBGX).dll\r
+TKDLL         = $(OUTDIR)\$(TKDLLNAME)\r
+TKLIB         = $(OUTDIR)\$(TKNAMEPREFIX)$(VERSION)$(DBGX).lib\r
+TKSTUBLIBNAME = $(TKSTUBPREFIX)$(VERSION)$(DBGX).lib\r
+TKSTUBLIB     = $(OUTDIR)\$(TKSTUBLIBNAME)\r
+TKPLUGINDLLNAME = $(TKNAMEPREFIX)$(VERSION)p$(DBG).dll\r
+TKPLUGINDLL   = $(OUTDIR)\$(TKPLUGINDLLNAME)\r
+TKPLUGINLIB   = $(OUTDIR)\$(TKNAMEPREFIX)$(VERSION)p$(DBGX).lib\r
+\r
+WISH      = $(OUTDIR)\$(WISHNAMEPREFIX)$(VERSION)$(DBGX).exe\r
+WISHC     = $(OUTDIR)\$(WISHNAMEPREFIX)c$(VERSION)$(DBGX).exe\r
+WISHP     = $(OUTDIR)\$(WISHNAMEPREFIX)p$(VERSION)$(DBGX).exe\r
+TKTEST    = $(OUTDIR)\$(TKNAMEPREFIX)test.exe\r
+CAT32     = $(TMPDIR)\cat32.exe\r
+\r
+BIN_INSTALL_DIR     = $(INSTALLDIR)\bin\r
+INCLUDE_INSTALL_DIR = $(INSTALLDIR)\include\r
+LIB_INSTALL_DIR     = $(INSTALLDIR)\lib\r
+SCRIPT_INSTALL_DIR  = $(LIB_INSTALL_DIR)\tk$(DOTVERSION)\r
+\r
+WISHOBJS = \\r
+  $(TMPDIR)\winMain.obj\r
+\r
+TKTESTOBJS = \\r
+  $(TMPDIR)\tkTest.obj \\r
+  $(TMPDIR)\tkSquare.obj \\r
+  $(TMPDIR)\testMain.obj \\r
+  $(TMPDIR)\tkWinTest.obj \\r
+  $(TCLLIBDIR)\tclThreadTest.obj\r
+\r
+XLIBOBJS = \\r
+  $(TMPDIR)\xcolors.obj \\r
+  $(TMPDIR)\xdraw.obj \\r
+  $(TMPDIR)\xgc.obj \\r
+  $(TMPDIR)\ximage.obj \\r
+  $(TMPDIR)\xutil.obj\r
+\r
+TKOBJS = \\r
+       $(TMPDIR)\tkConsole.obj \\r
+       $(TMPDIR)\tkUnixMenubu.obj \\r
+       $(TMPDIR)\tkUnixScale.obj \\r
+       $(XLIBOBJS) \\r
+       $(TMPDIR)\tkWin3d.obj \\r
+       $(TMPDIR)\tkWin32Dll.obj \\r
+       $(TMPDIR)\tkWinButton.obj \\r
+       $(TMPDIR)\tkWinClipboard.obj \\r
+       $(TMPDIR)\tkWinColor.obj \\r
+       $(TMPDIR)\tkWinConfig.obj \\r
+       $(TMPDIR)\tkWinCursor.obj \\r
+       $(TMPDIR)\tkWinDialog.obj \\r
+       $(TMPDIR)\tkWinDraw.obj \\r
+       $(TMPDIR)\tkWinEmbed.obj \\r
+       $(TMPDIR)\tkWinFont.obj \\r
+       $(TMPDIR)\tkWinImage.obj \\r
+       $(TMPDIR)\tkWinInit.obj \\r
+       $(TMPDIR)\tkWinKey.obj \\r
+       $(TMPDIR)\tkWinMenu.obj \\r
+       $(TMPDIR)\tkWinPixmap.obj \\r
+       $(TMPDIR)\tkWinPointer.obj \\r
+       $(TMPDIR)\tkWinRegion.obj \\r
+       $(TMPDIR)\tkWinScrlbr.obj \\r
+       $(TMPDIR)\tkWinSend.obj \\r
+       $(TMPDIR)\tkWinWindow.obj \\r
+       $(TMPDIR)\tkWinWm.obj \\r
+       $(TMPDIR)\tkWinX.obj \\r
+       $(TMPDIR)\stubs.obj \\r
+       $(TMPDIR)\tk3d.obj \\r
+       $(TMPDIR)\tkArgv.obj \\r
+       $(TMPDIR)\tkAtom.obj \\r
+       $(TMPDIR)\tkBind.obj \\r
+       $(TMPDIR)\tkBitmap.obj \\r
+       $(TMPDIR)\tkButton.obj \\r
+       $(TMPDIR)\tkCanvArc.obj \\r
+       $(TMPDIR)\tkCanvBmap.obj \\r
+       $(TMPDIR)\tkCanvImg.obj \\r
+       $(TMPDIR)\tkCanvLine.obj \\r
+       $(TMPDIR)\tkCanvPoly.obj \\r
+       $(TMPDIR)\tkCanvPs.obj \\r
+       $(TMPDIR)\tkCanvText.obj \\r
+       $(TMPDIR)\tkCanvUtil.obj \\r
+       $(TMPDIR)\tkCanvWind.obj \\r
+       $(TMPDIR)\tkCanvas.obj \\r
+       $(TMPDIR)\tkClipboard.obj \\r
+       $(TMPDIR)\tkCmds.obj \\r
+       $(TMPDIR)\tkColor.obj \\r
+       $(TMPDIR)\tkConfig.obj \\r
+       $(TMPDIR)\tkCursor.obj \\r
+       $(TMPDIR)\tkEntry.obj \\r
+       $(TMPDIR)\tkError.obj \\r
+       $(TMPDIR)\tkEvent.obj \\r
+       $(TMPDIR)\tkFileFilter.obj \\r
+       $(TMPDIR)\tkFocus.obj \\r
+       $(TMPDIR)\tkFont.obj \\r
+       $(TMPDIR)\tkFrame.obj \\r
+       $(TMPDIR)\tkGC.obj \\r
+       $(TMPDIR)\tkGeometry.obj \\r
+       $(TMPDIR)\tkGet.obj \\r
+       $(TMPDIR)\tkGrab.obj \\r
+       $(TMPDIR)\tkGrid.obj \\r
+       $(TMPDIR)\tkImage.obj \\r
+       $(TMPDIR)\tkImgBmap.obj \\r
+       $(TMPDIR)\tkImgGIF.obj \\r
+       $(TMPDIR)\tkImgPPM.obj \\r
+       $(TMPDIR)\tkImgPhoto.obj \\r
+       $(TMPDIR)\tkImgUtil.obj \\r
+       $(TMPDIR)\tkListbox.obj \\r
+       $(TMPDIR)\tkMacWinMenu.obj \\r
+       $(TMPDIR)\tkMain.obj \\r
+       $(TMPDIR)\tkMenu.obj \\r
+       $(TMPDIR)\tkMenubutton.obj \\r
+       $(TMPDIR)\tkMenuDraw.obj \\r
+       $(TMPDIR)\tkMessage.obj \\r
+       $(TMP_DIR)\tkPanedWindow.obj \\r
+       $(TMPDIR)\tkObj.obj \\r
+       $(TMPDIR)\tkOldConfig.obj \\r
+       $(TMPDIR)\tkOption.obj \\r
+       $(TMPDIR)\tkPack.obj \\r
+       $(TMPDIR)\tkPlace.obj \\r
+       $(TMPDIR)\tkPointer.obj \\r
+       $(TMPDIR)\tkRectOval.obj \\r
+       $(TMPDIR)\tkScale.obj \\r
+       $(TMPDIR)\tkScrollbar.obj \\r
+       $(TMPDIR)\tkSelect.obj \\r
+       $(TMPDIR)\tkText.obj \\r
+       $(TMPDIR)\tkTextBTree.obj \\r
+       $(TMPDIR)\tkTextDisp.obj \\r
+       $(TMPDIR)\tkTextImage.obj \\r
+       $(TMPDIR)\tkTextIndex.obj \\r
+       $(TMPDIR)\tkTextMark.obj \\r
+       $(TMPDIR)\tkTextTag.obj \\r
+       $(TMPDIR)\tkTextWind.obj \\r
+       $(TMPDIR)\tkTrig.obj \\r
+       $(TMPDIR)\tkUtil.obj \\r
+       $(TMPDIR)\tkVisual.obj \\r
+       $(TMPDIR)\tkStubInit.obj \\r
+       $(TMPDIR)\tkStubLib.obj \\r
+       $(TMPDIR)\tkWindow.obj\r
+\r
+# Maintenance hint: Please have multiple members of TKSTUBOBJS be separated\r
+# by exactly one ' ' (see below the rule for making TKSTUBLIB)\r
+TKSTUBOBJS = $(TMPDIR)\tkStubLib.obj $(TMPDIR)\tkStubImg.obj\r
+\r
+WINDIR      = $(ROOT)\win\r
+GENERICDIR  = $(ROOT)\generic\r
+XLIBDIR     = $(ROOT)\xlib\r
+BITMAPDIR   = $(ROOT)\bitmaps\r
+TCLLIBDIR   = $(TCLDIR)\win\$(OUTDIRNAME)\r
+RCDIR       = $(WINDIR)\rc\r
+\r
+TK_INCLUDES = -I$(WINDIR) -I$(GENERICDIR) -I$(BITMAPDIR) -I$(XLIBDIR) \\r
+      -I$(TCLDIR)\generic\r
+\r
+TK_DEFINES  = -D__WIN32__ $(DEBUGDEFINES) $(THREADDEFINES)\r
+\r
+######################################################################\r
+# Compile flags\r
+######################################################################\r
+\r
+!IF "$(NODEBUG)" == "1"\r
+# these macros cause maximum optimization and no symbols\r
+cdebug = -v- -vi- -O2 -D_DEBUG\r
+!ELSE\r
+# these macros enable debugging\r
+cdebug = -k -Od -r- -v -vi- -y\r
+!ENDIF\r
+\r
+SYSDEFINES = _MT;NO_STRICT;_NO_VCL\r
+\r
+# declarations common to all compiler options\r
+cbase = -3 -a4 -c -g0 -tWM -Ve -Vx -X-\r
+WARNINGS = -w-rch -w-pch -w-par -w-dup -w-pro -w-dpu\r
+\r
+ccons = -tWC\r
+\r
+CFLAGS      = $(cdebug) $(cbase) $(WARNINGS) -D$(SYSDEFINES)\r
+\r
+CON_CFLAGS  = $(CFLAGS) $(TK_DEFINES) $(include32) $(ccons)\r
+WISH_CFLAGS = $(CFLAGS) $(include32) $(TK_INCLUDES) $(TK_DEFINES)\r
+TK_CFLAGS   = $(CFLAGS) $(include32) $(TK_INCLUDES) $(TK_DEFINES) \\r
+                   -DUSE_TCL_STUBS\r
+\r
+######################################################################\r
+# Link flags\r
+######################################################################\r
+\r
+!IF "$(NODEBUG)" == "1"\r
+ldebug =\r
+!ELSE\r
+ldebug = -v\r
+!ENDIF\r
+\r
+# declarations common to all linker options\r
+LNFLAGS = -D"" -Gn -I$(TMPDIR) -x $(ldebug) $(libpath32)\r
+# -Gi: create lib file (is -Gl in doc)\r
+# -aa: Windows app, -ap: Windows console app\r
+LNFLAGS_DLL  = -ap -Gi -Tpd\r
+LNFLAGS_CONS = -ap -Tpe\r
+LNFLAGS_GUI  = -aa -Tpe\r
+\r
+LNLIBS = import32 cw32mt\r
+\r
+\r
+######################################################################\r
+# Project specific targets\r
+######################################################################\r
+\r
+all:      setup $(WISH) $(CAT32)\r
+install:  install-binaries install-libraries\r
+plugin:   setup $(TKPLUGINDLL) $(WISHP)\r
+tktest:   setup $(TKTEST) $(CAT32)\r
+\r
+# Maintenance hint: We want to set environment variables before calling tktest.\r
+#  If we do this in the form of normal commands, they will not persist up to \r
+#  the call of tktest. Therfore we put all commands wanted into a batch file.\r
+#  The normal way of using 'echo >x.bat' and 'echo >>x.bat' does not work here\r
+#  because we cannot write '... > tktest.txt' this way. Hence this advanced \r
+#  form of loop hopping:\r
+#    - Have MAKE produce a temporary file with the content we want.\r
+#    - Use it as input to the COPY command to produce a batch file.\r
+#    - Run the batch file and be happy.\r
+#\r
+test:     setup $(TKTEST) $(TKLIB) $(CAT32)\r
+  copy &&!\r
+  set TCL_LIBRARY=$(TCLDIR)/library \r
+  set PATH=$(TCLDIR)\win\$(TMPDIRNAME);$(PATH)\r
+  $(TKTEST) $(ROOT)/tests/all.tcl > tktest.txt\r
+! _test.bat\r
+  _test.bat\r
+#  del _test.bat\r
+\r
+runtest:  setup $(TKTEST) $(TKLIB) $(CAT32)\r
+  echo set TCL_LIBRARY=$(TCLDIR)/library             > _test2.bat\r
+  echo set PATH=$(TCLDIR)\win\$(TMPDIRNAME);$(PATH) >> _test2.bat\r
+  echo $(TKTEST)                                    >> _test2.bat\r
+  _test2.bat\r
+#  del _test2.bat\r
+\r
+console-wish : all $(WISHC)\r
+\r
+stubs:\r
+  $(TCLDIR)\win\$(TMPDIRNAME)\tclsh$(VERSION)$(DBGX) \\r
+    $(TCLDIR)\tools\genStubs.tcl $(GENERICDIR) \\r
+    $(GENERICDIR)\tk.decls $(GENERICDIR)\tkInt.decls\r
+\r
+setup:\r
+  @mkd $(TMPDIR)\r
+  @mkd $(OUTDIR)\r
+\r
+install-binaries:\r
+  @mkd "$(BIN_INSTALL_DIR)"\r
+  copy $(TKDLL) "$(BIN_INSTALL_DIR)"\r
+  copy $(WISH) "$(BIN_INSTALL_DIR)"\r
+  @mkd "$(LIB_INSTALL_DIR)"\r
+  copy $(TKLIB) "$(LIB_INSTALL_DIR)"\r
+\r
+install-libraries:\r
+  @mkd "$(INCLUDE_INSTALL_DIR)"\r
+  @mkd "$(INCLUDE_INSTALL_DIR)\X11"\r
+  copy "$(GENERICDIR)\tk.h"             "$(INCLUDE_INSTALL_DIR)"\r
+  copy "$(GENERICDIR)\tkDecls.h"        "$(INCLUDE_INSTALL_DIR)"\r
+  copy "$(GENERICDIR)\tkPlatDecls.h"    "$(INCLUDE_INSTALL_DIR)"\r
+  copy "$(GENERICDIR)\tkIntXlibDecls.h" "$(INCLUDE_INSTALL_DIR)"\r
+  xcopy "$(XLIBDIR)\X11\*.h"            "$(INCLUDE_INSTALL_DIR)\X11"\r
+  @mkd "$(SCRIPT_INSTALL_DIR)"\r
+  @mkd "$(SCRIPT_INSTALL_DIR)\images"\r
+  @mkd "$(SCRIPT_INSTALL_DIR)\demos"\r
+  @mkd "$(SCRIPT_INSTALL_DIR)\demos\images"\r
+  @mkd "$(SCRIPT_INSTALL_DIR)\msgs"\r
+  xcopy "$(ROOT)\library"              "$(SCRIPT_INSTALL_DIR)"\r
+  xcopy "$(ROOT)\library\images"       "$(SCRIPT_INSTALL_DIR)\images"\r
+  xcopy "$(ROOT)\library\demos"                "$(SCRIPT_INSTALL_DIR)\demos"\r
+  xcopy "$(ROOT)\library\demos\images" "$(SCRIPT_INSTALL_DIR)\demos\images"\r
+  xcopy "$(ROOT)\library\msgs"         "$(SCRIPT_INSTALL_DIR)\msgs"\r
+\r
+$(TKLIB): $(TKDLL) $(TKSTUBLIB)\r
+\r
+# Maintenance hint: The macro puts a '+-' before the first member of \r
+#   TKSTUBOBJS, than replaces any ' ' with ' +-' - together putting '+-' in\r
+#   front of any member of TKSTUBOBJS (provided, they are separated in their\r
+#   defintion by just one space).\r
+#\r
+# The first time you *make* this target, you will get a warning\r
+#   tkStubLib not found in library\r
+# This is (probably) because of the '-' option, telling TLIB to remove\r
+# 'tkStubLib' when it does not yet exist. Forcing a re-make when it already\r
+# exists avoids this warning.\r
+#\r
+$(TKSTUBLIB): $(TKSTUBOBJS)\r
+    $(lib32) $@ +-$(TKSTUBOBJS: = +-)\r
+\r
+#    $(lib32) $@ @&&!\r
+#+-$(TKSTUBOBJS: = &^\r
+#+-)\r
+#!\r
+\r
+$(TKDLL): $(TKOBJS) $(TMPDIR)\tk.res\r
+    $(link32) $(ldebug) $(LNFLAGS) $(LNFLAGS_DLL) $(TOOLS32)\lib\c0d32 @&&!\r
+      $(TKOBJS), $@, -x, $(LNLIBS) $(TCLLIBDIR)\$(TCLSTUBLIB),, $(TMPDIR)\tk.res\r
+!\r
+\r
+$(TKPLUGINLIB): $(TKPLUGINDLL)\r
+\r
+#$(TKPLUGINDLL): $(TKOBJS) $(TMPDIR)\tk.res\r
+#        $(link32) $(ldebug) $(dlllflags) \\r
+#    -out:$@ $(TMPDIR)\tk.res $(TCLLIBDIR)\$(TCLPLUGINLIB) \\r
+#    $(guilibsdll) @<<\r
+#      $(TKOBJS)\r
+#<<\r
+\r
+$(WISH): $(WISHOBJS) $(TKLIB) $(TMPDIR)\wish.res\r
+  $(link32) $(ldebug) -S:2400000 $(LNFLAGS) $(LNFLAGS_GUI) $(TOOLS32)\lib\c0x32 @&&!\r
+    $(WISHOBJS), $@, -x, $(LNLIBS) $(TCLLIBDIR)\$(TCLLIB) $(TKLIB),, $(TMPDIR)\wish.res\r
+!\r
+\r
+$(WISHC): $(WISHOBJS) $(TKLIB) $(TMPDIR)\wish.res\r
+  $(link32) $(ldebug) -S:2400000 $(LNFLAGS) $(LNFLAGS_CONS) $(TOOLS32)\lib\c0x32 @&&!\r
+    $(WISHOBJS), $@, -x, $(LNLIBS) $(TCLLIBDIR)\$(TCLLIB) $(TKLIB),, $(TMPDIR)\wish.res\r
+!\r
+\r
+$(WISHP): $(WISHOBJS) $(TKPLUGINLIB) $(TMPDIR)\wish.res\r
+  $(link32) $(ldebug) $(guilflags) $(TMPDIR)\wish.res -out:$@ \\r
+    $(guilibsdll) $(TCLLIBDIR)\$(TCLPLUGINLIB) \\r
+    $(TKPLUGINLIB) $(WISHOBJS)\r
+\r
+$(TKTEST): $(TKTESTOBJS) $(TKLIB) $(TMPDIR)\wish.res\r
+  $(link32) $(ldebug) -S:2400000 $(LNFLAGS) $(LNFLAGS_GUI) $(TOOLS32)\lib\c0x32 @&&!\r
+    $(TKTESTOBJS), $@, -x, $(LNLIBS) $(TCLLIBDIR)\$(TCLLIB) $(TKLIB),, $(TMPDIR)\wish.res\r
+!\r
+#  $(link32) $(ldebug) $(guilflags) $(TMPDIR)\wish.res -out:$@ \\r
+#    $(guilibsdll) $(TCLLIBDIR)\$(TCLLIB) $(TKLIB) $(TKTESTOBJS)\r
+\r
+#$(CAT32): $(TCLDIR)\win\cat.c\r
+#  $(cc32) $(CON_CFLAGS) -o$(TMPDIR)\cat.obj $?\r
+#  $(link32) $(conlflags) -out:$@ -stack:16384 $(TMPDIR)\cat.obj $(conlibs)\r
+\r
+$(CAT32): $(TCLDIR)\win\cat.c\r
+  $(cc32) $(CONS_CFLAGS) -o$(TMPDIR)\cat.obj $?\r
+  $(link32) $(ldebug) $(LNFLAGS) $(LNFLAGS_CONS) $(TOOLS32)\lib\c0x32 \\r
+      $(TMPDIR)\cat.obj, $@, -x, $(LNLIBS),,\r
+\r
+#\r
+# Regenerate the stubs files.\r
+#\r
+\r
+genstubs:\r
+  tclsh$(VERSION) $(TCLDIR)\tools\genStubs.tcl $(GENERICDIR) \\r
+    $(GENERICDIR)\tk.decls $(GENERICDIR)\tkInt.decls\r
+\r
+#\r
+# Special case object file targets\r
+#\r
+\r
+$(TMPDIR)\testMain.obj: $(WINDIR)\winMain.c\r
+  $(cc32) $(WISH_CFLAGS) -DTK_TEST -o$@ $?\r
+\r
+$(TMPDIR)\tkTest.obj: $(GENERICDIR)\tkTest.c\r
+  $(cc32) $(WISH_CFLAGS) -o$@ $?\r
+\r
+$(TMPDIR)\tkWinTest.obj: $(WINDIR)\tkWinTest.c\r
+  $(cc32) $(WISH_CFLAGS) -o$@ $?\r
+\r
+$(TMPDIR)\tkSquare.obj: $(GENERICDIR)\tkSquare.c\r
+  $(cc32) $(WISH_CFLAGS) -o$@ $?\r
+\r
+$(TMPDIR)\winMain.obj: $(WINDIR)\winMain.c\r
+  $(cc32) $(WISH_CFLAGS) -o$@ $?\r
+\r
+$(TMPDIR)\tkStubLib.obj : $(GENERICDIR)\tkStubLib.c\r
+  $(cc32) $(TK_CFLAGS) -DSTATIC_BUILD -o$@ $?\r
+\r
+#\r
+# Implicit rules\r
+#\r
+\r
+{$(XLIBDIR)}.c{$(TMPDIR)}.obj:\r
+  $(cc32) -DDLL_BUILD -DBUILD_tk $(TK_CFLAGS) -o$@ $<\r
+\r
+{$(GENERICDIR)}.c{$(TMPDIR)}.obj:\r
+  $(cc32) -DDLL_BUILD -DBUILD_tk $(TK_CFLAGS) -o$@ $<\r
+\r
+{$(WINDIR)}.c{$(TMPDIR)}.obj:\r
+  $(cc32) -DDLL_BUILD -DBUILD_tk $(TK_CFLAGS) -o$@ $<\r
+\r
+{$(ROOT)\unix}.c{$(TMPDIR)}.obj:\r
+  $(cc32) -DDLL_BUILD -DBUILD_tk $(TK_CFLAGS) -o$@ $<\r
+\r
+{$(RCDIR)}.rc{$(TMPDIR)}.res:\r
+  $(rc32) -I"$(GENERICDIR)" -I"$(TOOLS32)\include" -I"$(TCLDIR)\generic" \\r
+      -D$(USERDEFINES);$(SYSDEFINES) -fo$@ $<\r
+\r
+clean:\r
+  -@del $(OUTDIR)\*.exp\r
+  -@del $(OUTDIR)\*.lib\r
+  -@del $(OUTDIR)\*.dll\r
+  -@del $(OUTDIR)\*.exe\r
+  -@del $(OUTDIR)\*.pdb\r
+  -@del $(TMPDIR)\*.pch\r
+  -@del $(TMPDIR)\*.obj\r
+  -@del $(TMPDIR)\*.res\r
+  -@del $(TMPDIR)\*.exe\r
+  -@rmd $(OUTDIR)\r
+  -@rmd $(TMPDIR)\r
+\r
+# dependencies\r
+\r
+$(TMPDIR)\tk.res: \\r
+    $(RCDIR)\buttons.bmp \\r
+    $(RCDIR)\cursor*.cur \\r
+    $(RCDIR)\tk.ico\r
+\r
+$(GENERICDIR)/default.h: $(WINDIR)/tkWinDefault.h\r
+$(GENERICDIR)/tkButton.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkCanvas.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkEntry.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkFrame.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkListbox.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkMenu.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkMenubutton.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkMessage.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkScale.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkScrollbar.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkText.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkTextIndex.c: $(GENERICDIR)/default.h\r
+$(GENERICDIR)/tkTextTag.c: $(GENERICDIR)/default.h\r
+\r
+$(GENERICDIR)/tkText.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextBTree.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextDisp.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextDisp.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextImage.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextIndex.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextMark.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextTag.c: $(GENERICDIR)/tkText.h\r
+$(GENERICDIR)/tkTextWind.c: $(GENERICDIR)/tkText.h\r
+\r
+$(GENERICDIR)/tkMacWinMenu.c: $(GENERICDIR)/tkMenu.h\r
+$(GENERICDIR)/tkMenu.c: $(GENERICDIR)/tkMenu.h\r
+$(GENERICDIR)/tkMenuDraw.c: $(GENERICDIR)/tkMenu.h\r
+$(WINDIR)/tkWinMenu.c: $(GENERICDIR)/tkMenu.h\r
+\r
+\r
+\r