# Generated automatically from Makefile.in by configure.
#
# This file is a Makefile for Tk.  If it has the name "Makefile.in"
# then it is a template for a Makefile;  to generate the actual Makefile,
# run "./configure", which is a configuration script generated by the
# "autoconf" program (constructs like "@foo@" will get replaced in the
# actual Makefile.
#
# SCCS: @(#) Makefile.in 1.146 97/11/05 11:10:45

# Current Tk version;  used in various names.

TCLVERSION = 8.0
VERSION = 8.0

#----------------------------------------------------------------
# Things you can change to personalize the Makefile for your own
# site (you can make these changes in either Makefile.in or
# Makefile, but changes to Makefile will get lost if you re-run
# the configuration script).
#----------------------------------------------------------------

# Default top-level directories in which to install architecture-
# specific files (exec_prefix) and machine-independent files such
# as scripts (prefix).  The values specified here may be overridden
# at configure-time with the --exec-prefix and --prefix options
# to the "configure" script.

prefix =		/opt/tcl803
exec_prefix =		/opt/tcl803

# The following definition can be set to non-null for special systems
# like AFS with replication.  It allows the pathnames used for installation
# to be different than those used for actually reference files at
# run-time.  INSTALL_ROOT is prepended to $prefix and $exec_prefix
# when installing files.
INSTALL_ROOT =

# Directory from which applications will reference the library of Tcl
# scripts (note: you can set the TK_LIBRARY environment variable at
# run-time to override the compiled-in location):
TK_LIBRARY =		$(prefix)/lib/tk$(VERSION)

# Path name to use when installing library scripts:
SCRIPT_INSTALL_DIR =	$(INSTALL_ROOT)$(TK_LIBRARY)

# Path name to use when installing demos:
DEMO_INSTALL_DIR =	$(INSTALL_ROOT)$(prefix)/lib/tk$(VERSION)

# Path to use at runtime to refer to LIB_INSTALL_DIR:
LIB_RUNTIME_DIR =	$(exec_prefix)/lib

# Directory in which to install the .a or .so binary for the Tk library:
LIB_INSTALL_DIR =	$(INSTALL_ROOT)$(LIB_RUNTIME_DIR)

# Directory in which to install the program wish:
BIN_INSTALL_DIR =	$(INSTALL_ROOT)$(exec_prefix)/bin

# Directory from which the program wish should be referenced by scripts:
BIN_DIR =		$(exec_prefix)/bin

# Directory in which to install the include file tk.h:
INCLUDE_INSTALL_DIR =	$(INSTALL_ROOT)$(prefix)/include

# Top-level directory for manual entries:
MAN_INSTALL_DIR =	$(INSTALL_ROOT)$(prefix)/man

# Directory in which to install manual entry for wish:
MAN1_INSTALL_DIR =	$(MAN_INSTALL_DIR)/man1

# Directory in which to install manual entries for Tk's C library
# procedures:
MAN3_INSTALL_DIR =	$(MAN_INSTALL_DIR)/man3

# Directory in which to install manual entries for the built-in
# Tcl commands implemented by Tk:
MANN_INSTALL_DIR =	$(MAN_INSTALL_DIR)/mann

TCL_VERSION =	8.0

# The directory containing the Tcl sources and headers appropriate
# for this version of Tk ("srcdir" will be replaced or has already
# been replaced by the configure script):
TCL_LIBRARY =	/tmp_mnt/home/yakuza/de/src/tcl8.0.3/library

# The directory containing the Tcl sources and headers appropriate
# for this version of Tk ("srcdir" will be replaced or has already
# been replaced by the configure script):
TCL_INC_DIR =	/tmp_mnt/home/yakuza/de/src/tcl8.0.3/generic

# The directory containing the Tcl library archive file appropriate
# for this version of Tk:
TCL_LIB_DIR =		/tmp_mnt/home/yakuza/de/src/tcl8.0.3/unix

# The directory containing the Tcl executables appropriate
# for this version of Tk:
TCL_BIN_DIR =		/tmp_mnt/home/yakuza/de/src/tcl8.0.3/unix

# Libraries built with optimization switches have this additional extension
TK_DBGX =		
TCL_DBGX =		

# warning flags
CFLAGS_WARNING =	

# The default switches for optimization or debugging
CFLAGS_DEBUG =		-g
CFLAGS_OPTIMIZE =	-O

# To change the compiler switches, for example to change from optimization to
# debugging symbols, change the following line:
#CFLAGS = 		$(CFLAGS_DEBUG)
#CFLAGS = 		$(CFLAGS_OPTIMIZE)
#CFLAGS = 		$(CFLAGS_DEBUG) $(CFLAGS_OPTIMIZE)
CFLAGS = 		$(CFLAGS_OPTIMIZE)
CXXFLAGS = 		$(CFLAGS_OPTIMIZE)

# A "-I" switch that can be used when compiling to make all of the
# X11 include files accessible (the configure script will try to
# set this value, and will cause it to be an empty string if the
# include files are accessible via /usr/include).
X11_INCLUDES =		# no special path needed

# Linker switch(es) to use to link with the X11 library archive (the
# configure script will try to set this value automatically, but you
# can override it).
X11_LIB_SWITCHES =	-lX11
X11_LIB_DIR =		

# Libraries to use when linking.  This definition is determined by the
# configure script.
LIBS = 

ALL_LIBS = -L/tmp_mnt/home/yakuza/de/src/tk8.0.3/unix -ltk8.0${TK_DBGX} $(X11_LIB_SWITCHES) \
		-L/opt/tcl803/lib -ltcl8.0${TCL_DBGX}   -lm -lc -Wl,-rpath,${LIB_RUNTIME_DIR}

STATIC_LIBS = libtk8.0${TK_DBGX}.a $(X11_LIB_SWITCHES) \
		$(TCL_LIB_DIR)/libtcl8.0.a   \
		-lm -lc -Wl,-rpath,${LIB_RUNTIME_DIR}

# To turn off the security checks that disallow incoming sends when
# the X server appears to be insecure, reverse the comments on the
# following lines:
SECURITY_FLAGS =
#SECURITY_FLAGS = -DTK_NO_SECURITY

# To disable ANSI-C procedure prototypes reverse the comment characters
# on the following lines:
PROTO_FLAGS =
#PROTO_FLAGS = -DNO_PROTOTYPE

# To enable memory debugging reverse the comment characters on the following
# lines.  Warning:  if you enable memory debugging, you must do it
# *everywhere*, including all the code that calls Tcl, and you must use
# ckalloc and ckfree everywhere instead of malloc and free.
MEM_DEBUG_FLAGS =
#MEM_DEBUG_FLAGS = -DTCL_MEM_DEBUG

# If your X server is X11R4 or earlier, then you may wish to reverse
# the comment characters on the following two lines.  This will enable
# extra code to speed up XStringToKeysym.  In X11R5 and later releases
# XStringToKeysym is plenty fast, so you needn't define REDO_KEYSYM_LOOKUP.
KEYSYM_FLAGS =
#KEYSYM_FLAGS = -DREDO_KEYSYM_LOOKUP

# Some versions of make, like SGI's, use the following variable to
# determine which shell to use for executing commands:
SHELL =		/bin/sh

# Tk used to let the configure script choose which program to use
# for installing, but there are just too many different versions of
# "install" around;  better to use the install-sh script that comes
# with the distribution, which is slower but guaranteed to work.

INSTALL =		/tmp_mnt/home/yakuza/de/src/tk8.0.3/unix/install-sh -c
INSTALL_PROGRAM =	${INSTALL}
INSTALL_DATA =		${INSTALL} -m 644
MKINSTALLDIRS =		/tmp_mnt/home/yakuza/de/src/tk8.0.3/unix/mkinstalldirs
PKGINSTALL =		$(TCL_BIN_DIR)/tclsh$(TCL_VERSION) /tmp_mnt/home/yakuza/de/src/tk8.0.3/unix/pkgInstall.tcl 


# The symbols below provide support for dynamic loading and shared
# libraries.  The values of the symbols are normally set by the
# configure script.  You shouldn't normally need to modify any of
# these definitions by hand.

SHLIB_CFLAGS = 

TEST_SHLIB = Tktest.so Tksquare.so
#TEST_SHLIB = ""

TK_LIB_FILE = libtk8.0${TK_DBGX}.so
#TK_LIB_FILE = libtk8.0${TK_DBGX}.a

SHLIB_SUFFIX = .so
#SHLIB_SUFFIX = .so

SHOBJ_SUFFIX = .o
#SHOBJ_SUFFIX = .o

TK_SHARED_LIB_FILE = libtk8.0${TK_DBGX}.so
#TK_SHARED_LIB_FILE = libtk$(VERSION)$(SHLIB_SUFFIX)

TK_UNSHARED_LIB_FILE = libtk8.0${TK_DBGX}.a
#TK_UNSHARED_LIB_FILE = libtk$(VERSION).a

TK_LIB_FLAG = -ltk8.0${TK_DBGX}
#TK_LIB_FLAG = -ltk

TCL_LIB_FLAG = -ltcl8.0${TCL_DBGX}
#TCL_LIB_FLAG = -ltcl

# The symbol below provides support for dynamic loading and shared
# libraries.  See configure.in for a description of what it means.
# The values of the symbolis normally set by the configure script.

SHLIB_LD = ld -shared -expect_unresolved "*"

# Additional search flags needed to find the various shared libraries
# at run-time.  The first symbol is for use when creating a binary
# with cc, and the second is for use when running ld directly.
TK_CC_SEARCH_FLAGS = -Wl,-rpath,${LIB_RUNTIME_DIR}
TK_LD_SEARCH_FLAGS = -rpath ${LIB_RUNTIME_DIR}

