summaryrefslogtreecommitdiffstats
path: root/unix/Makefile.in
diff options
context:
space:
mode:
authordas <das>2005-05-24 04:21:31 (GMT)
committerdas <das>2005-05-24 04:21:31 (GMT)
commitb0fdc226a3f785fcf390544a5546be0cfd1e7458 (patch)
treeba20400bcdbf394be0258f6dc603b703b1a34d56 /unix/Makefile.in
parent5be843b40e45bf4ee2b4cb252a4d877ed85b8563 (diff)
downloadtk-b0fdc226a3f785fcf390544a5546be0cfd1e7458.zip
tk-b0fdc226a3f785fcf390544a5546be0cfd1e7458.tar.gz
tk-b0fdc226a3f785fcf390544a5546be0cfd1e7458.tar.bz2
* macosx/Makefile:
* macosx/README: * macosx/Tk-Info.plist.in (new file): * macosx/Wish-Info.plist.in (new file): * unix/Makefile.in: * unix/configure.in: * unix/tcl.m4: * unix/tkUnixInit.c: moved all Darwin framework and TkAqua build support from macosx/Wish.pbproj and macosx/Makefile into the standard unix configure/make buildsystem, the project and macosx/Makefile are no longer required to build Tk.framework and/or TkAqua. TkAqua is now enabled by the --enable-aqua configure option, and static and non-framework builds of TkAqua are now available via the standard configure switches. Tk/X11 can also be built as a framework. The macosx/Makefile now wraps the unix buildsystem and no longer uses the projects, embedded builds are still only available via this Makefile, but for other builds it is not longer required (but its current functionality is still available for backwards compatibility). The projects currently do not call through to the Makefile to build (unlike Tcl.pbproj) so project builds may differ from makefile builds. Due to issues with spaces in pathnames, 'Wish Shell.app' has been renamed to 'Wish.app', the macosx/Makefile installs backwards compatibility symlinks for the old name. * macosx/tkMacOSXInit.c (TkpInit): added support for Tk resource file in non-framework and static builds: the resource file is copied into a __tk_rsrc MachO segment of the library or executable at link time and extracted into a temporary location at initialization. * unix/configure: autoconf-2.13
Diffstat (limited to 'unix/Makefile.in')
-rw-r--r--unix/Makefile.in475
1 files changed, 369 insertions, 106 deletions
diff --git a/unix/Makefile.in b/unix/Makefile.in
index 696e7c4..7c75800 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -5,12 +5,12 @@
# "autoconf" program (constructs like "@foo@" will get replaced in the
# actual Makefile.
#
-# RCS: @(#) $Id: Makefile.in,v 1.87.2.8 2005/04/26 00:49:50 das Exp $
+# RCS: @(#) $Id: Makefile.in,v 1.87.2.9 2005/05/24 04:21:32 das Exp $
# Current Tk version; used in various names.
TCLVERSION = @TCL_VERSION@
-VERSION = @TK_VERSION@
+VERSION = @TK_VERSION@
MAJOR_VERSION = @TK_MAJOR_VERSION@
MINOR_VERSION = @TK_MINOR_VERSION@
PATCH_LEVEL = @TK_PATCH_LEVEL@
@@ -27,7 +27,8 @@ LOCALES = @LOCALES@
# 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.
+# to the "configure" script. The *dir vars are standard configure
+# substitutions that are based off prefix and exec_prefix.
prefix = @prefix@
exec_prefix = @exec_prefix@
@@ -41,12 +42,12 @@ mandir = @mandir@
# 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 =
+INSTALL_ROOT = $(DESTDIR)
# 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)
+TK_LIBRARY = @TK_LIBRARY@
# Path to use at runtime to refer to LIB_INSTALL_DIR:
LIB_RUNTIME_DIR = $(libdir)
@@ -57,13 +58,19 @@ 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:
+# 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)
-# Top-level directory for manual entries:
+# Path to the private tk header dir:
+PRIVATE_INCLUDE_DIR = @PRIVATE_INCLUDE_DIR@
+
+# Directory in which to (optionally) install the private tk headers:
+PRIVATE_INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(PRIVATE_INCLUDE_DIR)
+
+# Top-level directory in which to install manual entries:
MAN_INSTALL_DIR = $(INSTALL_ROOT)$(mandir)
# Directory in which to install manual entry for wish:
@@ -77,6 +84,12 @@ MAN3_INSTALL_DIR = $(MAN_INSTALL_DIR)/man3
# Tcl commands implemented by Tk:
MANN_INSTALL_DIR = $(MAN_INSTALL_DIR)/mann
+# Path to the html documentation dir:
+HTML_DIR = @HTML_DIR@
+
+# Directory in which to install html documentation:
+HTML_INSTALL_DIR = $(INSTALL_ROOT)$(HTML_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):
@@ -95,8 +108,11 @@ TK_DBGX = @TK_DBGX@
# Flag, 1: we're building a shared lib, 0 we're not
TK_SHARED_BUILD = @TK_SHARED_BUILD@
+# Subdirectory of $(libdir) containing the pkgIndex.tcl file for loadable Tk
+TK_PKG_DIR = @TK_PKG_DIR@
+
# Directory in which to install the pkgIndex.tcl file for loadable Tk
-PKG_INSTALL_DIR = $(LIB_INSTALL_DIR)/tk$(VERSION)$(TK_DBGX)
+PKG_INSTALL_DIR = $(LIB_INSTALL_DIR)/$(TK_PKG_DIR)
# Package index file for loadable Tk
PKG_INDEX = $(PKG_INSTALL_DIR)/pkgIndex.tcl
@@ -126,6 +142,8 @@ LDFLAGS = @LDFLAGS_DEFAULT@ @LDFLAGS@
# include files are accessible via /usr/include).
X11_INCLUDES = @XINCLUDES@
+AQUA_INCLUDES = -I$(MAC_OSX_DIR) -I$(XLIB_DIR)
+
# 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).
@@ -144,7 +162,7 @@ PROTO_FLAGS =
#PROTO_FLAGS = -DNO_PROTOTYPE
# To enable memory debugging reverse the comment characters on the following
-# lines. or call configure with --enable-symbols=mem
+# lines or call configure with --enable-symbols=mem
# 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.
@@ -188,10 +206,9 @@ INSTALL_DATA = ${INSTALL} -m 644
# make dist.
TCL_EXE = tclsh
-# 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.
+# The symbol below provides support for dynamic loading and shared
+# libraries. See configure.in for a description of what it means.
+# The value of the symbol is normally set by the configure script.
SHLIB_CFLAGS = @SHLIB_CFLAGS@
@@ -228,11 +245,13 @@ TCL_STUB_FLAGS = @TCL_STUB_FLAGS@
# Libraries to use when linking. This definition is determined by the
# configure script.
LIBS = @LIBS@ $(X11_LIB_SWITCHES) @DL_LIBS@ @MATH_LIBS@
-WISH_LIBS = $(TCL_LIB_SPEC) @LIBS@ $(X11_LIB_SWITCHES) @DL_LIBS@ @MATH_LIBS@
+WISH_LIBS = $(TCL_LIB_SPEC) @LIBS@ $(X11_LIB_SWITCHES) @DL_LIBS@ @MATH_LIBS@ @EXTRA_WISH_LIBS@
-# 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.
+# The symbols below provide support for dynamic loading and shared
+# libraries. See configure.in for a description of what the
+# symbols mean. 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.
STLIB_LD = @STLIB_LD@
SHLIB_LD = @SHLIB_LD@
@@ -248,6 +267,12 @@ LD_SEARCH_FLAGS = @LD_SEARCH_FLAGS@
# support for embedded libraries on Darwin / Mac OS X
DYLIB_INSTALL_DIR = ${LIB_RUNTIME_DIR}
+# support for building the Aqua resource file
+TK_RSRC_FILE = @TK_RSRC_FILE@
+WISH_RSRC_FILE = @WISH_RSRC_FILE@
+REZ = @REZ@
+REZ_SWITCHES = @REZ_FLAGS@ -i $(GENERIC_DIR) -i $(TCL_GENERIC_DIR)
+
#----------------------------------------------------------------
# The information below is modified by the configure script when
# Makefile is generated from Makefile.in. You shouldn't normally
@@ -257,12 +282,14 @@ DYLIB_INSTALL_DIR = ${LIB_RUNTIME_DIR}
AC_FLAGS = @DEFS@
AR = @AR@
RANLIB = @RANLIB@
-SRC_DIR = @srcdir@/..
-TOP_DIR = @srcdir@/..
+SRC_DIR = @srcdir@
+TOP_DIR = $(SRC_DIR)/..
GENERIC_DIR = $(TOP_DIR)/generic
-UNIX_DIR = @srcdir@
+UNIX_DIR = $(SRC_DIR)
BMAP_DIR = $(TOP_DIR)/bitmaps
TOOL_DIR = @TCL_SRC_DIR@/tools
+MAC_OSX_DIR = $(TOP_DIR)/macosx
+XLIB_DIR = $(TOP_DIR)/xlib
#----------------------------------------------------------------
# The information below should be usable as is. The configure
@@ -272,61 +299,77 @@ TOOL_DIR = @TCL_SRC_DIR@/tools
# Flags to be passed to installManPage to control whether the manpages
# should be compressed and linked with softlinks
-MAN_FLAGS = @MAN_FLAGS@
+MAN_FLAGS = @MAN_FLAGS@
CC = @CC@
CC_SWITCHES_NO_STUBS = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \
-I${UNIX_DIR} -I${GENERIC_DIR} \
--I${BMAP_DIR} -I${TCL_GENERIC_DIR} ${X11_INCLUDES} \
+-I${BMAP_DIR} -I${TCL_GENERIC_DIR} ${@TK_WINDOWINGSYSTEM@_INCLUDES} \
${AC_FLAGS} ${PROTO_FLAGS} \
-${SECURITY_FLAGS} ${MEM_DEBUG_FLAGS} ${KEYSYM_FLAGS} ${NO_DEPRECATED_FLAGS}
+${SECURITY_FLAGS} ${MEM_DEBUG_FLAGS} ${KEYSYM_FLAGS} ${NO_DEPRECATED_FLAGS} @EXTRA_CC_SWITCHES@
CC_SWITCHES = ${CC_SWITCHES_NO_STUBS} ${TCL_STUB_FLAGS}
DEPEND_SWITCHES = ${CFLAGS} -I${UNIX_DIR} -I${GENERIC_DIR} \
-I${BMAP_DIR} \
--I${TCL_GENERIC_DIR} ${X11_INCLUDES} \
+-I${TCL_GENERIC_DIR} ${@TK_WINDOWINGSYSTEM@_INCLUDES} \
${AC_FLAGS} ${PROTO_FLAGS} ${SECURITY_FLAGS} ${MEM_DEBUG_FLAGS} \
-${KEYSYM_FLAGS}
+${KEYSYM_FLAGS} @EXTRA_CC_SWITCHES@
WISH_OBJS = tkAppInit.o
TKTEST_OBJS = tkTestInit.o tkTest.o tkSquare.o
-WIDGOBJS = tkButton.o tkEntry.o tkFrame.o tkListbox.o \
+WIDG_OBJS = tkButton.o tkEntry.o tkFrame.o tkListbox.o \
tkMenu.o tkMenubutton.o tkMenuDraw.o tkMessage.o \
tkPanedWindow.o tkScale.o tkScrollbar.o
-CANVOBJS = tkCanvas.o tkCanvArc.o tkCanvBmap.o tkCanvImg.o \
+CANV_OBJS = 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
+IMAGE_OBJS = tkImage.o tkImgBmap.o tkImgGIF.o tkImgPPM.o tkImgPhoto.o
-TEXTOBJS = tkText.o tkTextBTree.o tkTextDisp.o tkTextImage.o tkTextIndex.o \
+TEXT_OBJS = 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 tkUnixConfig.o \
- tkUnixCursor.o tkUnixDraw.o tkUnixEmbed.o tkUnixEvent.o \
- tkUnixFocus.o tkUnixFont.o tkUnixInit.o tkUnixKey.o tkUnixMenu.o \
- tkUnixMenubu.o tkUnixScale.o tkUnixScrlbr.o tkUnixSelect.o \
- tkUnixSend.o tkUnixWm.o tkUnixXId.o tkStubInit.o tkStubLib.o
+GENERIC_OBJS = tk3d.o tkArgv.o tkAtom.o tkBind.o tkBitmap.o tkClipboard.o \
+ tkCmds.o tkColor.o tkConfig.o tkConsole.o tkCursor.o tkError.o \
+ tkEvent.o tkFocus.o tkFont.o tkGet.o tkGC.o tkGeometry.o tkGrab.o \
+ tkGrid.o tkMain.o tkObj.o tkOldConfig.o tkOption.o tkPack.o tkPlace.o \
+ tkSelect.o tkStyle.o tkUndo.o tkUtil.o tkVisual.o tkWindow.o
+
+STUB_OBJS = tkStubInit.o tkStubLib.o
STUB_LIB_OBJS = tkStubLib.o tkStubImg.o
-OBJS = tk3d.o tkArgv.o tkAtom.o tkBind.o tkBitmap.o tkClipboard.o tkCmds.o \
- tkColor.o tkConfig.o tkConsole.o tkCursor.o tkError.o tkEvent.o \
- tkFocus.o tkFont.o tkGet.o tkGC.o tkGeometry.o tkGrab.o tkGrid.o \
- tkMain.o tkObj.o tkOldConfig.o tkOption.o tkPack.o tkPlace.o \
- tkSelect.o tkStyle.o tkUndo.o tkUtil.o tkVisual.o tkWindow.o \
- $(UNIXOBJS) $(WIDGOBJS) $(CANVOBJS) $(IMAGEOBJS) $(TEXTOBJS)
+X11_OBJS = tkUnix.o tkUnix3d.o tkUnixButton.o tkUnixColor.o tkUnixConfig.o \
+ tkUnixCursor.o tkUnixDraw.o tkUnixEmbed.o tkUnixEvent.o \
+ tkUnixFocus.o tkUnixFont.o tkUnixInit.o tkUnixKey.o tkUnixMenu.o \
+ tkUnixMenubu.o tkUnixScale.o tkUnixScrlbr.o tkUnixSelect.o \
+ tkUnixSend.o tkUnixWm.o tkUnixXId.o
+
+AQUA_OBJS = tkMacOSXBitmap.o tkMacOSXButton.o tkMacOSXClipboard.o \
+ tkMacOSXColor.o tkMacOSXConfig.o tkMacOSXCursor.o tkMacOSXDebug.o \
+ tkMacOSXDialog.o tkMacOSXDraw.o tkMacOSXEmbed.o tkMacOSXEntry.o \
+ tkMacOSXEvent.o tkMacOSXFont.o tkMacOSXHLEvents.o tkMacOSXInit.o \
+ tkMacOSXKeyboard.o tkMacOSXKeyEvent.o tkMacOSXMenu.o \
+ tkMacOSXMenubutton.o tkMacOSXMenus.o tkMacOSXMouseEvent.o \
+ tkMacOSXNotify.o tkMacOSXRegion.o tkMacOSXScrlbr.o tkMacOSXSend.o \
+ tkMacOSXSubwindows.o tkMacOSXTest.o tkMacOSXWindowEvent.o \
+ tkMacOSXWm.o tkMacOSXXStubs.o \
+ tkFileFilter.o tkMacWinMenu.o tkPointer.o tkUnix3d.o tkUnixScale.o \
+ xcolors.o xdraw.o xgc.o ximage.o xutil.o
+
+OBJS = $(GENERIC_OBJS) $(WIDG_OBJS) $(CANV_OBJS) $(IMAGE_OBJS) $(TEXT_OBJS) \
+ $(STUB_OBJS) $(@TK_WINDOWINGSYSTEM@_OBJS) @PLAT_OBJS@
TK_DECLS = \
$(GENERIC_DIR)/tk.decls \
$(GENERIC_DIR)/tkInt.decls
-SRCS = \
+GENERIC_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 \
@@ -364,7 +407,9 @@ SRCS = \
$(GENERIC_DIR)/tkTextTag.c $(GENERIC_DIR)/tkTextWind.c \
$(GENERIC_DIR)/tkOldConfig.c \
$(GENERIC_DIR)/tkSquare.c $(GENERIC_DIR)/tkTest.c \
- $(GENERIC_DIR)/tkStubInit.c $(GENERIC_DIR)/tkStubLib.c \
+ $(GENERIC_DIR)/tkStubInit.c $(GENERIC_DIR)/tkStubLib.c
+
+X11_SRCS = \
$(UNIX_DIR)/tkAppInit.c $(UNIX_DIR)/tkUnix.c \
$(UNIX_DIR)/tkUnix3d.c \
$(UNIX_DIR)/tkUnixButton.c $(UNIX_DIR)/tkUnixColor.c \
@@ -381,6 +426,42 @@ SRCS = \
$(UNIX_DIR)/tkUnixSend.c $(UNIX_DIR)/tkUnixWm.c \
$(UNIX_DIR)/tkUnixXId.c
+AQUA_SRCS = \
+ $(MAC_OSX_DIR)/tkMacOSXBitmap.c $(MAC_OSX_DIR)/tkMacOSXButton.c \
+ $(MAC_OSX_DIR)/tkMacOSXClipboard.c $(MAC_OSX_DIR)/tkMacOSXColor.c \
+ $(MAC_OSX_DIR)/tkMacOSXConfig.c $(MAC_OSX_DIR)/tkMacOSXCursor.c \
+ $(MAC_OSX_DIR)/tkMacOSXDebug.c $(MAC_OSX_DIR)/tkMacOSXDialog.c \
+ $(MAC_OSX_DIR)/tkMacOSXDraw.c $(MAC_OSX_DIR)/tkMacOSXEmbed.c \
+ $(MAC_OSX_DIR)/tkMacOSXEntry.c $(MAC_OSX_DIR)/tkMacOSXEvent.c \
+ $(MAC_OSX_DIR)/tkMacOSXFont.c $(MAC_OSX_DIR)/tkMacOSXHLEvents.c \
+ $(MAC_OSX_DIR)/tkMacOSXInit.c $(MAC_OSX_DIR)/tkMacOSXKeyboard.c \
+ $(MAC_OSX_DIR)/tkMacOSXKeyEvent.c $(MAC_OSX_DIR)/tkMacOSXMenu.c \
+ $(MAC_OSX_DIR)/tkMacOSXMenubutton.c $(MAC_OSX_DIR)/tkMacOSXMenus.c \
+ $(MAC_OSX_DIR)/tkMacOSXMouseEvent.c $(MAC_OSX_DIR)/tkMacOSXNotify.c \
+ $(MAC_OSX_DIR)/tkMacOSXRegion.c $(MAC_OSX_DIR)/tkMacOSXScrlbr.c \
+ $(MAC_OSX_DIR)/tkMacOSXSend.c $(MAC_OSX_DIR)/tkMacOSXSubwindows.c \
+ $(MAC_OSX_DIR)/tkMacOSXTest.c $(MAC_OSX_DIR)/tkMacOSXWindowEvent.c \
+ $(MAC_OSX_DIR)/tkMacOSXWm.c $(MAC_OSX_DIR)/tkMacOSXXStubs.c \
+ $(GENERIC_DIR)/tkFileFilter.c $(GENERIC_DIR)/tkMacWinMenu.c \
+ $(GENERIC_DIR)/tkPointer.c $(UNIX_DIR)/tkUnix3d.c \
+ $(UNIX_DIR)/tkUnixScale.c $(XLIB_DIR)/xcolors.c $(XLIB_DIR)/xdraw.c \
+ $(XLIB_DIR)/xgc.c $(XLIB_DIR)/ximage.c $(XLIB_DIR)/xutil.c
+
+SRCS = $(GENERIC_SRCS) $(@TK_WINDOWINGSYSTEM@_SRCS) @PLAT_SRCS@
+
+AQUA_RESOURCES = \
+ $(MAC_OSX_DIR)/tkAboutDlg.r $(MAC_OSX_DIR)/tkMacOSXCursors.r \
+ $(MAC_OSX_DIR)/tkMacOSXMenu.r $(MAC_OSX_DIR)/tkMacOSXXCursors.r
+
+AQUA_WISH_RESOURCES = $(MAC_OSX_DIR)/tkMacOSXAETE.r
+
+AQUA_HDRS = $(MAC_OSX_DIR)/tkMacOSX.h $(GENERIC_DIR)/tkIntXlibDecls.h
+
+AQUA_XLIB_HDRS = $(XLIB_DIR)/X11/*.h $(XLIB_DIR)/xbytes.h
+
+AQUA_PRIVATE_HDRS = $(MAC_OSX_DIR)/tkMacOSXPort.h $(MAC_OSX_DIR)/tkMacOSXInt.h
+
+X11_PRIVATE_HDRS = $(UNIX_DIR)/tkUnixPort.h $(UNIX_DIR)/tkUnixInt.h
HDRS = bltList.h \
default.h ks_names.h tkPatch.h tk.h tkButton.h tkCanvas.h tkInt.h \
@@ -394,15 +475,15 @@ binaries: ${LIB_FILE} ${STUB_LIB_FILE} wish
libraries:
-$(SRC_DIR)/doc/man.macros:
+$(TOP_DIR)/doc/man.macros:
chmod +x $(UNIX_DIR)/install-sh
- $(INSTALL_DATA) @TCL_SRC_DIR@/doc/man.macros $(SRC_DIR)/doc/man.macros
+ $(INSTALL_DATA) @TCL_SRC_DIR@/doc/man.macros $(TOP_DIR)/doc/man.macros
-doc: $(SRC_DIR)/doc/man.macros
+doc: $(TOP_DIR)/doc/man.macros
# The following target is configured by autoconf to generate either
# a shared library or non-shared library for Tk.
-${LIB_FILE}: ${OBJS}
+${LIB_FILE}: ${OBJS} ${STUB_LIB_FILE} @LIB_RSRC_FILE@
rm -f $@
@MAKE_LIB@
@@ -410,18 +491,28 @@ ${STUB_LIB_FILE}: ${STUB_LIB_OBJS}
rm -f $@
@MAKE_STUB_LIB@
+# Build Aqua resource files
+${TK_RSRC_FILE}: $(AQUA_RESOURCES)
+ rm -f $@
+ if test "$(REZ)" != ""; then \
+ $(REZ) -o $@ $(REZ_SWITCHES) $(AQUA_RESOURCES); fi
+
+${WISH_RSRC_FILE}: $(AQUA_WISH_RESOURCES)
+ rm -f $@
+ if test "$(REZ)" != ""; then \
+ $(REZ) -o $@ $(REZ_SWITCHES) $(AQUA_WISH_RESOURCES); fi
+
# 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 ${OBJS}
-
# This targets actually build the objects needed for the lib in the above
# case
objs: ${OBJS}
-wish: $(WISH_OBJS) $(TK_LIB_FILE) $(TK_STUB_LIB_FILE)
+wish: $(WISH_OBJS) $(TK_LIB_FILE) $(TK_STUB_LIB_FILE) @APP_RSRC_FILE@
$(CC) $(LDFLAGS) $(WISH_OBJS) \
@TK_BUILD_LIB_SPEC@ \
$(WISH_LIBS) $(CC_SEARCH_FLAGS) -o wish
@@ -436,8 +527,7 @@ tktest: $(TKTEST_OBJS) $(TK_LIB_FILE)
$(MAKE) tktest-real LIB_RUNTIME_DIR=`pwd`:$(TCL_BIN_DIR)
tktest-real:
- ${CC} $(LDFLAGS) $(TKTEST_OBJS) \
- @TK_BUILD_LIB_SPEC@ \
+ ${CC} $(LDFLAGS) $(TKTEST_OBJS) @TK_BUILD_LIB_SPEC@ \
$(WISH_LIBS) $(CC_SEARCH_FLAGS) -o tktest
# FIXME: This xttest rule seems to be broken in a number of ways.
@@ -457,7 +547,7 @@ xttest: test.o tkTest.o tkSquare.o $(TK_LIB_FILE)
# % make test TESTFLAGS="-verbose bps -file fileName.test"
test: tktest
- @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:${@LD_LIBRARY_PATH_VAR@}; \
+ @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}; \
export @LD_LIBRARY_PATH_VAR@; \
TCL_LIBRARY=@TCL_SRC_DIR@/library; export TCL_LIBRARY; \
TK_LIBRARY=@TK_SRC_DIR@/library; export TK_LIBRARY; \
@@ -466,7 +556,7 @@ test: tktest
# Tests with different languages
testlang: tktest
- @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:${@LD_LIBRARY_PATH_VAR@}; \
+ @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}; \
export @LD_LIBRARY_PATH_VAR@; \
TCL_LIBRARY=@TCL_SRC_DIR@/library; export TCL_LIBRARY; \
TK_LIBRARY=@TK_SRC_DIR@/library; export TK_LIBRARY; \
@@ -479,7 +569,7 @@ testlang: tktest
# Useful target to launch a built tktest with the proper path,...
runtest: tktest
- @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:${@LD_LIBRARY_PATH_VAR@}; \
+ @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}; \
export @LD_LIBRARY_PATH_VAR@; \
TCL_LIBRARY=@TCL_SRC_DIR@/library; export TCL_LIBRARY; \
TK_LIBRARY=@TK_SRC_DIR@/library; export TK_LIBRARY; \
@@ -488,7 +578,7 @@ runtest: tktest
# This target can be used to run wish from the build directory
# via `make shell` or `make shell SCRIPT=/tmp/foo.tcl`
shell: wish
- @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:${@LD_LIBRARY_PATH_VAR@}; \
+ @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}; \
export @LD_LIBRARY_PATH_VAR@; \
TCL_LIBRARY=@TCL_SRC_DIR@/library; export TCL_LIBRARY; \
TK_LIBRARY=@TK_SRC_DIR@/library; export TK_LIBRARY; \
@@ -496,16 +586,18 @@ shell: wish
# This target can be used to run wish inside either gdb or insight
gdb: wish
- @echo "set env @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:${@LD_LIBRARY_PATH_VAR@}" > gdb.run
+ @echo "set env @LD_LIBRARY_PATH_VAR@=`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}" > gdb.run
@echo "set env TCL_LIBRARY=@TCL_SRC_DIR@/library" >> gdb.run
@echo "set env TK_LIBRARY=@TK_SRC_DIR@/library" >> gdb.run
gdb ./wish --command=gdb.run
rm gdb.run
-install: all install-binaries install-libraries install-demos install-doc
+INSTALL_TARGETS = install-binaries install-libraries install-demos install-doc @EXTRA_INSTALL@
+
+install: $(INSTALL_TARGETS)
install-strip:
- $(MAKE) install \
+ $(MAKE) $(INSTALL_TARGETS) \
INSTALL_PROGRAM="$(INSTALL_PROGRAM) ${INSTALL_STRIP_PROGRAM}" \
INSTALL_LIBRARY="$(INSTALL_LIBRARY) ${INSTALL_STRIP_LIBRARY}"
@@ -523,8 +615,8 @@ install-binaries: $(TK_LIB_FILE) $(TK_STUB_LIB_FILE) $(TK_BUILD_EXP_FILE) wish
else true; \
fi; \
done;
- @if test ! -x $(UNIX_DIR)/install-sh; then \
- chmod +x $(UNIX_DIR)/install-sh; \
+ @if test ! -x $(SRC_DIR)/install-sh; then \
+ chmod +x $(SRC_DIR)/install-sh; \
fi
@if test "x$(TK_SHARED_BUILD)" = "x1"; then \
echo "Creating package index $(PKG_INDEX)"; \
@@ -532,29 +624,33 @@ install-binaries: $(TK_LIB_FILE) $(TK_STUB_LIB_FILE) $(TK_BUILD_EXP_FILE) wish
(\
echo "if {[package vcompare [package provide Tcl]\
$(TCLVERSION)] != 0} { return }";\
- echo "package ifneeded Tk $(VERSION)\
- [list load [file join \$$dir .. $(TK_LIB_FILE)] Tk]";\
+ relative=`echo | awk '{ORS=" "; split("$(TK_PKG_DIR)",a,"/"); for (f in a) {print ".."}}'`;\
+ echo "package ifneeded Tk $(MAJOR_VERSION).$(MINOR_VERSION)\
+ [list load [file join \$$dir $${relative}$(TK_LIB_FILE)] Tk]";\
) > $(PKG_INDEX); \
fi
@echo "Installing $(LIB_FILE) to $(LIB_INSTALL_DIR)/"
@@INSTALL_LIB@
@chmod 555 $(LIB_INSTALL_DIR)/$(LIB_FILE)
- @echo "Installing wish as $(BIN_INSTALL_DIR)/wish$(VERSION)"
- @$(INSTALL_PROGRAM) wish $(BIN_INSTALL_DIR)/wish$(VERSION)
- @echo "Installing tkConfig.sh to $(LIB_INSTALL_DIR)/"
- @$(INSTALL_DATA) tkConfig.sh $(LIB_INSTALL_DIR)/tkConfig.sh
@if test "$(TK_BUILD_EXP_FILE)" != ""; then \
echo "Installing $(TK_EXP_FILE) to $(LIB_INSTALL_DIR)/"; \
$(INSTALL_DATA) $(TK_BUILD_EXP_FILE) \
$(LIB_INSTALL_DIR)/$(TK_EXP_FILE); \
- fi
+ fi
+ @echo "Installing wish as $(BIN_INSTALL_DIR)/wish$(VERSION)"
+ @$(INSTALL_PROGRAM) wish $(BIN_INSTALL_DIR)/wish$(VERSION)
+ @echo "Installing tkConfig.sh to $(LIB_INSTALL_DIR)/"
+ @$(INSTALL_DATA) tkConfig.sh $(LIB_INSTALL_DIR)/tkConfig.sh
@if test "$(STUB_LIB_FILE)" != "" ; then \
echo "Installing $(STUB_LIB_FILE) to $(LIB_INSTALL_DIR)/"; \
@INSTALL_STUB_LIB@ ; \
fi
+ @EXTRA_INSTALL_BINARIES@
-install-libraries:
- @for i in $(INCLUDE_INSTALL_DIR) \
+install-libraries: libraries
+ @if test "$(@TK_WINDOWINGSYSTEM@_XLIB_HDRS)" != ""; then \
+ XLIB_INCLUDE_INSTALL_DIR=$(INCLUDE_INSTALL_DIR)/X11; fi; \
+ for i in $(INCLUDE_INSTALL_DIR) $${XLIB_INCLUDE_INSTALL_DIR} \
$(SCRIPT_INSTALL_DIR) $(SCRIPT_INSTALL_DIR)/images \
$(SCRIPT_INSTALL_DIR)/msgs; \
do \
@@ -565,30 +661,34 @@ install-libraries:
else true; \
fi; \
done;
- @if test ! -x $(UNIX_DIR)/install-sh; then \
- chmod +x $(UNIX_DIR)/install-sh; \
+ @if test ! -x $(SRC_DIR)/install-sh; then \
+ chmod +x $(SRC_DIR)/install-sh; \
fi
@echo "Installing header files";
@for i in $(GENERIC_DIR)/tk.h $(GENERIC_DIR)/tkDecls.h \
- $(GENERIC_DIR)/tkPlatDecls.h ; \
+ $(GENERIC_DIR)/tkPlatDecls.h $(@TK_WINDOWINGSYSTEM@_HDRS) ; \
do \
$(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR); \
done;
+ @for i in $(@TK_WINDOWINGSYSTEM@_XLIB_HDRS) ; \
+ do \
+ $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR)/X11; \
+ done;
@echo "Installing library files to $(SCRIPT_INSTALL_DIR)";
- @for i in $(SRC_DIR)/library/*.tcl $(GENERIC_DIR)/prolog.ps \
- $(SRC_DIR)/library/tclIndex $(UNIX_DIR)/tkAppInit.c; \
+ @for i in $(TOP_DIR)/library/*.tcl $(GENERIC_DIR)/prolog.ps \
+ $(TOP_DIR)/library/tclIndex $(UNIX_DIR)/tkAppInit.c; \
do \
$(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR); \
done;
@echo "Installing library images directory";
- @for i in $(SRC_DIR)/library/images/*; \
+ @for i in $(TOP_DIR)/library/images/*; \
do \
if [ -f $$i ] ; then \
$(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/images; \
fi; \
done;
@echo "Installing translation directory";
- @for i in $(SRC_DIR)/library/msgs/*.msg; \
+ @for i in $(TOP_DIR)/library/msgs/*.msg; \
do \
if [ -f $$i ] ; then \
$(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/msgs; \
@@ -608,7 +708,7 @@ install-demos:
fi; \
done;
@echo "Installing demos to $(SCRIPT_INSTALL_DIR)/demos/";
- @for i in $(SRC_DIR)/library/demos/*; \
+ @for i in $(TOP_DIR)/library/demos/*; \
do \
if [ -f $$i ] ; then \
sed -e '3 s|exec wish|exec wish$(VERSION)|' \
@@ -620,7 +720,7 @@ install-demos:
chmod 755 $(SCRIPT_INSTALL_DIR)/demos/$$i; \
done;
@echo "Installing demo images";
- @for i in $(SRC_DIR)/library/demos/images/*; \
+ @for i in $(TOP_DIR)/library/demos/images/*; \
do \
if [ -f $$i ] ; then \
$(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/demos/images; \
@@ -646,25 +746,50 @@ install-doc:
done
@echo "Installing and cross-linking C API (.3) docs";
- @for i in $(SRC_DIR)/doc/*.3; do \
+ @for i in $(TOP_DIR)/doc/*.3; do \
$(UNIX_DIR)/installManPage $(MAN_FLAGS) $$i $(MAN3_INSTALL_DIR); \
done
@echo "Installing and cross-linking command (.n) docs";
- @for i in $(SRC_DIR)/doc/*.n; do \
+ @for i in $(TOP_DIR)/doc/*.n; do \
$(UNIX_DIR)/installManPage $(MAN_FLAGS) $$i $(MANN_INSTALL_DIR); \
done
+# 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 -p $$i; \
+ chmod 755 $$i; \
+ else true; \
+ fi; \
+ done;
+ @if test ! -x $(SRC_DIR)/install-sh; then \
+ chmod +x $(SRC_DIR)/install-sh; \
+ fi
+ @echo "Installing private header files";
+ @for i in $(GENERIC_DIR)/tkInt.h $(GENERIC_DIR)/tkIntDecls.h \
+ $(GENERIC_DIR)/tkIntPlatDecls.h $(GENERIC_DIR)/tkPort.h \
+ $(@TK_WINDOWINGSYSTEM@_PRIVATE_HDRS); \
+ do \
+ $(INSTALL_DATA) $$i $(PRIVATE_INCLUDE_INSTALL_DIR); \
+ done;
+ @if test -f tkConfig.h; then\
+ $(INSTALL_DATA) tkConfig.h $(PRIVATE_INCLUDE_INSTALL_DIR); \
+ fi;
+
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
+ rm -f *.a *.o libtk* core errs *~ \#* TAGS *.E a.out \
+ errors wish tktest lib.exp Tk *.rsrc
distclean: clean
- rm -f Makefile config.status config.cache config.log tkConfig.sh \
- $(PACKAGE).* prototype
+ rm -rf Makefile config.status config.cache config.log tkConfig.sh \
+ $(PACKAGE).* prototype *.plist Tk.framework
depend:
makedepend -- $(DEPEND_SWITCHES) -- $(SRCS)
@@ -974,27 +1099,125 @@ tkUnixWm.o: $(UNIX_DIR)/tkUnixWm.c
tkUnixXId.o: $(UNIX_DIR)/tkUnixXId.c
$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tkUnixXId.c
-.c.o:
- $(CC) -c $(CC_SWITCHES) $<
+tkMacOSXBitmap.o: $(MAC_OSX_DIR)/tkMacOSXBitmap.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXBitmap.c
-#
-# Target to check for proper usage of UCHAR macro.
-#
+tkMacOSXButton.o: $(MAC_OSX_DIR)/tkMacOSXButton.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXButton.c
-checkuchar:
- -egrep isalnum\|isalpha\|iscntrl\|isdigit\|islower\|isprint\|ispunct\|isspace\|isupper\|isxdigit\|toupper\|tolower $(SRCS) | grep -v UCHAR
+tkMacOSXClipboard.o: $(MAC_OSX_DIR)/tkMacOSXClipboard.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXClipboard.c
-#
-# Target to make sure that only symbols with "Tk" prefixes are
-# exported.
-#
+tkMacOSXColor.o: $(MAC_OSX_DIR)/tkMacOSXColor.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXColor.c
-checkexports: $(TK_LIB_FILE)
- -nm -p $(TK_LIB_FILE) | awk '$$2 ~ /[TDB]/ { print $$3 }' | sort -n | grep -v '^[Tt]k'
+tkMacOSXConfig.o: $(MAC_OSX_DIR)/tkMacOSXConfig.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXConfig.c
+
+tkMacOSXCursor.o: $(MAC_OSX_DIR)/tkMacOSXCursor.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXCursor.c
+
+tkMacOSXDebug.o: $(MAC_OSX_DIR)/tkMacOSXDebug.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXDebug.c
+
+tkMacOSXDialog.o: $(MAC_OSX_DIR)/tkMacOSXDialog.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXDialog.c
+
+tkMacOSXDraw.o: $(MAC_OSX_DIR)/tkMacOSXDraw.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXDraw.c
+
+tkMacOSXEmbed.o: $(MAC_OSX_DIR)/tkMacOSXEmbed.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXEmbed.c
+
+tkMacOSXEntry.o: $(MAC_OSX_DIR)/tkMacOSXEntry.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXEntry.c
+
+tkMacOSXEvent.o: $(MAC_OSX_DIR)/tkMacOSXEvent.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXEvent.c
+
+tkMacOSXFont.o: $(MAC_OSX_DIR)/tkMacOSXFont.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXFont.c
+
+tkMacOSXHLEvents.o: $(MAC_OSX_DIR)/tkMacOSXHLEvents.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXHLEvents.c
+
+tkMacOSXInit.o: $(MAC_OSX_DIR)/tkMacOSXInit.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXInit.c
+
+tkMacOSXKeyboard.o: $(MAC_OSX_DIR)/tkMacOSXKeyboard.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXKeyboard.c
+
+tkMacOSXKeyEvent.o: $(MAC_OSX_DIR)/tkMacOSXKeyEvent.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXKeyEvent.c
+
+tkMacOSXMenu.o: $(MAC_OSX_DIR)/tkMacOSXMenu.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXMenu.c
+
+tkMacOSXMenubutton.o: $(MAC_OSX_DIR)/tkMacOSXMenubutton.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXMenubutton.c
+
+tkMacOSXMenus.o: $(MAC_OSX_DIR)/tkMacOSXMenus.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXMenus.c
+
+tkMacOSXMouseEvent.o: $(MAC_OSX_DIR)/tkMacOSXMouseEvent.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXMouseEvent.c
+
+tkMacOSXNotify.o: $(MAC_OSX_DIR)/tkMacOSXNotify.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXNotify.c
+
+tkMacOSXRegion.o: $(MAC_OSX_DIR)/tkMacOSXRegion.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXRegion.c
+
+tkMacOSXScrlbr.o: $(MAC_OSX_DIR)/tkMacOSXScrlbr.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXScrlbr.c
+
+tkMacOSXSend.o: $(MAC_OSX_DIR)/tkMacOSXSend.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXSend.c
+
+tkMacOSXSubwindows.o: $(MAC_OSX_DIR)/tkMacOSXSubwindows.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXSubwindows.c
+
+tkMacOSXTest.o: $(MAC_OSX_DIR)/tkMacOSXTest.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXTest.c
+tkMacOSXWindowEvent.o: $(MAC_OSX_DIR)/tkMacOSXWindowEvent.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXWindowEvent.c
+
+tkMacOSXWm.o: $(MAC_OSX_DIR)/tkMacOSXWm.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXWm.c
+
+tkMacOSXXStubs.o: $(MAC_OSX_DIR)/tkMacOSXXStubs.c
+ $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tkMacOSXXStubs.c
+
+tkFileFilter.o: $(GENERIC_DIR)/tkFileFilter.c
+ $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkFileFilter.c
+
+tkMacWinMenu.o: $(GENERIC_DIR)/tkMacWinMenu.c
+ $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkMacWinMenu.c
+
+tkPointer.o: $(GENERIC_DIR)/tkPointer.c
+ $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tkPointer.c
+
+xcolors.o: $(XLIB_DIR)/xcolors.c
+ $(CC) -c $(CC_SWITCHES) $(XLIB_DIR)/xcolors.c
+
+xdraw.o: $(XLIB_DIR)/xdraw.c
+ $(CC) -c $(CC_SWITCHES) $(XLIB_DIR)/xdraw.c
+
+xgc.o: $(XLIB_DIR)/xgc.c
+ $(CC) -c $(CC_SWITCHES) $(XLIB_DIR)/xgc.c
+
+ximage.o: $(XLIB_DIR)/ximage.c
+ $(CC) -c $(CC_SWITCHES) $(XLIB_DIR)/ximage.c
+
+xutil.o: $(XLIB_DIR)/xutil.c
+ $(CC) -c $(CC_SWITCHES) $(XLIB_DIR)/xutil.c
+
+.c.o:
+ $(CC) -c $(CC_SWITCHES) $<
#
-# Regenerate the stubs files.
+# Target to regenerate header files and stub files from the *.decls tables.
#
$(GENERIC_DIR)/tkStubInit.c: $(GENERIC_DIR)/tk.decls \
@@ -1024,6 +1247,20 @@ checkstubs:
if [ $$match -eq 0 ]; then echo $$i; fi \
done
+#
+# 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 Tk RPM for Linux. Requires that you be on a Linux
@@ -1047,15 +1284,14 @@ rpm: all /bin/rpm
#
DISTROOT = /tmp/dist
-DISTNAME = tk${VERSION}${PATCH_LEVEL}
-ZIPNAME = tk${MAJOR_VERSION}${MINOR_VERSION}${PATCH_LEVEL}-src.zip
-DISTDIR = $(DISTROOT)/$(DISTNAME)
-TCLDIR = @TCL_SRC_DIR@
+DISTNAME = tk${VERSION}${PATCH_LEVEL}
+ZIPNAME = tk${MAJOR_VERSION}${MINOR_VERSION}${PATCH_LEVEL}-src.zip
+DISTDIR = $(DISTROOT)/$(DISTNAME)
+TCLDIR = @TCL_SRC_DIR@
dist:
rm -rf $(DISTDIR)
- mkdir -p $(DISTDIR)
- mkdir $(DISTDIR)/unix
+ mkdir -p $(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
@@ -1115,7 +1351,7 @@ dist:
cp -p $(TOP_DIR)/mac/*.tcl $(DISTDIR)/mac
mkdir $(DISTDIR)/macosx
cp -p $(TOP_DIR)/macosx/Makefile $(TOP_DIR)/macosx/Wish.icns \
- $(TOP_DIR)/macosx/*.c $(TOP_DIR)/macosx/*.h \
+ $(TOP_DIR)/macosx/*.c $(TOP_DIR)/macosx/*.h $(TOP_DIR)/macosx/*.in \
$(TOP_DIR)/macosx/*.r $(TOP_DIR)/macosx/*.tcl $(DISTDIR)/macosx
mkdir $(DISTDIR)/macosx/Wish.pbproj
cp -p $(TOP_DIR)/macosx/Wish.pbproj/*.pbx* \
@@ -1187,8 +1423,8 @@ alldist: dist
# 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).
+# (e.g. tk8.0p1.tar.gz) but the extracted source directory doesn't
+# include the patch designation (e.g. tk8.0).
#
allpatch: dist
@@ -1201,6 +1437,33 @@ allpatch: dist
mv $(DISTROOT)/old $(DISTROOT)/tk${VERSION}
#
+# This target creates the HTML folder for Tcl & Tk and places it
+# in DISTDIR/html. It uses the tcltk-man2html.tcl tool from
+# the Tcl group's tool workspace. It depends on the Tcl & Tk being
+# in directories called tcl8.3 & tk8.3 up two directories from the
+# TOOL_DIR.
+#
+
+html:
+ $(BUILD_HTML)
+ @EXTRA_BUILD_HTML@
+html-tcl:
+ $(BUILD_HTML) --tcl
+ @EXTRA_BUILD_HTML@
+html-tk:
+ $(BUILD_HTML) --tk
+ @EXTRA_BUILD_HTML@
+
+BUILD_HTML = \
+ @if test -f $(TCL_BIN_DIR)/tclsh; then \
+ @LD_LIBRARY_PATH_VAR@=$(TCL_BIN_DIR):$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@; \
+ TCL_LIBRARY=@TCL_SRC_DIR@/library; export TCL_LIBRARY; \
+ TCLSH="$(TCL_BIN_DIR)/tclsh"; else \
+ TCLSH="$(TCL_EXE)"; fi ;\
+ $${TCLSH} $(TOOL_DIR)/tcltk-man2html.tcl --htmldir=$(HTML_INSTALL_DIR) \
+ --srcdir=$(TOP_DIR)/..
+
+#
# 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