diff options
Diffstat (limited to 'tk8.6/win/Makefile.in')
-rw-r--r-- | tk8.6/win/Makefile.in | 748 |
1 files changed, 748 insertions, 0 deletions
diff --git a/tk8.6/win/Makefile.in b/tk8.6/win/Makefile.in new file mode 100644 index 0000000..e878484 --- /dev/null +++ b/tk8.6/win/Makefile.in @@ -0,0 +1,748 @@ +# 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. + +TCLVERSION = @TCL_VERSION@ +TCLPATCHL = @TCL_PATCH_LEVEL@ +VERSION = @TK_VERSION@ +PATCH_LEVEL = @TK_PATCH_LEVEL@ + +#---------------------------------------------------------------- +# 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 = @prefix@ +exec_prefix = @exec_prefix@ +bindir = @bindir@ +libdir = @libdir@ +includedir = @includedir@ +datarootdir = @datarootdir@ +mandir = @mandir@ + +# 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 Tk +# scripts (note: you can set the TK_LIBRARY environment variable at +# run-time to override this value): +TK_LIBRARY = $(prefix)/lib/tk$(VERSION) + +# Path to use at runtime to refer to LIB_INSTALL_DIR: +LIB_RUNTIME_DIR = $(libdir) + +# Directory in which to install the program wish: +BIN_INSTALL_DIR = $(INSTALL_ROOT)$(bindir) + +# Directory in which to install the .a or .so binary for the Tk library: +LIB_INSTALL_DIR = $(INSTALL_ROOT)$(libdir) + +# Path name to use when installing library scripts: +SCRIPT_INSTALL_DIR = $(INSTALL_ROOT)$(TK_LIBRARY) + +# Directory in which to install the include file tk.h: +INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir) + +# Directory in which to (optionally) install the private tk headers: +PRIVATE_INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir) + +# Top-level directory for manual entries: +MAN_INSTALL_DIR = $(INSTALL_ROOT)$(mandir) + +# 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 +# Tk commands: +MANN_INSTALL_DIR = $(MAN_INSTALL_DIR)/mann + +# Libraries built with optimization switches have this additional extension +TK_DBGX = @TK_DBGX@ + +# Directory in which to install the pkgIndex.tcl file for loadable Tk +PKG_INSTALL_DIR = $(LIB_INSTALL_DIR)/tk$(VERSION)$(TK_DBGX) + +# Package index file for loadable Tk +PKG_INDEX = $(PKG_INSTALL_DIR)/pkgIndex.tcl + +# The directory containing the Tcl source and header files. +TCL_SRC_DIR = @TCL_SRC_DIR@ + +# The directory containing the Tcl library archive file appropriate +# for this version of Tk: +TCL_BIN_DIR = @TCL_BIN_DIR@ + +# 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_GENERIC_DIR = @TCL_SRC_DIR@/generic + +# The directory containing the platform specific Tcl sources and headers +# appropriate for this version of Tk: +TCL_PLATFORM_DIR = @TCL_SRC_DIR@/win + +TCL_TOOL_DIR = @TCL_SRC_DIR@/tools + +# Converts a POSIX path to a Windows native path. +CYGPATH = @CYGPATH@ + +# The name of the Tcl library. +TCL_LIB_FILE = "$(shell $(CYGPATH) '@TCL_BIN_DIR@/@TCL_LIB_FILE@')" +TCL_STUB_LIB_FILE = "$(shell $(CYGPATH) '@TCL_BIN_DIR@/@TCL_STUB_LIB_FILE@')" + +SRC_DIR = @srcdir@ +ROOT_DIR = $(SRC_DIR)/.. +WIN_DIR = $(SRC_DIR) +UNIX_DIR = $(SRC_DIR)/../unix +GENERIC_DIR = $(SRC_DIR)/../generic +TTK_DIR = $(GENERIC_DIR)/ttk +BITMAP_DIR = $(ROOT_DIR)/bitmaps +XLIB_DIR = $(ROOT_DIR)/xlib +RC_DIR = $(WIN_DIR)/rc + +ROOT_DIR_NATIVE = $(shell $(CYGPATH) '$(ROOT_DIR)' | sed 's!\\!/!g') +WIN_DIR_NATIVE = $(shell $(CYGPATH) '$(WIN_DIR)' | sed 's!\\!/!g') +GENERIC_DIR_NATIVE = $(shell $(CYGPATH) '$(GENERIC_DIR)' | sed 's!\\!/!g') +BITMAP_DIR_NATIVE = $(ROOT_DIR_NATIVE)/bitmaps +XLIB_DIR_NATIVE = $(ROOT_DIR_NATIVE)/xlib +RC_DIR_NATIVE = $(WIN_DIR_NATIVE)/rc +TCL_GENERIC_NATIVE = $(shell $(CYGPATH) '$(TCL_GENERIC_DIR)' | sed 's!\\!/!g') +TCL_PLATFORM_NATIVE = $(shell $(CYGPATH) '$(TCL_PLATFORM_DIR)' | sed 's!\\!/!g') +TCL_SRC_DIR_NATIVE = $(shell $(CYGPATH) '$(TCL_SRC_DIR)' | sed 's!\\!/!g') + +DLLSUFFIX = @DLLSUFFIX@ +LIBSUFFIX = @LIBSUFFIX@ +EXESUFFIX = @EXESUFFIX@ + +TK_STUB_LIB_FILE = @TK_STUB_LIB_FILE@ +TK_LIB_FILE = @TK_LIB_FILE@ +TK_DLL_FILE = @TK_DLL_FILE@ +TEST_DLL_FILE = tktest$(VER)${DLLSUFFIX} +TEST_LIB_FILE = @LIBPREFIX@tktest$(VER)${LIBSUFFIX} + +SHARED_LIBRARIES = $(TK_DLL_FILE) $(TK_STUB_LIB_FILE) +STATIC_LIBRARIES = $(TK_LIB_FILE) + +WISH = wish$(VER)${EXESUFFIX} +TKTEST = tktest${EXEEXT} +CAT32 = cat32$(EXEEXT) +MAN2TCL = man2tcl$(EXEEXT) + +@SET_MAKE@ + +# Setting the VPATH variable to a list of paths will cause the +# makefile to look into these paths when resolving .c to .obj +# dependencies. + +VPATH = $(GENERIC_DIR):$(TTK_DIR):$(WIN_DIR):$(UNIX_DIR):$(XLIB_DIR):$(RC_DIR) + +# warning flags +CFLAGS_WARNING = @CFLAGS_WARNING@ + +# The default switches for optimization or debugging +CFLAGS_DEBUG = @CFLAGS_DEBUG@ +CFLAGS_OPTIMIZE = @CFLAGS_OPTIMIZE@ + +# The default switches for optimization or debugging +LDFLAGS_DEBUG = @LDFLAGS_DEBUG@ +LDFLAGS_OPTIMIZE = @LDFLAGS_OPTIMIZE@ + +# 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@ @CFLAGS_DEFAULT@ -DUNICODE -D_UNICODE -D_ATL_XP_TARGETING + +# Special compiler flags to use when building man2tcl on Windows. +MAN2TCLFLAGS = @MAN2TCLFLAGS@ + +AR = @AR@ +RANLIB = @RANLIB@ +CC = @CC@ +RC = @RC@ +RES = @RES@ +TK_RES = @TK_RES@ +AC_FLAGS = @EXTRA_CFLAGS@ @DEFS@ @TCL_DEFS@ +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ @LDFLAGS_DEFAULT@ +LDFLAGS_CONSOLE = @LDFLAGS_CONSOLE@ +LDFLAGS_WINDOW = @LDFLAGS_WINDOW@ +EXEEXT = @EXEEXT@ +OBJEXT = @OBJEXT@ +STLIB_LD = @STLIB_LD@ +SHLIB_LD = @SHLIB_LD@ +SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ +SHLIB_CFLAGS = @SHLIB_CFLAGS@ +SHLIB_SUFFIX = @SHLIB_SUFFIX@ +VER = @TK_MAJOR_VERSION@@TK_MINOR_VERSION@ +DOTVER = @TK_MAJOR_VERSION@.@TK_MINOR_VERSION@ +LIBS = $(TCL_STUB_LIB_FILE) @LIBS@ @LIBS_GUI@ +RMDIR = rm -rf +MKDIR = mkdir -p +SHELL = @SHELL@ +RM = rm -f +COPY = cp + +BUILD_TCLSH = @BUILD_TCLSH@ + +# Tk does not used deprecated Tcl constructs so it should +# compile fine with -DTCL_NO_DEPRECATED. To remove its own +# set of deprecated code uncomment the second line. +NO_DEPRECATED_FLAGS = +#NO_DEPRECATED_FLAGS = -DTK_NO_DEPRECATED + +# TCL_EXE is the name of a tclsh executable that is available *BEFORE* +# running make for the first time. Certain build targets (make genstubs) +# need it to be available on the PATH. This executable should *NOT* be +# required just to do a normal build although it can be required to run +# make dist. +TCL_EXE = @TCLSH_PROG@ + +CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \ +-I"${GENERIC_DIR_NATIVE}" -I"${WIN_DIR_NATIVE}" \ +-I"${XLIB_DIR_NATIVE}" -I"${BITMAP_DIR_NATIVE}" \ +-I"${TCL_GENERIC_NATIVE}" -I"${TCL_PLATFORM_NATIVE}" \ +${AC_FLAGS} $(NO_DEPRECATED_FLAGS) -DUSE_TCL_STUBS + +CC_OBJNAME = @CC_OBJNAME@ +CC_EXENAME = @CC_EXENAME@ + +# 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 = cp +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} + +WISH_OBJS = \ + winMain.$(OBJEXT) + +TKTEST_OBJS = \ + tkSquare.$(OBJEXT) \ + tkTest.$(OBJEXT) \ + tkOldTest.$(OBJEXT) \ + tkWinTest.$(OBJEXT) + +XLIB_OBJS = \ + xcolors.$(OBJEXT) \ + xdraw.$(OBJEXT) \ + xgc.$(OBJEXT) \ + ximage.$(OBJEXT) \ + xutil.$(OBJEXT) + +TK_OBJS = \ + tkConsole.$(OBJEXT) \ + tkUnixMenubu.$(OBJEXT) \ + tkUnixScale.$(OBJEXT) \ + $(XLIB_OBJS) \ + tkWin3d.$(OBJEXT) \ + tkWin32Dll.$(OBJEXT) \ + tkWinButton.$(OBJEXT) \ + tkWinClipboard.$(OBJEXT) \ + tkWinColor.$(OBJEXT) \ + tkWinConfig.$(OBJEXT) \ + tkWinCursor.$(OBJEXT) \ + tkWinDialog.$(OBJEXT) \ + tkWinDraw.$(OBJEXT) \ + tkWinEmbed.$(OBJEXT) \ + tkWinFont.$(OBJEXT) \ + tkWinImage.$(OBJEXT) \ + tkWinInit.$(OBJEXT) \ + tkWinKey.$(OBJEXT) \ + tkWinMenu.$(OBJEXT) \ + tkWinPixmap.$(OBJEXT) \ + tkWinPointer.$(OBJEXT) \ + tkWinRegion.$(OBJEXT) \ + tkWinScrlbr.$(OBJEXT) \ + tkWinSend.$(OBJEXT) \ + tkWinSendCom.$(OBJEXT) \ + tkWinWindow.$(OBJEXT) \ + tkWinWm.$(OBJEXT) \ + tkWinX.$(OBJEXT) \ + stubs.$(OBJEXT) \ + tk3d.$(OBJEXT) \ + tkArgv.$(OBJEXT) \ + tkAtom.$(OBJEXT) \ + tkBind.$(OBJEXT) \ + tkBitmap.$(OBJEXT) \ + tkBusy.$(OBJEXT) \ + tkButton.$(OBJEXT) \ + tkCanvArc.$(OBJEXT) \ + tkCanvBmap.$(OBJEXT) \ + tkCanvImg.$(OBJEXT) \ + tkCanvLine.$(OBJEXT) \ + tkCanvPoly.$(OBJEXT) \ + tkCanvPs.$(OBJEXT) \ + tkCanvText.$(OBJEXT) \ + tkCanvUtil.$(OBJEXT) \ + tkCanvWind.$(OBJEXT) \ + tkCanvas.$(OBJEXT) \ + tkClipboard.$(OBJEXT) \ + tkCmds.$(OBJEXT) \ + tkColor.$(OBJEXT) \ + tkConfig.$(OBJEXT) \ + tkCursor.$(OBJEXT) \ + tkEntry.$(OBJEXT) \ + tkError.$(OBJEXT) \ + tkEvent.$(OBJEXT) \ + tkFileFilter.$(OBJEXT) \ + tkFocus.$(OBJEXT) \ + tkFont.$(OBJEXT) \ + tkFrame.$(OBJEXT) \ + tkGC.$(OBJEXT) \ + tkGeometry.$(OBJEXT) \ + tkGet.$(OBJEXT) \ + tkGrab.$(OBJEXT) \ + tkGrid.$(OBJEXT) \ + tkImage.$(OBJEXT) \ + tkImgBmap.$(OBJEXT) \ + tkImgGIF.$(OBJEXT) \ + tkImgPNG.$(OBJEXT) \ + tkImgPPM.$(OBJEXT) \ + tkImgPhoto.$(OBJEXT) \ + tkImgPhInstance.$(OBJEXT) \ + tkImgUtil.$(OBJEXT) \ + tkListbox.$(OBJEXT) \ + tkMacWinMenu.$(OBJEXT) \ + tkMain.$(OBJEXT) \ + tkMain2.$(OBJEXT) \ + tkMenu.$(OBJEXT) \ + tkMenubutton.$(OBJEXT) \ + tkMenuDraw.$(OBJEXT) \ + tkMessage.$(OBJEXT) \ + tkPanedWindow.$(OBJEXT) \ + tkObj.$(OBJEXT) \ + tkOldConfig.$(OBJEXT) \ + tkOption.$(OBJEXT) \ + tkPack.$(OBJEXT) \ + tkPlace.$(OBJEXT) \ + tkPointer.$(OBJEXT) \ + tkRectOval.$(OBJEXT) \ + tkScale.$(OBJEXT) \ + tkScrollbar.$(OBJEXT) \ + tkSelect.$(OBJEXT) \ + tkStyle.$(OBJEXT) \ + tkText.$(OBJEXT) \ + tkTextBTree.$(OBJEXT) \ + tkTextDisp.$(OBJEXT) \ + tkTextImage.$(OBJEXT) \ + tkTextIndex.$(OBJEXT) \ + tkTextMark.$(OBJEXT) \ + tkTextTag.$(OBJEXT) \ + tkTextWind.$(OBJEXT) \ + tkTrig.$(OBJEXT) \ + tkUndo.$(OBJEXT) \ + tkUtil.$(OBJEXT) \ + tkVisual.$(OBJEXT) \ + tkStubInit.$(OBJEXT) \ + tkWindow.$(OBJEXT) \ + $(TTK_OBJS) + +TTK_OBJS = \ + ttkWinMonitor.$(OBJEXT) \ + ttkWinTheme.$(OBJEXT) \ + ttkWinXPTheme.$(OBJEXT) \ + ttkBlink.$(OBJEXT) \ + ttkButton.$(OBJEXT) \ + ttkCache.$(OBJEXT) \ + ttkClamTheme.$(OBJEXT) \ + ttkClassicTheme.$(OBJEXT) \ + ttkDefaultTheme.$(OBJEXT) \ + ttkElements.$(OBJEXT) \ + ttkEntry.$(OBJEXT) \ + ttkFrame.$(OBJEXT) \ + ttkImage.$(OBJEXT) \ + ttkInit.$(OBJEXT) \ + ttkLabel.$(OBJEXT) \ + ttkLayout.$(OBJEXT) \ + ttkManager.$(OBJEXT) \ + ttkNotebook.$(OBJEXT) \ + ttkPanedwindow.$(OBJEXT) \ + ttkProgress.$(OBJEXT) \ + ttkScale.$(OBJEXT) \ + ttkScrollbar.$(OBJEXT) \ + ttkScroll.$(OBJEXT) \ + ttkSeparator.$(OBJEXT) \ + ttkSquare.$(OBJEXT) \ + ttkState.$(OBJEXT) \ + ttkTagSet.$(OBJEXT) \ + ttkTheme.$(OBJEXT) \ + ttkTrace.$(OBJEXT) \ + ttkTrack.$(OBJEXT) \ + ttkTreeview.$(OBJEXT) \ + ttkWidget.$(OBJEXT) \ + ttkStubInit.$(OBJEXT) + +STUB_OBJS = \ + tkStubLib.$(OBJEXT) \ + ttkStubLib.$(OBJEXT) + +TCL_DOCS = "$(TCL_SRC_DIR_NATIVE)/doc/*.[13n]" +TK_DOCS = "$(ROOT_DIR_NATIVE)/doc/*.[13n]" +CORE_DOCS = $(TCL_DOCS) $(TK_DOCS) + +DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget + +SHELL_ENV = \ + @TCL_LIBRARY="$(TCL_SRC_DIR_NATIVE)/library"; export TCL_LIBRARY; \ + TK_LIBRARY="$(ROOT_DIR_NATIVE)/library"; export TK_LIBRARY; \ + PATH="$(TCL_BIN_DIR):$(PATH)"; export PATH; + +# Main targets. The default target -- all -- builds the binaries, +# performs any post processing on libraries or documents. + +all: binaries libraries doc + +binaries: @LIBRARIES@ $(WISH) + +libraries: + +$(ROOT_DIR)/doc/man.macros: + $(INSTALL_DATA) "$(TCL_SRC_DIR)/doc/man.macros" "$(ROOT_DIR)/doc/man.macros" + +doc: $(ROOT_DIR)/doc/man.macros + +winhelp: $(TCL_SRC_DIR)/tools/man2help.tcl $(MAN2TCL) + $(TCL_EXE) "$(TCL_SRC_DIR_NATIVE)/tools/man2help.tcl" tcl "$(VER)" $(CORE_DOCS) + $(COPY) "$(TCL_BIN_DIR)/tcl.hpj" ./ + hcw /c /e tcl.hpj + $(COPY) ./tcl$(VER).cnt ./TCL$(VER).HLP "$(TCL_SRC_DIR_NATIVE)/tools/" + +$(MAN2TCL): $(TCL_SRC_DIR)/tools/man2tcl.c + $(CC) $(CFLAGS_OPTIMIZE) $(MAN2TCLFLAGS) -o $(MAN2TCL) "$(TCL_SRC_DIR_NATIVE)/tools/man2tcl.c" + +# Specifying TESTFLAGS on the command line is the standard way to pass +# args to tcltest, ie: +# % make test TESTFLAGS="-verbose bps -file fileName.test" + +test: test-classic test-ttk + +test-classic: binaries $(TKTEST) $(TEST_DLL_FILE) $(CAT32) + $(SHELL_ENV) ./$(TKTEST) "$(ROOT_DIR_NATIVE)/tests/all.tcl" \ + $(TESTFLAGS) | ./$(CAT32) + +test-ttk: binaries $(TKTEST) $(TEST_DLL_FILE) $(CAT32) + $(SHELL_ENV) ./$(TKTEST) "$(ROOT_DIR_NATIVE)/tests/ttk/all.tcl" \ + $(TESTFLAGS) | ./$(CAT32) + +runtest: binaries $(TKTEST) $(TEST_DLL_FILE) + $(SHELL_ENV) ./$(TKTEST) $(TESTFLAGS) $(SCRIPT) + +# This target can be used to run wish from the build directory +# via `make shell` or `make shell SCRIPT=foo.tcl` +shell: binaries + $(SHELL_ENV) ./$(WISH) $(SCRIPT) + +demo: $(WISH) + $(SHELL_ENV) ./$(WISH) $(ROOT_DIR)/library/demos/widget + +# This target can be used to run wish inside either gdb or insight +gdb: binaries + @echo "set env TCL_LIBRARY=$(TCL_SRC_DIR_NATIVE)/library" > gdb.run + @echo "set env TK_LIBRARY=$(ROOT_DIR_NATIVE)/library" >> gdb.run + PATH="$(TCL_BIN_DIR):$(PATH)"; export PATH; \ + gdb ./$(WISH) --command=gdb.run + @$(RM) gdb.run + +install: all install-binaries install-libraries install-doc install-demos + +install-binaries: binaries + @for i in $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) $(PKG_INSTALL_DIR); \ + do \ + if [ ! -d $$i ] ; then \ + echo "Making directory $$i"; \ + $(MKDIR) $$i; \ + chmod 755 $$i; \ + else true; \ + fi; \ + done; + @for i in $(TK_DLL_FILE) $(WISH); \ + do \ + if [ -f $$i ]; then \ + echo "Installing $$i to $(BIN_INSTALL_DIR)/"; \ + $(COPY) $$i "$(BIN_INSTALL_DIR)"; \ + fi; \ + done + @echo "Creating package index $(PKG_INDEX)"; + @$(RM) $(PKG_INDEX); + @(\ + echo "if {[catch {package present Tcl 8.6.0}]} return";\ + echo "if {(\$$::tcl_platform(platform) eq \"unix\") && ([info exists ::env(DISPLAY)]";\ + echo " || ([info exists ::argv] && (\"-display\" in \$$::argv)))} {";\ + echo " package ifneeded Tk $(VERSION)$(PATCH_LEVEL) [list load [file normalize [file join \$$dir .. .. bin libtk$(VERSION).dll]] Tk]";\ + echo "} else {";\ + echo " package ifneeded Tk $(VERSION)$(PATCH_LEVEL) [list load [file normalize [file join \$$dir .. .. bin $(TK_DLL_FILE)]] Tk]";\ + echo "}";\ + ) > $(PKG_INDEX); + @for i in tkConfig.sh $(TK_LIB_FILE) $(TK_STUB_LIB_FILE); \ + do \ + if [ -f $$i ]; then \ + echo "Installing $$i to $(LIB_INSTALL_DIR)/"; \ + $(COPY) $$i "$(LIB_INSTALL_DIR)"; \ + fi; \ + done + +install-libraries: libraries + @for i in $(INSTALL_ROOT)$(prefix)/lib \ + $(INCLUDE_INSTALL_DIR) $(INCLUDE_INSTALL_DIR)/X11 \ + $(SCRIPT_INSTALL_DIR) $(SCRIPT_INSTALL_DIR)/images \ + $(SCRIPT_INSTALL_DIR)/msgs $(SCRIPT_INSTALL_DIR)/ttk; \ + do \ + if [ ! -d $$i ] ; then \ + echo "Making directory $$i"; \ + $(MKDIR) $$i; \ + chmod 755 $$i; \ + else true; \ + fi; \ + done; + @echo "Installing header files to $(INCLUDE_INSTALL_DIR)/"; + @for i in $(GENERIC_DIR)/tk.h $(GENERIC_DIR)/tkPlatDecls.h \ + $(GENERIC_DIR)/tkIntXlibDecls.h $(GENERIC_DIR)/tkDecls.h ; \ + do \ + $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR); \ + done; + @for i in $(XLIB_DIR)/X11/*.h; \ + do \ + $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR)/X11; \ + done; + @echo "Installing library files to $(SCRIPT_INSTALL_DIR)"; + @for i in $(ROOT_DIR)/library/*.tcl $(ROOT_DIR)/library/tclIndex \ + $(UNIX_DIR)/tkAppInit.c; \ + do \ + $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR); \ + done; + @echo "Installing library ttk directory"; + @for i in $(ROOT_DIR)/library/ttk/*.tcl; \ + do \ + if [ -f $$i ] ; then \ + $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/ttk; \ + fi; \ + done; + @echo "Installing library images directory"; + @for i in $(ROOT_DIR)/library/images/*; \ + do \ + if [ -f $$i ] ; then \ + $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/images; \ + fi; \ + done; + @echo "Installing translation directory"; + @for i in $(ROOT_DIR)/library/msgs/*.msg; \ + do \ + if [ -f $$i ] ; then \ + $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/msgs; \ + fi; \ + done; + +install-demos: + @for i in $(INSTALL_ROOT)$(prefix)/lib $(SCRIPT_INSTALL_DIR) \ + $(SCRIPT_INSTALL_DIR)/demos \ + $(SCRIPT_INSTALL_DIR)/demos/images ; \ + do \ + if [ ! -d $$i ] ; then \ + echo "Making directory $$i"; \ + $(MKDIR) $$i; \ + chmod 755 $$i; \ + else true; \ + fi; \ + done; + @echo "Installing demos to $(SCRIPT_INSTALL_DIR)/demos/"; + @for i in $(ROOT_DIR)/library/demos/*; \ + do \ + if [ -f $$i ] ; then \ + sed -e '3 s|exec wish|exec wish$(VER)|' \ + $$i > $(SCRIPT_INSTALL_DIR)/demos/`basename $$i`; \ + fi; \ + done; + @for i in $(DEMOPROGS); \ + do \ + if test $$i = "square"; then \ + rm -f $(SCRIPT_INSTALL_DIR)/demos/$$i; \ + else \ + chmod 755 $(SCRIPT_INSTALL_DIR)/demos/$$i; \ + fi; \ + done; + @echo "Installing demo images"; + @for i in $(ROOT_DIR)/library/demos/images/*; \ + do \ + if [ -f $$i ] ; then \ + $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/demos/images; \ + fi; \ + done; + +install-doc: doc + +# Optional target to install private headers +install-private-headers: libraries + @for i in $(PRIVATE_INCLUDE_INSTALL_DIR); \ + do \ + if [ ! -d $$i ] ; then \ + echo "Making directory $$i"; \ + $(MKDIR) $$i; \ + chmod 755 $$i; \ + else true; \ + fi; \ + done; + @echo "Installing private header files to $(PRIVATE_INCLUDE_INSTALL_DIR)/"; + @for i in $(GENERIC_DIR)/tkInt.h $(GENERIC_DIR)/tkIntDecls.h \ + $(GENERIC_DIR)/tkIntPlatDecls.h $(GENERIC_DIR)/tkPort.h \ + $(WIN_DIR)/tkWinPort.h $(WIN_DIR)/tkWinInt.h $(WIN_DIR)/tkWin.h; \ + do \ + $(INSTALL_DATA) $$i $(PRIVATE_INCLUDE_INSTALL_DIR); \ + done; + +$(WISH): $(WISH_OBJS) @LIBRARIES@ $(TK_STUB_LIB_FILE) wish.$(RES) + $(CC) $(CFLAGS) $(WISH_OBJS) $(TK_LIB_FILE) \ + $(TK_STUB_LIB_FILE) $(TCL_LIB_FILE) $(LIBS) \ + wish.$(RES) $(CC_EXENAME) $(LDFLAGS_WINDOW) + @VC_MANIFEST_EMBED_EXE@ + +tktest: $(TKTEST) + +$(TKTEST): testMain.$(OBJEXT) $(TEST_DLL_FILE) @LIBRARIES@ $(TK_STUB_LIB_FILE) wish.$(RES) + $(CC) $(CFLAGS) testMain.$(OBJEXT) $(TEST_LIB_FILE) $(TK_LIB_FILE) \ + $(TK_STUB_LIB_FILE) $(TCL_LIB_FILE) $(LIBS) \ + wish.$(RES) $(CC_EXENAME) $(LDFLAGS_WINDOW) + @VC_MANIFEST_EMBED_EXE@ + +${TEST_DLL_FILE}: ${TKTEST_OBJS} ${TK_STUB_LIB_FILE} + @MAKE_DLL@ ${TKTEST_OBJS} $(TK_STUB_LIB_FILE) $(SHLIB_LD_LIBS) + +# Msys make requires this next rule for some reason. +$(TCL_SRC_DIR)/win/cat.c: + +cat32.${OBJEXT}: $(TCL_SRC_DIR)/win/cat.c + $(CC) -c $(CC_SWITCHES) "$(TCL_SRC_DIR)/win/cat.c" $(CC_OBJNAME) + +$(CAT32): cat32.${OBJEXT} + $(CC) $(CFLAGS) cat32.$(OBJEXT) $(CC_EXENAME) $(LIBS) $(LDFLAGS_CONSOLE) + +# The following targets are configured by autoconf to generate either +# a shared library or static library + +${TK_STUB_LIB_FILE}: ${STUB_OBJS} + @$(RM) ${TK_STUB_LIB_FILE} + @MAKE_STUB_LIB@ ${STUB_OBJS} + @POST_MAKE_LIB@ + +${TK_DLL_FILE}: ${TK_OBJS} $(TK_RES) + @$(RM) ${TK_DLL_FILE} + @MAKE_DLL@ ${TK_OBJS} $(TK_RES) $(SHLIB_LD_LIBS) + @VC_MANIFEST_EMBED_DLL@ + +${TK_LIB_FILE}: ${TK_OBJS} + @$(RM) ${TK_LIB_FILE} + @MAKE_LIB@ ${TK_OBJS} + @POST_MAKE_LIB@ + +# Special case object file targets + +winMain.$(OBJEXT): winMain.c + $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME) + +testMain.$(OBJEXT): winMain.c + $(CC) -c $(CC_SWITCHES) @DEPARG@ -DTK_TEST $(CC_OBJNAME) + +tkTest.$(OBJEXT): tkTest.c + $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME) + +tkOldTest.$(OBJEXT): tkOldTest.c + $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME) + +tkWinTest.$(OBJEXT): tkWinTest.c + $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME) + +tkSquare.$(OBJEXT): tkSquare.c + $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME) + +tkMain2.$(OBJEXT): tkMain.c + $(CC) -c $(CC_SWITCHES) -DBUILD_tk -DTK_ASCII_MAIN @DEPARG@ $(CC_OBJNAME) + +# Extra dependency info +tkConsole.$(OBJEXT): configure Makefile +tkMain.$(OBJEXT): configure Makefile +tkWindow.$(OBJEXT): configure Makefile + +# Add the object extension to the implicit rules. By default .obj is not +# automatically added. + +.SUFFIXES: .${OBJEXT} +.SUFFIXES: .$(RES) +.SUFFIXES: .rc + +# Implicit rule for all object files that will end up in the Tk library + +%.$(OBJEXT): %.c + $(CC) -c $(CC_SWITCHES) -DBUILD_tk -DBUILD_ttk @DEPARG@ $(CC_OBJNAME) + +.rc.$(RES): + $(RC) @RC_OUT@ $@ @RC_TYPE@ @RC_DEFINES@ @RC_INCLUDE@ "$(GENERIC_DIR_NATIVE)" @RC_INCLUDE@ "$(TCL_GENERIC_NATIVE)" @RC_INCLUDE@ "$(RC_DIR_NATIVE)" @DEPARG@ + +depend: + +cleanhelp: + $(RM) *.hlp *.cnt *.hpj *.GID *.rtf man2tcl${EXEEXT} + +clean: cleanhelp + $(RM) *.lib *.a *.exp *.dll *.res *.${OBJEXT} *~ \#* TAGS a.out + $(RM) $(WISH) $(TKTEST) $(CAT32) + $(RM) *.pch *.ilk *.pdb + +distclean: clean + $(RM) Makefile config.status config.cache config.log tkConfig.sh \ + wish.exe.manifest + +Makefile: $(SRC_DIR)/Makefile.in + ./config.status + +# +# Regenerate the stubs files. +# + +$(GENERIC_DIR)/tkStubInit.c: $(GENERIC_DIR)/tk.decls \ + $(GENERIC_DIR)/tkInt.decls + @echo "Warning: tkStubInit.c may be out of date." + @echo "Developers may want to run \"make genstubs\" to regenerate." + @echo "This warning can be safely ignored, do not report as a bug!" + +genstubs: + $(TCL_EXE) "$(TCL_TOOL_DIR)/genStubs.tcl" \ + "$(GENERIC_DIR_NATIVE)" \ + "$(GENERIC_DIR_NATIVE)/tk.decls" \ + "$(GENERIC_DIR_NATIVE)/tkInt.decls" + $(TCL_EXE) "$(TTK_DIR)/ttkGenStubs.tcl" \ + "$(TTK_DIR)" \ + "$(TTK_DIR)/ttk.decls" + +# +# The list of all the targets that do not correspond to real files. This stops +# 'make' from getting confused when someone makes an error in a rule. +# + +.PHONY: all binaries libraries doc tkLibObjs objs tktest-real test test-classic +.PHONY: test-ttk testlang runtest shell demo gdb install install-strip +.PHONY: install-binaries install-libraries install-demos install-doc +.PHONY: install-private-headers clean distclean depend genstubs checkstubs +.PHONY: checkuchar checkexports rpm dist alldist allpatch html html-tcl html-tk + +# DO NOT DELETE THIS LINE -- make depend depends on it. |