#----------------------------------------------------------------
# The information below is modified by the configure script when
# Makefile is generated from Makefile.in.  You shouldn't normally
# modify any of this stuff by hand.
#----------------------------------------------------------------

AC_FLAGS =		 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 
RANLIB =		ranlib
LN_S =			ln -s
SHLIB_LD =		ld -shared -expect_unresolved "*"
TOP_DIR =		/tmp_mnt/home/yakuza/de/src/tk8.0.3
BUILD_DIR =		/tmp_mnt/home/yakuza/de/src/tk8.0.3/unix
GENERIC_DIR =		$(TOP_DIR)/generic
UNIX_DIR = 		$(TOP_DIR)/unix
BMAP_DIR =		$(TOP_DIR)/bitmaps
TOOL_DIR =		/tmp_mnt/home/yakuza/de/src/tcl8.0.3/tools

#----------------------------------------------------------------
# The information below should be usable as is.  The configure
# script won't modify it and you shouldn't need to modify it
# either.
#----------------------------------------------------------------


CC =		gcc
CXX =		c++
CC_SWITCHES =	${CFLAGS} ${CFLAGS_WARNING} \
-I${UNIX_DIR} -I${GENERIC_DIR} \
-I${BMAP_DIR} -I${TCL_INC_DIR} ${X11_INCLUDES} ${AC_FLAGS} ${PROTO_FLAGS} \
${SECURITY_FLAGS} ${MEM_DEBUG_FLAGS} ${KEYSYM_FLAGS}
CXX_SWITCHES =	${CXXFLAGS} ${CFLAGS_WARNING} \
-I${UNIX_DIR} -I${GENERIC_DIR} \
-I${BMAP_DIR} -I${TCL_INC_DIR} ${X11_INCLUDES} ${AC_FLAGS} ${PROTO_FLAGS} \
${SECURITY_FLAGS} ${MEM_DEBUG_FLAGS} ${KEYSYM_FLAGS}

DEPEND_SWITCHES = ${CFLAGS} -I${UNIX_DIR} -I${GENERIC_DIR} \
-I${BMAP_DIR} \
-I${TCL_INC_DIR} ${X11_INCLUDES} \
${AC_FLAGS} ${PROTO_FLAGS} ${SECURITY_FLAGS} ${MEM_DEBUG_FLAGS} \
${KEYSYM_FLAGS}

WISH_OBJS = tkAppInit.o
WISH_PPOBJS = tkAppInit++.o
WISH_SAOBJS = tkAppInitSA.o

TKTEST_OBJS = tkTestInit.o tkTest.o tkSquare.o
TKTEST_PPOBJS = tkTestInit++.o tkTest++.o tkSquare++.o
TKTEST_SAOBJS = tkTestInitSA.o tkTest.o tkSquare.o

WIDGOBJS = tkButton.o tkEntry.o tkFrame.o tkListbox.o \
	tkMenu.o tkMenubutton.o tkMenuDraw.o tkMessage.o tkScale.o \
	tkScrollbar.o

CANVOBJS = tkCanvas.o tkCanvArc.o tkCanvBmap.o tkCanvImg.o \
	tkCanvLine.o tkCanvPoly.o tkCanvPs.o tkCanvText.o \
	tkCanvUtil.o tkCanvWind.o tkRectOval.o tkTrig.o

IMAGEOBJS = tkImage.o tkImgBmap.o tkImgGIF.o tkImgPPM.o tkImgPhoto.o

TEXTOBJS = tkText.o tkTextBTree.o tkTextDisp.o tkTextImage.o tkTextIndex.o \
	tkTextMark.o tkTextTag.o tkTextWind.o

UNIXOBJS = tkUnix.o tkUnix3d.o tkUnixButton.o tkUnixColor.o tkUnixCursor.o \
	tkUnixDialog.o tkUnixDraw.o \
	tkUnixEmbed.o tkUnixEvent.o tkUnixFocus.o tkUnixFont.o \
	tkUnixMenu.o tkUnixMenubu.o tkUnixScale.o tkUnixScrlbr.o \
	tkUnixSelect.o tkUnixSend.o tkUnixWm.o tkUnixXId.o

OBJS =  tk3d.o tkArgv.o tkAtom.o tkBind.o tkBitmap.o tkClipboard.o tkCmds.o \
	tkColor.o tkConfig.o tkCursor.o tkError.o tkEvent.o \
	tkFocus.o tkFont.o tkGet.o tkGC.o tkGeometry.o tkGrab.o tkGrid.o \
	tkOption.o tkPack.o tkPlace.o \
	tkSelect.o tkUtil.o tkVisual.o tkWindow.o \
	$(UNIXOBJS) $(WIDGOBJS) $(CANVOBJS) $(IMAGEOBJS) $(TEXTOBJS)

SPECIAL_OBJS = tkMain.o tkUnixInit.o tkInitSA.o

WIDGSOBJS = tkButton$(SHOBJ_SUFFIX) tkEntry$(SHOBJ_SUFFIX) \
	tkFrame$(SHOBJ_SUFFIX) tkListbox$(SHOBJ_SUFFIX) \
	tkMenu$(SHOBJ_SUFFIX) tkMenubutton$(SHOBJ_SUFFIX) \
	tkMenuDraw$(SHOBJ_SUFFIX) tkMessage$(SHOBJ_SUFFIX) \
	tkScale$(SHOBJ_SUFFIX) tkScrollbar$(SHOBJ_SUFFIX)

CANVSOBJS = tkCanvas$(SHOBJ_SUFFIX) tkCanvArc$(SHOBJ_SUFFIX) \
	tkCanvBmap$(SHOBJ_SUFFIX) tkCanvImg$(SHOBJ_SUFFIX) \
	tkCanvLine$(SHOBJ_SUFFIX) tkCanvPoly$(SHOBJ_SUFFIX) \
	tkCanvPs$(SHOBJ_SUFFIX) tkCanvText$(SHOBJ_SUFFIX) \
	tkCanvUtil$(SHOBJ_SUFFIX) tkCanvWind$(SHOBJ_SUFFIX) \
	tkRectOval$(SHOBJ_SUFFIX) tkTrig$(SHOBJ_SUFFIX)

IMAGESOBJS = tkImage$(SHOBJ_SUFFIX) tkImgBmap$(SHOBJ_SUFFIX) \
	tkImgGIF$(SHOBJ_SUFFIX) tkImgPPM$(SHOBJ_SUFFIX) \
	tkImgPhoto$(SHOBJ_SUFFIX)

TEXTSOBJS = tkText$(SHOBJ_SUFFIX) tkTextBTree$(SHOBJ_SUFFIX) \
	tkTextDisp$(SHOBJ_SUFFIX) tkTextImage$(SHOBJ_SUFFIX) \
	tkTextIndex$(SHOBJ_SUFFIX) tkTextMark$(SHOBJ_SUFFIX) \
	tkTextTag$(SHOBJ_SUFFIX) tkTextWind$(SHOBJ_SUFFIX)

UNIXSOBJS = tkUnix$(SHOBJ_SUFFIX) tkUnix3d$(SHOBJ_SUFFIX) \
	tkUnixButton$(SHOBJ_SUFFIX) tkUnixColor$(SHOBJ_SUFFIX) \
	tkUnixCursor$(SHOBJ_SUFFIX) tkUnixDialog$(SHOBJ_SUFFIX) \
	tkUnixDraw$(SHOBJ_SUFFIX) tkUnixEmbed$(SHOBJ_SUFFIX) \
	tkUnixEvent$(SHOBJ_SUFFIX) tkUnixFocus$(SHOBJ_SUFFIX) \
	tkUnixFont$(SHOBJ_SUFFIX) tkUnixMenu$(SHOBJ_SUFFIX) \
	tkUnixMenubu$(SHOBJ_SUFFIX) tkUnixScale$(SHOBJ_SUFFIX) \
	tkUnixScrlbr$(SHOBJ_SUFFIX) tkUnixSelect$(SHOBJ_SUFFIX) \
	tkUnixSend$(SHOBJ_SUFFIX) tkUnixWm$(SHOBJ_SUFFIX) \
	tkUnixXId$(SHOBJ_SUFFIX)

SOBJS =  tk3d$(SHOBJ_SUFFIX) tkArgv$(SHOBJ_SUFFIX) tkAtom$(SHOBJ_SUFFIX) \
	tkBind$(SHOBJ_SUFFIX) tkBitmap$(SHOBJ_SUFFIX) tkClipboard$(SHOBJ_SUFFIX) \
	tkCmds$(SHOBJ_SUFFIX) tkColor$(SHOBJ_SUFFIX) tkConfig$(SHOBJ_SUFFIX) \
	tkCursor$(SHOBJ_SUFFIX) tkError$(SHOBJ_SUFFIX) tkEvent$(SHOBJ_SUFFIX) \
	tkFocus$(SHOBJ_SUFFIX) tkFont$(SHOBJ_SUFFIX) tkGet$(SHOBJ_SUFFIX) \
	tkGC$(SHOBJ_SUFFIX) tkGeometry$(SHOBJ_SUFFIX) tkGrab$(SHOBJ_SUFFIX) \
	tkGrid$(SHOBJ_SUFFIX) tkOption$(SHOBJ_SUFFIX) tkPack$(SHOBJ_SUFFIX) \
	tkPlace$(SHOBJ_SUFFIX) tkSelect$(SHOBJ_SUFFIX) tkUtil$(SHOBJ_SUFFIX) \
	tkVisual$(SHOBJ_SUFFIX) tkWindow$(SHOBJ_SUFFIX) \
	$(UNIXSOBJS) $(WIDGSOBJS) $(CANVSOBJS) $(IMAGESOBJS) $(TEXTSOBJS)

SPECIAL_SOBJS = tkMain$(SHOBJ_SUFFIX) tkUnixInit$(SHOBJ_SUFFIX) \
		tkInitDSA${SHOBJ_SUFFIX}

SRCS = \
	$(GENERIC_DIR)/tk3d.c $(GENERIC_DIR)/tkArgv.c \
	$(GENERIC_DIR)/tkAtom.c $(GENERIC_DIR)/tkBind.c	\
	$(GENERIC_DIR)/tkBitmap.c $(GENERIC_DIR)/tkClipboard.c \
	$(GENERIC_DIR)/tkCmds.c $(GENERIC_DIR)/tkColor.c \
	$(GENERIC_DIR)/tkConfig.c $(GENERIC_DIR)/tkCursor.c \
	$(GENERIC_DIR)/tkError.c $(GENERIC_DIR)/tkEvent.c \
	$(GENERIC_DIR)/tkFocus.c $(GENERIC_DIR)/tkFont.c \
	$(GENERIC_DIR)/tkGet.c $(GENERIC_DIR)/tkGC.c \
	$(GENERIC_DIR)/tkGeometry.c $(GENERIC_DIR)/tkGrab.c \
	$(GENERIC_DIR)/tkGrid.c \
	$(GENERIC_DIR)/tkMain.c $(GENERIC_DIR)/tkOption.c \
	$(GENERIC_DIR)/tkPack.c $(GENERIC_DIR)/tkPlace.c \
	$(GENERIC_DIR)/tkSelect.c $(GENERIC_DIR)/tkUtil.c \
	$(GENERIC_DIR)/tkVisual.c $(GENERIC_DIR)/tkWindow.c \
	$(GENERIC_DIR)/tkButton.c \
	$(GENERIC_DIR)/tkEntry.c $(GENERIC_DIR)/tkFrame.c \
	$(GENERIC_DIR)/tkListbox.c $(GENERIC_DIR)/tkMenu.c \
	$(GENERIC_DIR)/tkMenubutton.c $(GENERIC_DIR)/tkMenuDraw.c \
	$(GENERIC_DIR)/tkMessage.c \
	$(GENERIC_DIR)/tkScale.c $(GENERIC_DIR)/tkScrollbar.c \
	$(GENERIC_DIR)/tkCanvas.c $(GENERIC_DIR)/tkCanvArc.c \
	$(GENERIC_DIR)/tkCanvBmap.c $(GENERIC_DIR)/tkCanvImg.c \
	$(GENERIC_DIR)/tkCanvLine.c $(GENERIC_DIR)/tkCanvPoly.c \
	$(GENERIC_DIR)/tkCanvPs.c $(GENERIC_DIR)/tkCanvText.c \
	$(GENERIC_DIR)/tkCanvUtil.c \
	$(GENERIC_DIR)/tkCanvWind.c $(GENERIC_DIR)/tkRectOval.c \
	$(GENERIC_DIR)/tkTrig.c $(GENERIC_DIR)/tkImage.c \
	$(GENERIC_DIR)/tkImgBmap.c $(GENERIC_DIR)/tkImgGIF.c \
	$(GENERIC_DIR)/tkImgPPM.c \
	$(GENERIC_DIR)/tkImgPhoto.c $(GENERIC_DIR)/tkText.c \
	$(GENERIC_DIR)/tkTextBTree.c $(GENERIC_DIR)/tkTextDisp.c \
	$(GENERIC_DIR)/tkTextImage.c \
	$(GENERIC_DIR)/tkTextIndex.c $(GENERIC_DIR)/tkTextMark.c \
	$(GENERIC_DIR)/tkTextTag.c $(GENERIC_DIR)/tkTextWind.c \
	$(GENERIC_DIR)/tkSquare.c $(GENERIC_DIR)/tkTest.c \
	$(UNIX_DIR)/tkAppInit.c $(UNIX_DIR)/tkUnix.c \
	$(UNIX_DIR)/tkUnix3d.c \
	$(UNIX_DIR)/tkUnixButton.c $(UNIX_DIR)/tkUnixColor.c \
	$(UNIX_DIR)/tkUnixCursor.c \
	$(UNIX_DIR)/tkUnixDialog.c $(UNIX_DIR)/tkUnixDraw.c \
	$(UNIX_DIR)/tkUnixEmbed.c $(UNIX_DIR)/tkUnixEvent.c \
	$(UNIX_DIR)/tkUnixFocus.c \
	$(UNIX_DIR)/tkUnixFont.c $(UNIX_DIR)/tkUnixInit.c \
	$(UNIX_DIR)/tkUnixMenu.c $(UNIX_DIR)/tkUnixMenubu.c \
	$(UNIX_DIR)/tkUnixScale.c $(UNIX_DIR)/tkUnixScrlbr.c \
	$(UNIX_DIR)/tkUnixSelect.c \
	$(UNIX_DIR)/tkUnixSend.c $(UNIX_DIR)/tkUnixWm.c \
	$(UNIX_DIR)/tkUnixXId.c

C_STANDALONE = $(TOP_DIR)/library/bgerror.c $(TOP_DIR)/library/button.c \
	$(TOP_DIR)/library/clrpick.c $(TOP_DIR)/library/comdlg.c \
	$(TOP_DIR)/library/console.c $(TOP_DIR)/library/dialog.c \
	$(TOP_DIR)/library/entry.c $(TOP_DIR)/library/focus.c \
	$(TOP_DIR)/library/listbox.c $(TOP_DIR)/library/menu.c \
	$(TOP_DIR)/library/msgbox.c $(TOP_DIR)/library/obsolete.c \
	$(TOP_DIR)/library/optMenu.c $(TOP_DIR)/library/palette.c \
	$(TOP_DIR)/library/safetk.c $(TOP_DIR)/library/scale.c \
	$(TOP_DIR)/library/scrlbar.c $(TOP_DIR)/library/tearoff.c \
	$(TOP_DIR)/library/text.c $(TOP_DIR)/library/tkfbox.c \
	$(TOP_DIR)/library/xmfbox.c $(TOP_DIR)/library/tk.c \
	$(TOP_DIR)/library/tclIndex.h

HDRS = bltList.h \
	default.h ks_names.h tkPatch.h tk.h tkButton.h tkCanvas.h tkInt.h  \
	tkPort.h tkScrollbar.h tkText.h

DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget

release:	${TK_UNSHARED_LIB_FILE} wish
all:		release standalone

# The following target is configured by autoconf to generate either
# a non-shared library for Tk or both a shared and non-shared library.

libtk.o:	${OBJS}
	rm -f $@
	ld -r -o $@  $(OBJS)

libtk..o:	${SOBJS}
	rm -f $@
	ld -r -G 0 -o $@  $(SOBJS)

${TK_UNSHARED_LIB_FILE}: libtk.o $(SPECIAL_OBJS)
	rm -f $@
	ar cr $@ libtk.o $(SPECIAL_OBJS)
	$(RANLIB) $@

${TK_SHARED_LIB_FILE}: ${SOBJS} $(SPECIAL_SOBJS)
	rm -f $@
	PATH=$(TCL_BIN_DIR):${PATH}; export PATH; \
	LD_LIBRARY_PATH=${TCL_LIB_DIR}:${X11_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	$(SHLIB_LD)  -o $@ -rpath ${LIB_RUNTIME_DIR} \
		${SOBJS} $(SPECIAL_SOBJS) -lX11 ${LIBS}
	chmod 555 $@

# Make target which outputs the list of the .o contained in the Tk lib
# usefull to build a single big shared library containing Tcl/Tk and other
# extensions.  used for the Tcl Plugin.  -- dl
tkLibObjs:
	@echo ${SOBJS} $(SPECIAL_SOBJS)
# This targets actually build the objects needed for the lib in the above
# case
objs: ${SOBJS} $(SPECIAL_SOBJS)

plusplus:	wish++

static:		wish.static

standalone:	wish.standalone


wish: $(WISH_OBJS) $(TK_LIB_FILE)
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${X11_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	$(CC)  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(WISH_OBJS) $(ALL_LIBS) -o $@${VERSION}
	@rm -f $@
	@$(LN_S) $@${VERSION} $@
	@rm -f ${UNIX_DIR}/$@
	@$(LN_S) ${BUILD_DIR}/$@${VERSION} ${UNIX_DIR}/$@ 

wish++: $(WISH_PPOBJS) $(TK_LIB_FILE)
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${X11_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	$(CC)  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(WISH_PPOBJS) $(ALL_LIBS) -o $@

wish.static: $(WISH_OBJS) $(TK_UNSHARED_LIB_FILE)
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${X11_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	$(CC)  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(WISH_OBJS) $(STATIC_LIBS) -o $@

wish.standalone: $(WISH_SAOBJS) $(TK_UNSHARED_LIB_FILE)
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${X11_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	$(CC)  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(WISH_SAOBJS) $(STATIC_LIBS) -o $@

tktest: $(TKTEST_OBJS) $(TK_LIB_FILE)
	$(CC) -o $@  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(TKTEST_OBJS) $(ALL_LIBS)
  
tktest++: $(TKTEST_PPOBJS) $(TK_LIB_FILE)
	$(CC) -o $@  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(TKTEST_PPOBJS) $(ALL_LIBS)

tktest.static: $(TKTEST_OBJS) $(TK_UNSHARED_LIB_FILE)
	$(CC) -o $@  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(TKTEST_OBJS) $(STATIC_LIBS)

tktest.standalone: $(TKTEST_SAOBJS) $(TK_UNSHARED LIB_FILE)
	$(CC) -o $@  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp $(TKTEST_SAOBJS) $(STATIC_LIBS)

Tktest$(SHLIB_SUFFIX): tkTest$(SHOBJ_SUFFIX)
	rm -f $@
	PATH=$(TCL_BIN_DIR):${PATH}; export PATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	$(SHLIB_LD) -o $@ -rpath ${LIB_RUNTIME_DIR} tkTest$(SHOBJ_SUFFIX) \
		 -lX11 ${LIBS}

Tksquare$(SHLIB_SUFFIX): tkSquare$(SHOBJ_SUFFIX)
	rm -f $@
	PATH=$(TCL_BIN_DIR):${PATH}; export PATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	$(SHLIB_LD) -o $@ -rpath ${LIB_RUNTIME_DIR} tkSquare$(SHOBJ_SUFFIX) \
		 -lX11 ${LIBS}

xttest: test.o tkTest.o tkSquare.o $(TK_LIB_FILE)
	${CC}  -u fabs -u truncate -u sigaction -u sigfillset 	-u sigemptyset -u sigaddset -u sigprocmask -u sigismember 	-u chroot -u times -u rresvport -u getgrgid -u endgrent 	-u getgrnam -u getegid -u getppid -u getpgrp -u setpgid 	-u sysconf -u getgroups -u setuid -u getgid -u setgid 	-u random -u srandom -u strcoll -u strspn -u getpriority 	-u setpriority -u sync -u fsync -u fork -u execl -u link 	-u ftruncate -u fchmod -u fchown -u dup -u memcmp test.o tkTest.o tkSquare.o \
		-L/tmp_mnt/home/yakuza/de/src/tk8.0.3/unix -ltk8.0${TK_DBGX} $(LIBS) \
		-rpath ${LIB_RUNTIME_DIR} -lXt -o xttest

# Note, in the target below TCL_LIBRARY needs to be set or else
# "make test" won't work in the case where the compilation directory
# isn't the same as the source directory.

test: wish ${TEST_SHLIB}
	PATH=$(BUILD_DIR):$(PATH); export PATH; \
	TCLLIBPATH=$(BUILD_DIR); export TCLLIBPATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	SHLIB_PATH=`pwd`:${TCL_BIN_DIR}:${SHLIB_PATH}; \
	export SHLIB_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	TK_LIBRARY=$(TOP_DIR)/library; export TK_LIBRARY; \
	( echo cd $(TOP_DIR)/tests\; source all\; exit ) \
	| wish -geometry +0+0
 
test++: wish++ ${TEST_SHLIB}
	PATH=$(BUILD_DIR):$(PATH); export PATH; \
	TCLLIBPATH=$(BUILD_DIR); export TCLLIBPATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	TK_LIBRARY=$(TOP_DIR)/library; export TK_LIBRARY; \
	( echo cd $(TOP_DIR)/tests\; source all\; exit ) \
	| wish++ -geometry +0+0

test.verbose: wish ${TEST_SHLIB}
	PATH=$(BUILD_DIR):$(PATH); export PATH; \
	TCLLIBPATH=$(BUILD_DIR); export TCLLIBPATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	TK_LIBRARY=$(TOP_DIR)/library; export TK_LIBRARY; \
	( echo cd $(TOP_DIR)/tests\; set VERBOSE 1\; source all\; exit ) \
	| wish -geometry +0+0

test.static: tktest.static ${TEST_SHLIB}
	PATH=$(BUILD_DIR):$(PATH); export PATH; \
	TCLLIBPATH=$(BUILD_DIR); export TCLLIBPATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	TK_LIBRARY=$(TOP_DIR)/library; export TK_LIBRARY; \
	( echo cd $(TOP_DIR)/tests\; source all\; exit ) \
	| tktest.static -geometry +0+0

test.standalone: tktest.standalone ${TEST_SHLIB}
	PATH=$(BUILD_DIR):$(PATH); export PATH; \
	TCLLIBPATH=$(BUILD_DIR); export TCLLIBPATH; \
	LD_LIBRARY_PATH=`pwd`:${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	( echo cd $(TOP_DIR)/tests\; source all\; exit ) \
	| tktest.standalone -geometry +0+0

hello:  hello.c ${TK_UNSHARED_LIB_FILE}
	${CC} ${LD_FLAGS} -o $@ -I${TCL_INC_DIR} hello.c ${STATIC_LIBS}

hello++:  hello.c ${TK_UNSHARED_LIB_FILE}
	${CXX} ${LD_FLAGS} -o $@ -I${TCL_INC_DIR} hello.c ${STATIC_LIBS}

hello.c: $(GENERIC_DIR)/hello.tcl
	$(TCL_BIN_DIR)/tcl2c -o $@ $(GENERIC_DIR)/hello.tcl -tk



# Useful target to launch a built tktest with the proper path,...
runtest:
	LD_LIBRARY_PATH=`pwd`:${TCL_BIN_DIR}:${LD_LIBRARY_PATH}; \
	export LD_LIBRARY_PATH; \
	SHLIB_PATH=`pwd`:${TCL_BIN_DIR}:${SHLIB_PATH}; \
	export SHLIB_PATH; \
	TCL_LIBRARY=/tmp_mnt/home/yakuza/de/src/tcl8.0.3/library; export TCL_LIBRARY; \
	TK_LIBRARY=$(TOP_DIR)/library; export TK_LIBRARY; \
	./tktest

install: install-binaries install-libraries install-demos install-man

# Note: before running ranlib below, must cd to target directory because
# some ranlibs write to current directory, and this might not always be
# possible (e.g. if installing as root).

install-binaries: $(TK_UNSHARED_LIB_FILE) wish pkgIndex.tcl
	@$(MKINSTALLDIRS) $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) $(INCLUDE_INSTALL_DIR)
	@echo "Installing ${TK_UNSHARED_LIB_FILE} (with standalone capability)"
	@$(INSTALL_DATA) ${TK_UNSHARED_LIB_FILE} $(LIB_INSTALL_DIR)
	@(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TK_UNSHARED_LIB_FILE))
	@if test "$(TK_LIB_FILE)" != "${TK_UNSHARED_LIB_FILE}"; then \
	    echo "Installing $(TK_LIB_FILE)" ; \
	    $(INSTALL_DATA) $(TK_LIB_FILE) $(LIB_INSTALL_DIR) ; \
	    chmod 555 $(LIB_INSTALL_DIR)/$(TK_LIB_FILE) ; \
	else true; \
	fi
	@if test "$(TK_LIB_FILE)" = "${TK_SHARED_LIB_FILE}"; then \
	    echo "Installing pkgIndex.tcl" ; \
	    PATH=$(TCL_BIN_DIR):${PATH}; export PATH; \
	    LD_LIBRARY_PATH=${TCL_LIB_DIR}:${LD_LIBRARY_PATH}; \
	    export LD_LIBRARY_PATH; \
	    TCL_LIBRARY=$(TCL_LIBRARY); export TCL_LIBRARY; \
	    $(PKGINSTALL) $(LIB_INSTALL_DIR) ; \
	else true; \
	fi
	-@if test -f $(BIN_INSTALL_DIR)/wish -a ! -h $(BIN_INSTALL_DIR)/wish; then \
	    echo "Renaming your old wish to wish.old" ; \
	    mv $(BIN_INSTALL_DIR)/wish $(BIN_INSTALL_DIR)/wish.old ; \
	fi
	@echo "Installing wish"
	@$(INSTALL_PROGRAM) wish$(VERSION) $(BIN_INSTALL_DIR)
	@rm -f  $(BIN_INSTALL_DIR)/wish
	@$(LN_S) wish$(VERSION) $(BIN_INSTALL_DIR)/wish
	@echo "Installing tkConfig.sh"
	@$(INSTALL_DATA) tkConfig.sh $(LIB_INSTALL_DIR)/tkConfig.sh
	@echo "Installing tk.h"
	@$(INSTALL_DATA) $(GENERIC_DIR)/tk.h $(INCLUDE_INSTALL_DIR)/tk.h

install-libraries:
	@$(MKINSTALLDIRS) $(SCRIPT_INSTALL_DIR)/images
	for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex $(UNIX_DIR)/tkAppInit.c; \
	    do \
	    echo "Installing $$i"; \
	    $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR); \
	    done;
	for i in $(TOP_DIR)/library/images/*; \
	    do \
	    if [ -f $$i ] ; then \
		echo "Installing $$i"; \
		$(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/images; \
	    fi; \
	    done;

install-demos:
	@$(MKINSTALLDIRS) $(DEMO_INSTALL_DIR)/demos/images
	@for i in $(TOP_DIR)/library/demos/*; \
	    do \
	    if [ -f $$i ] ; then \
		echo "Installing $$i"; \
		sed -e '3 s|exec wish|exec wish$(VERSION)|' \
			$$i > $(SCRIPT_INSTALL_DIR)/demos/`basename $$i`; \
	    fi; \
	    done;
	@for i in $(DEMOPROGS); \
	    do \
	    chmod 755 $(SCRIPT_INSTALL_DIR)/demos/$$i; \
	    done;
	@for i in $(TOP_DIR)/library/demos/images/*; \
	    do \
	    if [ -f $$i ] ; then \
		echo "Installing $$i"; \
		$(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/demos/images; \
		fi; \
	    done;

install-man:
	@$(MKINSTALLDIRS) $(MAN_INSTALL_DIR) $(MAN1_INSTALL_DIR) $(MAN3_INSTALL_DIR) $(MANN_INSTALL_DIR)
	@cd $(TOP_DIR)/doc; for i in *.1; \
	    do \
	    echo "Installing doc/$$i"; \
	    rm -f $(MAN1_INSTALL_DIR)/$$i; \
	    sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
		    $$i > $(MAN1_INSTALL_DIR)/$$i; \
	    chmod 444 $(MAN1_INSTALL_DIR)/$$i; \
	    done;
	$(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
	@cd $(TOP_DIR)/doc; for i in *.3; \
	    do \
	    echo "Installing doc/$$i"; \
	    rm -f $(MAN3_INSTALL_DIR)/$$i; \
	    sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
		    $$i > $(MAN3_INSTALL_DIR)/$$i; \
	    chmod 444 $(MAN3_INSTALL_DIR)/$$i; \
	    done;
	$(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
	@cd $(TOP_DIR)/doc; for i in *.n; \
	    do \
	    echo "Installing doc/$$i"; \
	    rm -f $(MANN_INSTALL_DIR)/$$i; \
	    sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
		    $$i > $(MANN_INSTALL_DIR)/$$i; \
	    chmod 444 $(MANN_INSTALL_DIR)/$$i; \
	    done;
	$(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)

Makefile: $(UNIX_DIR)/Makefile.in
	$(SHELL) config.status

clean:
	rm -f *.a *.o libtk* core errs *~ \#* TAGS *.E a.out errors \
		tktest* wish* config.info lib.exp ${TEST_SHLIB} \
		*.static *.standalone hello.c hello hello++ ../tests/core \
		$(UNIX_DIR)/libtk* $(UNIX_DIR)/wish

distclean: clean
	rm -f Makefile config.status config.cache config.log tkConfig.sh \
		$(PACKAGE).* prototype
	rm -f pkgIndex.tcl $(UNIX_DIR)/tkConfig.sh

patchclean:	modeclean
	@for i in .. ../unix ../generic ../compat ../doc ../library ../tests \
		../unix/dltest ../mac ../win ../win/rc ../xlib ../bitmaps ;do \
	    echo "removing $$i/*.orig and $$i/*.diff"; \
	    rm -f $$i/*.orig $$i/*.diff; \
	done;
	rm -f ../*patch*

modeclean:
	chmod u-w ../changes ../library/*.tcl ../tests/*.test
	chmod u-w ../doc/*.n ../generic/*.c ../compat/*.h
	chmod u-w ../mac/pkgIndex.tcl* ../win/pkgIndex.tcl*
	chmod u-w+x ../unix/pkgInstall.tcl ../generic/hello.tcl

depend:
	makedepend -- $(DEPEND_SWITCHES) -- $(SRCS)

# Test binaries.  The rule for tkTestInit.o is complicated because
# it is is compiled from tkAppInit.c.  Can't use the "-o" option
# because this doesn't work on some strange compilers (e.g. UnixWare).

tkTestInit++.o: $(UNIX_DIR)/tkAppInit.c
	@if test -f tkAppInit.o ; then \
	    rm -f tkAppInit.sav; \
	    mv tkAppInit.o tkAppInit.sav; \
	fi;
	$(CXX) -c $(CC_SWITCHES) -DTK_TEST $(UNIX_DIR)/tkAppInit.c
	rm -f $@
	mv tkAppInit.o $@
	@if test -f tkAppInit.sav ; then \
	    mv tkAppInit.sav tkAppInit.o; \
	fi;

tkTestInitSA.o: $(UNIX_DIR)/tkAppInit.c
	@if test -f tkAppInit.o ; then \
	    rm -f tkAppInit.sav; \
	    mv tkAppInit.o tkAppInit.sav; \
	fi;
	$(CC) -c $(CC_SWITCHES) -DTK_TEST -DTk_Init=Tk_InitStandAlone -DTcl_Init=Tcl_InitStandAlone $(UNIX_DIR)/tkAppInit.c
	rm -f $@
	mv tkAppInit.o $@
	@if test -f tkAppInit.sav ; then \
	    mv tkAppInit.sav tkAppInit.o; \
	fi;

tkTestInit.o: $(UNIX_DIR)/tkAppInit.c
	@if test -f tkAppInit.o ; then \
	    rm -f tkAppInit.sav; \
	    mv tkAppInit.o tkAppInit.sav; \
	fi;
	$(CC) -c $(CC_SWITCHES) -DTK_TEST $(UNIX_DIR)/tkAppInit.c
	rm -f $@
	mv tkAppInit.o $@
	@if test -f tkAppInit.sav ; then \
	    mv tkAppInit.sav tkAppInit.o; \
	fi;

tk3d.o: $(GENERIC_DIR)/tk3d.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tk3d.c

tkAppInit.o: $(UNIX_DIR)/tkAppInit.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkAppInit.c

tkAppInit++.o: $(UNIX_DIR)/tkAppInit.c
	@if test -f tkAppInit.o ; then \
	    rm -f tkAppInit.sav; \
	    mv tkAppInit.o tkAppInit.sav; \
	fi;
	$(CXX) -c $(CC_SWITCHES) $(UNIX_DIR)/tkAppInit.c
	rm -f $@
	mv tkAppInit.o $@
	@if test -f tkAppInit.sav ; then \
	    mv tkAppInit.sav tkAppInit.o; \
	fi;

tkAppInitSA.o: $(UNIX_DIR)/tkAppInit.c
	@if test -f tkAppInit.o ; then \
	    rm -f tkAppInit.sav; \
	    mv tkAppInit.o tkAppInit.sav; \
	fi;
	$(CC) -c $(CC_SWITCHES) -DTk_Init=Tk_InitStandAlone -DTcl_Init=Tcl_InitStandAlone \
	    $(UNIX_DIR)/tkAppInit.c
	rm -f $@
	mv tkAppInit.o $@
	@if test -f tkAppInit.sav ; then \
	    mv tkAppInit.sav tkAppInit.o; \
	fi;

tkArgv.o: $(GENERIC_DIR)/tkArgv.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkArgv.c

tkAtom.o: $(GENERIC_DIR)/tkAtom.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkAtom.c

tkBind.o: $(GENERIC_DIR)/tkBind.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkBind.c

tkBitmap.o: $(GENERIC_DIR)/tkBitmap.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkBitmap.c

tkClipboard.o: $(GENERIC_DIR)/tkClipboard.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkClipboard.c

tkCmds.o: $(GENERIC_DIR)/tkCmds.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCmds.c

tkColor.o: $(GENERIC_DIR)/tkColor.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkColor.c

tkConfig.o: $(GENERIC_DIR)/tkConfig.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkConfig.c

tkCursor.o: $(GENERIC_DIR)/tkCursor.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCursor.c

tkError.o: $(GENERIC_DIR)/tkError.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkError.c

tkEvent.o: $(GENERIC_DIR)/tkEvent.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkEvent.c

tkFocus.o: $(GENERIC_DIR)/tkFocus.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkFocus.c

tkFont.o: $(GENERIC_DIR)/tkFont.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkFont.c

tkGet.o: $(GENERIC_DIR)/tkGet.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkGet.c

tkGC.o: $(GENERIC_DIR)/tkGC.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkGC.c

tkGeometry.o: $(GENERIC_DIR)/tkGeometry.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkGeometry.c

tkGrab.o: $(GENERIC_DIR)/tkGrab.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkGrab.c

tkGrid.o: $(GENERIC_DIR)/tkGrid.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkGrid.c

tkInitSA.o: $(GENERIC_DIR)/tkInitSA.c $(C_STANDALONE) tkConfig.sh
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkInitSA.c

tkInitDSA.o: $(GENERIC_DIR)/tkInitDSA.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkInitDSA.c

tkInitDSA..o: $(GENERIC_DIR)/tkInitDSA.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) $(GENERIC_DIR)/tkInitDSA.c
	@:

tkMain.o: $(GENERIC_DIR)/tkMain.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkMain.c

tkOption.o: $(GENERIC_DIR)/tkOption.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkOption.c

tkPack.o: $(GENERIC_DIR)/tkPack.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkPack.c

tkPlace.o: $(GENERIC_DIR)/tkPlace.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkPlace.c

tkSelect.o: $(GENERIC_DIR)/tkSelect.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkSelect.c

tkUtil.o: $(GENERIC_DIR)/tkUtil.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkUtil.c

tkVisual.o: $(GENERIC_DIR)/tkVisual.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkVisual.c

tkWindow.o: $(GENERIC_DIR)/tkWindow.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkWindow.c

tkButton.o: $(GENERIC_DIR)/tkButton.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkButton.c

tkEntry.o: $(GENERIC_DIR)/tkEntry.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkEntry.c

tkFrame.o: $(GENERIC_DIR)/tkFrame.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkFrame.c

tkListbox.o: $(GENERIC_DIR)/tkListbox.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkListbox.c

tkMenu.o: $(GENERIC_DIR)/tkMenu.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkMenu.c

tkMenubutton.o: $(GENERIC_DIR)/tkMenubutton.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkMenubutton.c

tkMenuDraw.o: $(GENERIC_DIR)/tkMenuDraw.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkMenuDraw.c

tkMessage.o: $(GENERIC_DIR)/tkMessage.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkMessage.c

tkScale.o: $(GENERIC_DIR)/tkScale.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkScale.c

tkScrollbar.o: $(GENERIC_DIR)/tkScrollbar.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkScrollbar.c

tkSquare.o: $(GENERIC_DIR)/tkSquare.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkSquare.c

tkCanvas.o: $(GENERIC_DIR)/tkCanvas.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvas.c

tkCanvArc.o: $(GENERIC_DIR)/tkCanvArc.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvArc.c

tkCanvBmap.o: $(GENERIC_DIR)/tkCanvBmap.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvBmap.c

tkCanvImg.o: $(GENERIC_DIR)/tkCanvImg.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvImg.c

tkCanvLine.o: $(GENERIC_DIR)/tkCanvLine.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvLine.c

tkCanvPoly.o: $(GENERIC_DIR)/tkCanvPoly.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvPoly.c

tkCanvPs.o: $(GENERIC_DIR)/tkCanvPs.c tkConfig.sh
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvPs.c

tkCanvText.o: $(GENERIC_DIR)/tkCanvText.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvText.c

tkCanvUtil.o: $(GENERIC_DIR)/tkCanvUtil.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvUtil.c

tkCanvWind.o: $(GENERIC_DIR)/tkCanvWind.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkCanvWind.c

tkRectOval.o: $(GENERIC_DIR)/tkRectOval.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkRectOval.c

tkTrig.o: $(GENERIC_DIR)/tkTrig.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTrig.c

tkImage.o: $(GENERIC_DIR)/tkImage.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkImage.c

tkImgBmap.o: $(GENERIC_DIR)/tkImgBmap.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkImgBmap.c

tkImgGIF.o: $(GENERIC_DIR)/tkImgGIF.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkImgGIF.c

tkImgPPM.o: $(GENERIC_DIR)/tkImgPPM.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkImgPPM.c

tkImgPhoto.o: $(GENERIC_DIR)/tkImgPhoto.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkImgPhoto.c

tkTest.o: $(GENERIC_DIR)/tkTest.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTest.c

tkTest++.o: $(GENERIC_DIR)/tkTest.c
	@if test -f tkTest.o ; then \
	    rm -f tkTest.sav; \
	    mv tkTest.o tkTest.sav; \
	fi;
	$(CXX) -c -o $@ $(CC_SWITCHES) $(GENERIC_DIR)/tkTest.c
	rm -f $@
	mv tkTest.o $@
	@if test -f tkTest.sav ; then \
	    mv tkTest.sav tkTest.o; \
	fi;

tkSquare++.o: $(GENERIC_DIR)/tkSquare.c
	@if test -f tkSquare.o ; then \
	    rm -f tkSquare.sav; \
	    mv tkSquare.o tkSquare.sav; \
	fi;
	$(CXX) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkSquare.c
	rm -f $@
	mv tkSquare.o $@
	@if test -f tkSquare.sav ; then \
	    mv tkSquare.sav tkSquare.o; \
	fi;

tkText.o: $(GENERIC_DIR)/tkText.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkText.c

tkTextBTree.o: $(GENERIC_DIR)/tkTextBTree.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextBTree.c

tkTextDisp.o: $(GENERIC_DIR)/tkTextDisp.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextDisp.c

tkTextImage.o: $(GENERIC_DIR)/tkTextImage.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextImage.c

tkTextIndex.o: $(GENERIC_DIR)/tkTextIndex.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextIndex.c

tkTextMark.o: $(GENERIC_DIR)/tkTextMark.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextMark.c

tkTextTag.o: $(GENERIC_DIR)/tkTextTag.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextTag.c

tkTextWind.o: $(GENERIC_DIR)/tkTextWind.c
	$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkTextWind.c

tkUnix.o: $(UNIX_DIR)/tkUnix.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnix.c

tkUnix3d.o: $(UNIX_DIR)/tkUnix3d.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnix3d.c

tkUnixButton.o: $(UNIX_DIR)/tkUnixButton.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixButton.c

tkUnixColor.o: $(UNIX_DIR)/tkUnixColor.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixColor.c

tkUnixCursor.o: $(UNIX_DIR)/tkUnixCursor.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixCursor.c

tkUnixDialog.o: $(UNIX_DIR)/tkUnixDialog.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixDialog.c

tkUnixDraw.o: $(UNIX_DIR)/tkUnixDraw.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixDraw.c

tkUnixEmbed.o: $(UNIX_DIR)/tkUnixEmbed.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixEmbed.c

tkUnixEvent.o: $(UNIX_DIR)/tkUnixEvent.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixEvent.c

tkUnixFocus.o: $(UNIX_DIR)/tkUnixFocus.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixFocus.c

tkUnixFont.o: $(UNIX_DIR)/tkUnixFont.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixFont.c

tkUnixInit.o: $(UNIX_DIR)/tkUnixInit.c $(GENERIC_DIR)/tkInitScript.h tkConfig.sh
	$(CC) -c $(CC_SWITCHES) -DTK_LIBRARY=\"${TK_LIBRARY}\" \
	    $(UNIX_DIR)/tkUnixInit.c

tkUnixMenu.o: $(UNIX_DIR)/tkUnixMenu.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixMenu.c

tkUnixMenubu.o: $(UNIX_DIR)/tkUnixMenubu.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixMenubu.c

tkUnixScale.o: $(UNIX_DIR)/tkUnixScale.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixScale.c

tkUnixScrlbr.o: $(UNIX_DIR)/tkUnixScrlbr.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixScrlbr.c

tkUnixSelect.o: $(UNIX_DIR)/tkUnixSelect.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixSelect.c

tkUnixSend.o: $(UNIX_DIR)/tkUnixSend.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixSend.c

tkUnixWm.o: $(UNIX_DIR)/tkUnixWm.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixWm.c

tkUnixXId.o: $(UNIX_DIR)/tkUnixXId.c
	$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixXId.c

tk3d..o: $(GENERIC_DIR)/tk3d.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) $(GENERIC_DIR)/tk3d.c
	@:

tkAppInit..o: $(UNIX_DIR)/tkAppInit.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkAppInit.c
	@:

tkArgv..o: $(GENERIC_DIR)/tkArgv.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkArgv.c
	@:

tkAtom..o: $(GENERIC_DIR)/tkAtom.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkAtom.c
	@:

tkBind..o: $(GENERIC_DIR)/tkBind.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkBind.c
	@:

tkBitmap..o: $(GENERIC_DIR)/tkBitmap.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkBitmap.c
	@:

tkClipboard..o: $(GENERIC_DIR)/tkClipboard.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkClipboard.c
	@:

tkCmds..o: $(GENERIC_DIR)/tkCmds.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCmds.c
	@:

tkColor..o: $(GENERIC_DIR)/tkColor.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkColor.c
	@:

tkConfig..o: $(GENERIC_DIR)/tkConfig.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkConfig.c
	@:

tkCursor..o: $(GENERIC_DIR)/tkCursor.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCursor.c
	@:

tkError..o: $(GENERIC_DIR)/tkError.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkError.c
	@:

tkEvent..o: $(GENERIC_DIR)/tkEvent.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkEvent.c
	@:

tkFocus..o: $(GENERIC_DIR)/tkFocus.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkFocus.c
	@:

tkFont..o: $(GENERIC_DIR)/tkFont.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkFont.c
	@:

tkGet..o: $(GENERIC_DIR)/tkGet.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkGet.c
	@:

tkGC..o: $(GENERIC_DIR)/tkGC.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkGC.c
	@:

tkGeometry..o: $(GENERIC_DIR)/tkGeometry.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkGeometry.c
	@:

tkGrab..o: $(GENERIC_DIR)/tkGrab.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkGrab.c
	@:

tkGrid..o: $(GENERIC_DIR)/tkGrid.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkGrid.c
	@:

tkMain..o: $(GENERIC_DIR)/tkMain.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkMain.c
	@:

tkOption..o: $(GENERIC_DIR)/tkOption.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkOption.c
	@:

tkPack..o: $(GENERIC_DIR)/tkPack.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkPack.c
	@:

tkPlace..o: $(GENERIC_DIR)/tkPlace.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkPlace.c
	@:

tkSelect..o: $(GENERIC_DIR)/tkSelect.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkSelect.c
	@:

tkUtil..o: $(GENERIC_DIR)/tkUtil.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkUtil.c
	@:

tkVisual..o: $(GENERIC_DIR)/tkVisual.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkVisual.c
	@:

tkWindow..o: $(GENERIC_DIR)/tkWindow.c tkConfig.sh
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkWindow.c
	@:

tkButton..o: $(GENERIC_DIR)/tkButton.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkButton.c
	@:

tkEntry..o: $(GENERIC_DIR)/tkEntry.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkEntry.c
	@:

tkFrame..o: $(GENERIC_DIR)/tkFrame.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkFrame.c
	@:

tkListbox..o: $(GENERIC_DIR)/tkListbox.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkListbox.c
	@:

tkMenu..o: $(GENERIC_DIR)/tkMenu.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkMenu.c
	@:

tkMenubutton..o: $(GENERIC_DIR)/tkMenubutton.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkMenubutton.c
	@:

tkMenuDraw..o: $(GENERIC_DIR)/tkMenuDraw.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkMenuDraw.c
	@:

tkMessage..o: $(GENERIC_DIR)/tkMessage.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkMessage.c
	@:

tkScale..o: $(GENERIC_DIR)/tkScale.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkScale.c
	@:

tkScrollbar..o: $(GENERIC_DIR)/tkScrollbar.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkScrollbar.c
	@:

tkCanvas..o: $(GENERIC_DIR)/tkCanvas.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvas.c
	@:

tkCanvArc..o: $(GENERIC_DIR)/tkCanvArc.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvArc.c
	@:

tkCanvBmap..o: $(GENERIC_DIR)/tkCanvBmap.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvBmap.c
	@:

tkCanvImg..o: $(GENERIC_DIR)/tkCanvImg.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvImg.c
	@:

tkCanvLine..o: $(GENERIC_DIR)/tkCanvLine.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvLine.c
	@:

tkCanvPoly..o: $(GENERIC_DIR)/tkCanvPoly.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvPoly.c
	@:

tkCanvPs..o: $(GENERIC_DIR)/tkCanvPs.c tkConfig.sh
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvPs.c
	@:

tkCanvText..o: $(GENERIC_DIR)/tkCanvText.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvText.c
	@:

tkCanvUtil..o: $(GENERIC_DIR)/tkCanvUtil.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvUtil.c
	@:

tkCanvWind..o: $(GENERIC_DIR)/tkCanvWind.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkCanvWind.c
	@:

tkRectOval..o: $(GENERIC_DIR)/tkRectOval.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkRectOval.c
	@:

tkTrig..o: $(GENERIC_DIR)/tkTrig.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTrig.c
	@:

tkImage..o: $(GENERIC_DIR)/tkImage.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkImage.c
	@:

tkImgBmap..o: $(GENERIC_DIR)/tkImgBmap.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkImgBmap.c
	@:

tkImgGIF..o: $(GENERIC_DIR)/tkImgGIF.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkImgGIF.c
	@:

tkImgPPM..o: $(GENERIC_DIR)/tkImgPPM.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkImgPPM.c
	@:

tkImgPhoto..o: $(GENERIC_DIR)/tkImgPhoto.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkImgPhoto.c
	@:

tkTest..o: $(GENERIC_DIR)/tkTest.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTest.c
	@:

tkSquare..o: $(GENERIC_DIR)/tkSquare.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkSquare.c
	@:

tkText..o: $(GENERIC_DIR)/tkText.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkText.c
	@:

tkTextBTree..o: $(GENERIC_DIR)/tkTextBTree.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextBTree.c
	@:

tkTextDisp..o: $(GENERIC_DIR)/tkTextDisp.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextDisp.c
	@:

tkTextImage..o: $(GENERIC_DIR)/tkTextImage.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextImage.c
	@:

tkTextIndex..o: $(GENERIC_DIR)/tkTextIndex.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextIndex.c
	@:

tkTextMark..o: $(GENERIC_DIR)/tkTextMark.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextMark.c
	@:

tkTextTag..o: $(GENERIC_DIR)/tkTextTag.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextTag.c
	@:

tkTextWind..o: $(GENERIC_DIR)/tkTextWind.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(GENERIC_DIR)/tkTextWind.c
	@:

tkUnix..o: $(UNIX_DIR)/tkUnix.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnix.c
	@:

tkUnix3d..o: $(UNIX_DIR)/tkUnix3d.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnix3d.c
	@:

tkUnixButton..o: $(UNIX_DIR)/tkUnixButton.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixButton.c
	@:

tkUnixColor..o: $(UNIX_DIR)/tkUnixColor.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixColor.c
	@:

tkUnixCursor..o: $(UNIX_DIR)/tkUnixCursor.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixCursor.c
	@:

tkUnixDialog..o: $(UNIX_DIR)/tkUnixDialog.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixDialog.c
	@:

tkUnixDraw..o: $(UNIX_DIR)/tkUnixDraw.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixDraw.c
	@:

tkUnixEmbed..o: $(UNIX_DIR)/tkUnixEmbed.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixEmbed.c
	@:

tkUnixEvent..o: $(UNIX_DIR)/tkUnixEvent.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixEvent.c
	@:

tkUnixFocus..o: $(UNIX_DIR)/tkUnixFocus.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixFocus.c
	@:

tkUnixFont..o: $(UNIX_DIR)/tkUnixFont.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixFont.c
	@:

tkUnixInit..o: $(UNIX_DIR)/tkUnixInit.c tkConfig.sh
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		-DTK_LIBRARY=\"${TK_LIBRARY}\" $(UNIX_DIR)/tkUnixInit.c
	@:

tkUnixMenu..o: $(UNIX_DIR)/tkUnixMenu.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixMenu.c
	@:

tkUnixMenubu..o: $(UNIX_DIR)/tkUnixMenubu.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixMenubu.c
	@:

tkUnixScale..o: $(UNIX_DIR)/tkUnixScale.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixScale.c
	@:

tkUnixScrlbr..o: $(UNIX_DIR)/tkUnixScrlbr.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixScrlbr.c
	@:

tkUnixSelect..o: $(UNIX_DIR)/tkUnixSelect.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixSelect.c
	@:

tkUnixSend..o: $(UNIX_DIR)/tkUnixSend.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixSend.c
	@:

tkUnixWm..o: $(UNIX_DIR)/tkUnixWm.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixWm.c
	@:

tkUnixXId..o: $(UNIX_DIR)/tkUnixXId.c
	@:
	$(CC) -c -o $@ $(CC_SWITCHES) $(SHLIB_CFLAGS) \
		$(UNIX_DIR)/tkUnixXId.c
	@:

.SUFFIXES: .tcl .ps $(SUFFIXES)

.tcl.c: $<
	$(TCL_BIN_DIR)/tcl2c -o $@ -a -n $@ $<

${TOP_DIR}/library/tclIndex.h:	$(TCL_BIN_DIR)/tcl2c $(TOP_DIR)/library/tclIndex
	$(TCL_BIN_DIR)/tcl2c -o $@ -n $@ $(TOP_DIR)/library/tclIndex

.c.o:
	$(CC) -c $(CC_SWITCHES) $<
  
#
# Target to check for proper usage of UCHAR macro.
#

checkuchar:
	-egrep isalnum\|isalpha\|iscntrl\|isdigit\|islower\|isprint\|ispunct\|isspace\|isupper\|isxdigit\|toupper\|tolower $(SRCS) | grep -v UCHAR

#
# Target to make sure that only symbols with "Tk" prefixes are
# exported.
#

checkexports: $(TK_LIB_FILE)
	-nm -p $(TK_LIB_FILE) | awk '$$2 ~ /[TDB]/ { print $$3 }' | sort -n | grep -v '^[Tt]k'

#
# Target to create a proper Tk distribution from information in the
# master source directory.  DISTDIR must be defined to indicate where
# to put the distribution.  DISTDIR must be an absolute path name.
#

DISTROOT = /tmp/dist
DISTNAME =	tk8.0.3+
ZIPNAME =	tk80.3+.zip
DISTDIR =	$(DISTROOT)/$(DISTNAME)
TCLDIR = 	/tmp_mnt/home/yakuza/de/src/tcl8.0.3
$(UNIX_DIR)/configure: $(UNIX_DIR)/configure.in
	autoconf $(UNIX_DIR)/configure.in > $(UNIX_DIR)/configure

dist:   $(UNIX_DIR)/configure
	rm -rf $(DISTDIR)
	mkdir $(DISTDIR)
	mkdir $(DISTDIR)/unix
	cp -p $(UNIX_DIR)/*.c $(UNIX_DIR)/*.h $(DISTDIR)/unix
	cp $(TOP_DIR)/license.terms $(UNIX_DIR)/Makefile.in $(DISTDIR)/unix
	chmod 664 $(DISTDIR)/unix/Makefile.in
	cp $(UNIX_DIR)/configure $(UNIX_DIR)/configure.in \
		$(UNIX_DIR)/tkConfig.sh.in $(TCLDIR)/unix/install-sh \
		$(UNIX_DIR)/porting.notes $(UNIX_DIR)/porting.old \
		$(UNIX_DIR)/README $(DISTDIR)/unix
	chmod 775 $(DISTDIR)/unix/configure $(DISTDIR)/unix/configure.in
	chmod +x $(DISTDIR)/unix/install-sh
	tclsh $(TCLDIR)/unix/mkLinks.tcl $(TOP_DIR)/doc/*.[13n] \
		> $(DISTDIR)/unix/mkLinks
	chmod +x $(DISTDIR)/unix/mkLinks
	mkdir $(DISTDIR)/bitmaps
	@(cd $(TOP_DIR); for i in bitmaps/* ; do \
	    if [ -f $$i ] ; then \
		sed -e 's/static char/static unsigned char/' \
		       $$i > $(DISTDIR)/$$i; \
	    fi; \
	done;)
	mkdir $(DISTDIR)/generic
	cp -p $(GENERIC_DIR)/*.c $(GENERIC_DIR)/*.h $(DISTDIR)/generic
	cp -p $(GENERIC_DIR)/README $(DISTDIR)/generic
	cp -p $(TOP_DIR)/changes $(TOP_DIR)/README $(TOP_DIR)/license.terms \
		$(DISTDIR)
	rm -f $(DISTDIR)/generic/blt*.[ch]
	mkdir $(DISTDIR)/win
	cp -p $(TOP_DIR)/win/*.c $(TOP_DIR)/win/*.h $(DISTDIR)/win
	cp -p $(TOP_DIR)/win/*.bat $(DISTDIR)/win
	cp -p $(TOP_DIR)/win/makefile.* $(DISTDIR)/win
	cp -p $(TOP_DIR)/win/README $(DISTDIR)/win
	cp -p $(TOP_DIR)/license.terms $(DISTDIR)/win
	mkdir $(DISTDIR)/win/rc
	cp -p $(TOP_DIR)/win/rc/*.rc $(TOP_DIR)/win/rc/*.cur \
		$(TOP_DIR)/win/rc/*.ico $(TOP_DIR)/win/rc/*.bmp \
		$(DISTDIR)/win/rc
	mkdir $(DISTDIR)/mac
	sccs edit -s $(TOP_DIR)/mac/tkMacProjects.sea.hqx
	cp -p tkMacProjects.sea.hqx $(DISTDIR)/mac
	sccs unedit $(TOP_DIR)/mac/tkMacProjects.sea.hqx
	rm -f tkMacProjects.sea.hqx
	cp -p $(TOP_DIR)/mac/*.c $(TOP_DIR)/mac/*.h $(TOP_DIR)/mac/*.r \
		$(DISTDIR)/mac
	cp -p $(TOP_DIR)/mac/README $(DISTDIR)/mac
	cp -p $(TOP_DIR)/license.terms $(DISTDIR)/mac
	cp -p $(TOP_DIR)/mac/*.pch $(DISTDIR)/mac
	cp -p $(TOP_DIR)/mac/*.doc $(DISTDIR)/mac
	cp -p $(TOP_DIR)/mac/*.exp $(DISTDIR)/mac
	cp -p $(TOP_DIR)/mac/*.tcl $(DISTDIR)/mac
	mkdir $(DISTDIR)/compat
	cp -p $(TOP_DIR)/license.terms $(TCLDIR)/compat/unistd.h \
		$(TCLDIR)/compat/stdlib.h $(TCLDIR)/compat/limits.h \
		$(DISTDIR)/compat
	mkdir $(DISTDIR)/xlib
	cp -p $(TOP_DIR)/xlib/*.h $(TOP_DIR)/xlib/*.c $(DISTDIR)/xlib
	cp -p $(TOP_DIR)/license.terms $(DISTDIR)/xlib
	mkdir $(DISTDIR)/xlib/X11
	cp -p $(TOP_DIR)/xlib/X11/*.h $(DISTDIR)/xlib/X11
	cp -p $(TOP_DIR)/license.terms $(DISTDIR)/xlib/X11
	mkdir $(DISTDIR)/library
	cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/library/*.tcl \
		$(TOP_DIR)/library/tclIndex $(DISTDIR)/library
	mkdir $(DISTDIR)/library/images
	@(cd $(TOP_DIR); for i in library/images/* ; do \
	    if [ -f $$i ] ; then \
		cp $$i $(DISTDIR)/$$i; \
	    fi; \
	done;)
	mkdir $(DISTDIR)/library/demos
	cp -pr $(TOP_DIR)/library/demos/*.tcl \
		$(TOP_DIR)/library/demos/tclIndex \
		$(TOP_DIR)/library/demos/browse \
		$(TOP_DIR)/library/demos/hello $(TOP_DIR)/library/demos/ixset \
		$(TOP_DIR)/library/demos/rmt $(TOP_DIR)/library/demos/rolodex \
		$(TOP_DIR)/library/demos/square \
		$(TOP_DIR)/library/demos/tcolor \
		$(TOP_DIR)/library/demos/timer \
		$(TOP_DIR)/library/demos/widget \
		$(TOP_DIR)/library/demos/README \
		$(TOP_DIR)/license.terms $(DISTDIR)/library/demos
	mkdir $(DISTDIR)/library/demos/images
	@(cd $(TOP_DIR); for i in library/demos/images/* ; do \
	    if [ -f $$i ] ; then \
		cp $$i $(DISTDIR)/$$i; \
	    fi; \
	done;)
	mkdir $(DISTDIR)/doc
	cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/doc/*.[13n] \
		$(TCLDIR)/doc/man.macros $(DISTDIR)/doc
	mkdir $(DISTDIR)/tests
	cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/tests/*.test \
		$(TOP_DIR)/tests/visual $(TOP_DIR)/tests/*.tcl \
		$(TOP_DIR)/tests/README $(TOP_DIR)/tests/all \
		$(TOP_DIR)/tests/defs $(TOP_DIR)/tests/option.file* \
		$(DISTDIR)/tests

#
# The following target can only be used for non-patch releases.  Use
# the "allpatch" target below for patch releases.
#

alldist: dist
	rm -f $(DISTROOT)/$(DISTNAME).tar.Z \
		$(DISTROOT)/$(DISTNAME).tar.gz \
		$(DISTROOT)/$(ZIPNAME)
	cd $(DISTROOT); tar cf $(DISTNAME).tar $(DISTNAME); \
		gzip -9 -c $(DISTNAME).tar > $(DISTNAME).tar.gz; \
		compress $(DISTNAME).tar; zip -r8 $(ZIPNAME) $(DISTNAME)

#
# The target below is similar to "alldist" except it works for patch
# releases.  It is needed because patch releases are peculiar: the
# patch designation appears in the name of the compressed file
# (e.g. tcl8.0p1.tar.gz) but the extracted source directory doesn't
# include the patch designation (e.g. tcl8.0).
#

allpatch: dist
	rm -f $(DISTROOT)/$(DISTNAME).tar.Z \
		$(DISTROOT)/$(DISTNAME).tar.gz \
		$(DISTROOT)/$(ZIPNAME)
	mv $(DISTROOT)/tk${VERSION} $(DISTROOT)/old
	mv $(DISTROOT)/$(DISTNAME) $(DISTROOT)/tk${VERSION}
	cd $(DISTROOT); tar cf $(DISTNAME).tar tk${VERSION}; \
		gzip -9 -c $(DISTNAME).tar > $(DISTNAME).tar.gz; \
		compress $(DISTNAME).tar; zip -r8 $(ZIPNAME) tk${VERSION}
	mv $(DISTROOT)/tk${VERSION} $(DISTROOT)/$(DISTNAME)
	mv $(DISTROOT)/old $(DISTROOT)/tk${VERSION}

#
# Target to create a Macintosh version of the distribution.  This will
# do a normal distribution and then massage the output to prepare it
# for moving to the Mac platform.  This requires a few scripts and
# programs found only in the Tcl greoup's tool workspace.
#

macdist: dist
	rm -f $(DISTDIR)/mac/tkMacProjects.sea.hqx
	tclsh $(TOOL_DIR)/man2html.tcl $(DISTDIR)/tmp ../.. tk$(VERSION)
	mv $(DISTDIR)/tmp/tk$(VERSION) $(DISTDIR)/html
	rm -rf $(DISTDIR)/doc
	rm -rf $(DISTDIR)/tmp
	tclsh $(TOOL_DIR)/cvtEOL.tcl $(DISTDIR)

#
# Targets to build Solaris package of the distribution for the current
# architecture.  To build stream packages for both sun4 and i86pc
# architectures: 
#
#   On the sun4 machine, execute the following:
#     make distclean; ./configure
#     make DISTDIR=<distdir> package
#
#   Once the build is complete, execute the following on the i86pc
#   machine:
#     make DISTDIR=<distdir> package-quick
#
# <distdir> is the absolute path to a directory where the build should
# take place.  These steps will generate the $(PACKAGE).sun4 and
# $(PACKAGE).i86pc stream packages.  It is important that the packages be
# built in this fashion in order to ensure that the architecture
# independent files are exactly the same, including timestamps, in
# both packages.
#

PACKAGE=SCRPtk

package: dist package-config package-common package-binaries package-generate
package-quick: package-config package-binaries package-generate

#
# Configure for the current architecture in the dist directory.
#
package-config:
	mkdir -p $(DISTDIR)/unix/`arch`
	cd $(DISTDIR)/unix/`arch`; \
        ../configure --prefix=/opt/SUNWtcl/$(TCLVERSION) \
		--exec_prefix=/opt/SUNWtcl/$(TCLVERSION)/`arch` \
		--with-tcl=$(DISTDIR)/../tcl$(TCLVERSION)/unix/`arch` \
		--enable-shared
	mkdir -p $(DISTDIR)/SUNWtcl/$(TCLVERSION)
	mkdir -p $(DISTDIR)/SUNWtcl/$(TCLVERSION)/`arch`

#
# Build and install the architecture independent files in the dist directory.
#

package-common:
	cd $(DISTDIR)/unix/`arch`;\
	$(MAKE); \
	$(MAKE) install-libraries install-man \
		prefix=$(DISTDIR)/SUNWtcl/$(TCLVERSION) \
		exec_prefix=$(DISTDIR)/SUNWtcl/$(TCLVERSION)/`arch`
	mkdir -p $(DISTDIR)/SUNWtcl/$(TCLVERSION)/bin
	sed -e "s/TCLVERSION/$(TCLVERSION)/g" \
		-e "s/TKVERSION/$(VERSION)/g" < $(UNIX_DIR)/wish.sh \
		> $(DISTDIR)/SUNWtcl/$(TCLVERSION)/bin/wish$(VERSION)
	chmod 755 $(DISTDIR)/SUNWtcl/$(TCLVERSION)/bin/wish$(VERSION)

#
# Build and install the architecture specific files in the dist directory.
#

package-binaries: 
	cd $(DISTDIR)/unix/`arch`; \
	$(MAKE); \
	$(MAKE) install-binaries prefix=$(DISTDIR)/SUNWtcl/$(TCLVERSION) \
		exec_prefix=$(DISTDIR)/SUNWtcl/$(TCLVERSION)/`arch`

#
# Generate a package from the installed files in the dist directory for the
# current architecture.
#

package-generate:
	pkgproto $(DISTDIR)/SUNWtcl/$(TCLVERSION)/bin=bin \
		 $(DISTDIR)/SUNWtcl/$(TCLVERSION)/include=include \
		 $(DISTDIR)/SUNWtcl/$(TCLVERSION)/lib=lib \
		 $(DISTDIR)/SUNWtcl/$(TCLVERSION)/man=man \
		 $(DISTDIR)/SUNWtcl/$(TCLVERSION)/`arch`=`arch` \
	| tclsh $(TCLDIR)/unix/mkProto.tcl $(TCLVERSION) \
		$(UNIX_DIR) > prototype
	pkgmk -o -d . -f prototype -a `arch`
	pkgtrans -s . $(PACKAGE).`arch` $(PACKAGE)
	rm -rf $(PACKAGE)

# DO NOT DELETE THIS LINE -- make depend depends on it.
