Makefile.in
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:50k
- #
- # This file is a Makefile for Tcl. 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.
- #
- # RCS: @(#) $Id: Makefile.in,v 1.121.2.24 2007/09/19 16:08:39 dgp Exp $
- VERSION = @TCL_VERSION@
- MAJOR_VERSION = @TCL_MAJOR_VERSION@
- MINOR_VERSION = @TCL_MINOR_VERSION@
- PATCH_LEVEL = @TCL_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. The *dir vars are standard configure
- # substitutions that are based off prefix and exec_prefix.
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
- 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 = $(DESTDIR)
- # Path for the platform independent Tcl scripting libraries:
- TCL_LIBRARY = @TCL_LIBRARY@
- # Path to use at runtime to refer to LIB_INSTALL_DIR:
- LIB_RUNTIME_DIR = $(libdir)
- # Directory in which to install the program tclsh:
- BIN_INSTALL_DIR = $(INSTALL_ROOT)$(bindir)
- # Directory in which to install libtcl.so or libtcl.a:
- LIB_INSTALL_DIR = $(INSTALL_ROOT)$(libdir)
- # Path name to use when installing library scripts.
- SCRIPT_INSTALL_DIR = $(INSTALL_ROOT)$(TCL_LIBRARY)
- # Directory in which to install the include file tcl.h:
- INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir)
- # Path to the private tcl header dir:
- PRIVATE_INCLUDE_DIR = @PRIVATE_INCLUDE_DIR@
- # Directory in which to (optionally) install the private tcl 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 tclsh:
- MAN1_INSTALL_DIR = $(MAN_INSTALL_DIR)/man1
- # Directory in which to install manual entries for Tcl's C library
- # procedures:
- MAN3_INSTALL_DIR = $(MAN_INSTALL_DIR)/man3
- # Directory in which to install manual entries for the built-in
- # Tcl commands:
- 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)
- # Package search path.
- TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
- # Libraries built with optimization switches have this additional extension
- TCL_DBGX = @TCL_DBGX@
- # warning flags
- CFLAGS_WARNING = @CFLAGS_WARNING@
- # The default switches for optimization or debugging
- CFLAGS_DEBUG = @CFLAGS_DEBUG@
- CFLAGS_OPTIMIZE = @CFLAGS_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_DEFAULT@ @CFLAGS@ -DTCL_DBGX=$(TCL_DBGX)
- # Flags to pass to the linker
- LDFLAGS_DEBUG = @LDFLAGS_DEBUG@
- LDFLAGS_OPTIMIZE = @LDFLAGS_OPTIMIZE@
- LDFLAGS = @LDFLAGS_DEFAULT@ @LDFLAGS@
- # To disable ANSI-C procedure prototypes reverse the comment characters
- # on the following lines:
- PROTO_FLAGS =
- #PROTO_FLAGS = -DNO_PROTOTYPE
- # Mathematical functions like sin and atan2 are enabled for expressions
- # by default. To disable them, reverse the comment characters on the
- # following pairs of lines:
- MATH_FLAGS =
- #MATH_FLAGS = -DTCL_NO_MATH
- MATH_LIBS = @MATH_LIBS@
- #MATH_LIBS =
- # If you use the setenv, putenv, or unsetenv procedures to modify
- # environment variables in your application and you'd like those
- # modifications to appear in the "env" Tcl variable, switch the
- # comments on the two lines below so that Tcl provides these
- # procedures instead of your standard C library.
- ENV_FLAGS =
- #ENV_FLAGS = -DTclSetEnv=setenv -DTcl_PutEnv=putenv -DTclUnsetEnv=unsetenv
- # To compile for non-UNIX systems (so that only the non-UNIX-specific
- # commands are available), reverse the comment characters on the
- # following pairs of lines. In addition, you'll have to provide your
- # own replacement for the "panic" procedure (see panic.c for what
- # the current one does).
- GENERIC_FLAGS =
- #GENERIC_FLAGS = -DTCL_GENERIC_ONLY
- UNIX_OBJS = tclUnixChan.o tclUnixEvent.o tclUnixFCmd.o
- tclUnixFile.o tclUnixPipe.o tclUnixSock.o
- tclUnixTime.o tclUnixInit.o tclUnixThrd.o
- tclUnixCompat.o
- #UNIX_OBJS =
- NOTIFY_OBJS = tclUnixNotfy.o
- #NOTIFY_OBJS =
- # To enable memory debugging reverse the comment characters on the following
- # 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.
- MEM_DEBUG_FLAGS =
- #MEM_DEBUG_FLAGS = -DTCL_MEM_DEBUG
- TCL_STUB_LIB_FILE = @TCL_STUB_LIB_FILE@
- #TCL_STUB_LIB_FILE = libtclstub.a
- # Generic stub lib name used in rules that apply to tcl and tk
- STUB_LIB_FILE = ${TCL_STUB_LIB_FILE}
- TCL_STUB_LIB_FLAG = @TCL_STUB_LIB_FLAG@
- #TCL_STUB_LIB_FLAG = -ltclstub
- # To enable compilation debugging reverse the comment characters on one
- # of the following lines or call configure with --enable-symbols=compile
- COMPILE_DEBUG_FLAGS =
- #COMPILE_DEBUG_FLAGS = -DTCL_COMPILE_DEBUG -DTCL_COMPILE_STATS
- # To compile without backward compatibility and deprecated code
- # uncomment the following
- NO_DEPRECATED_FLAGS =
- #NO_DEPRECATED_FLAGS = -DTCL_NO_DEPRECATED
- # Some versions of make, like SGI's, use the following variable to
- # determine which shell to use for executing commands:
- SHELL = /bin/sh
- # Tcl 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_STRIP_PROGRAM = -s
- INSTALL_STRIP_LIBRARY = -S -S
- INSTALL = @srcdir@/install-sh -c
- INSTALL_PROGRAM = ${INSTALL}
- INSTALL_LIBRARY = ${INSTALL}
- INSTALL_DATA = ${INSTALL} -m 644
- # 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
- # 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@
- SHLIB_CFLAGS = @SHLIB_CFLAGS@
- SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
- TCL_SHLIB_LD_EXTRAS = @TCL_SHLIB_LD_EXTRAS@
- SHLIB_SUFFIX = @SHLIB_SUFFIX@
- #SHLIB_SUFFIX =
- DLTEST_TARGETS = dltest.marker
- # 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.
- CC_SEARCH_FLAGS = @CC_SEARCH_FLAGS@
- LD_SEARCH_FLAGS = @LD_SEARCH_FLAGS@
- # The following symbol is defined to "$(DLTEST_TARGETS)" if dynamic
- # loading is available; this causes everything in the "dltest"
- # subdirectory to be built when making "tcltest. If dynamic loading
- # isn't available, configure defines this symbol to an empty string,
- # in which case the shared libraries aren't built.
- BUILD_DLTEST = @BUILD_DLTEST@
- #BUILD_DLTEST =
- TCL_LIB_FILE = @TCL_LIB_FILE@
- #TCL_LIB_FILE = libtcl.a
- # Generic lib name used in rules that apply to tcl and tk
- LIB_FILE = ${TCL_LIB_FILE}
- TCL_LIB_FLAG = @TCL_LIB_FLAG@
- #TCL_LIB_FLAG = -ltcl
- TCL_EXP_FILE = @TCL_EXP_FILE@
- TCL_BUILD_EXP_FILE = @TCL_BUILD_EXP_FILE@
- # support for embedded libraries on Darwin / Mac OS X
- DYLIB_INSTALL_DIR = ${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.
- #----------------------------------------------------------------
- COMPAT_OBJS = @LIBOBJS@
- AC_FLAGS = @DEFS@
- AR = @AR@
- RANLIB = @RANLIB@
- DTRACE = @DTRACE@
- SRC_DIR = @srcdir@
- TOP_DIR = $(SRC_DIR)/..
- GENERIC_DIR = $(TOP_DIR)/generic
- COMPAT_DIR = $(TOP_DIR)/compat
- TOOL_DIR = $(TOP_DIR)/tools
- UNIX_DIR = $(SRC_DIR)
- MAC_OSX_DIR = $(TOP_DIR)/macosx
- # Must be absolute because of the cd dltest $(DLTEST_DIR)/configure below.
- DLTEST_DIR = @TCL_SRC_DIR@/unix/dltest
- # Must be absolute to so the corresponding tcltest's tcl_library is absolute.
- TCL_BUILDTIME_LIBRARY = @TCL_SRC_DIR@/library
- CC = @CC@
- #CC = purify -best-effort @CC@ -DPURIFY
- # Flags to be passed to installManPage to control whether the manpages
- # should be compressed and linked with softlinks
- MAN_FLAGS = @MAN_FLAGS@
- #----------------------------------------------------------------
- # The information below is usually usable as is. The configure
- # script won't modify it and it only exists to make working
- # around selected rare system configurations easier.
- #----------------------------------------------------------------
- GDB = gdb
- DDD = ddd
- #----------------------------------------------------------------
- # The information below should be usable as is. The configure
- # script won't modify it and you shouldn't need to modify it
- # either.
- #----------------------------------------------------------------
- STUB_CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} -I.
- -I${GENERIC_DIR} -I${SRC_DIR} ${AC_FLAGS} ${MATH_FLAGS} ${GENERIC_FLAGS}
- ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS} ${COMPILE_DEBUG_FLAGS} ${ENV_FLAGS}
- -DTCL_SHLIB_EXT="${SHLIB_SUFFIX}" @EXTRA_CC_SWITCHES@
- CC_SWITCHES = $(STUB_CC_SWITCHES) ${NO_DEPRECATED_FLAGS}
- APP_CC_SWITCHES = $(CC_SWITCHES) @EXTRA_APP_CC_SWITCHES@
- LIBS = @DL_LIBS@ @LIBS@ $(MATH_LIBS)
- DEPEND_SWITCHES = ${CFLAGS} -I${GENERIC_DIR} -I${SRC_DIR}
- ${AC_FLAGS} ${MATH_FLAGS}
- ${GENERIC_FLAGS} ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS}
- -DTCL_SHLIB_EXT="${SHLIB_SUFFIX}" @EXTRA_CC_SWITCHES@
- TCLSH_OBJS = tclAppInit.o
- TCLTEST_OBJS = tclTestInit.o tclTest.o tclTestObj.o tclTestProcBodyObj.o
- tclThreadTest.o tclUnixTest.o
- XTTEST_OBJS = xtTestInit.o tclTest.o tclTestObj.o tclTestProcBodyObj.o
- tclThreadTest.o tclUnixTest.o tclXtNotify.o tclXtTest.o
- GENERIC_OBJS = regcomp.o regexec.o regfree.o regerror.o tclAlloc.o
- tclAsync.o tclBasic.o tclBinary.o
- tclCkalloc.o tclClock.o tclCmdAH.o tclCmdIL.o tclCmdMZ.o
- tclCompCmds.o tclCompExpr.o tclCompile.o tclDate.o tclEncoding.o
- tclEnv.o tclEvent.o tclExecute.o tclFCmd.o tclFileName.o tclGet.o
- tclHash.o tclHistory.o tclIndexObj.o tclInterp.o tclIO.o tclIOCmd.o
- tclIOGT.o tclIOSock.o tclIOUtil.o tclLink.o tclListObj.o
- tclLiteral.o tclLoad.o tclMain.o tclNamesp.o tclNotify.o
- tclObj.o tclPanic.o tclParse.o tclParseExpr.o tclPipe.o
- tclPkg.o tclPosixStr.o tclPreserve.o tclProc.o tclRegexp.o
- tclResolve.o tclResult.o tclScan.o tclStringObj.o tclThread.o
- tclThreadAlloc.o tclThreadJoin.o tclStubInit.o tclStubLib.o
- tclTimer.o tclUtf.o tclUtil.o tclVar.o
- STUB_LIB_OBJS = tclStubLib.o ${COMPAT_OBJS}
- MAC_OSX_OBJS = tclMacOSXBundle.o tclMacOSXNotify.o
- DTRACE_OBJ = tclDTrace.o
- TCL_OBJS = ${GENERIC_OBJS} ${UNIX_OBJS} ${NOTIFY_OBJS} ${COMPAT_OBJS}
- @DL_OBJS@ @PLAT_OBJS@
- OBJS = ${TCL_OBJS} @DTRACE_OBJ@
- TCL_DECLS =
- $(GENERIC_DIR)/tcl.decls
- $(GENERIC_DIR)/tclInt.decls
- GENERIC_HDRS =
- $(GENERIC_DIR)/tcl.h
- $(GENERIC_DIR)/tclDecls.h
- $(GENERIC_DIR)/tclInt.h
- $(GENERIC_DIR)/tclIntDecls.h
- $(GENERIC_DIR)/tclIntPlatDecls.h
- $(GENERIC_DIR)/tclPatch.h
- $(GENERIC_DIR)/tclPlatDecls.h
- $(GENERIC_DIR)/tclPort.h
- $(GENERIC_DIR)/tclRegexp.h
- GENERIC_SRCS =
- $(GENERIC_DIR)/regcomp.c
- $(GENERIC_DIR)/regexec.c
- $(GENERIC_DIR)/regfree.c
- $(GENERIC_DIR)/regerror.c
- $(GENERIC_DIR)/tclAlloc.c
- $(GENERIC_DIR)/tclAsync.c
- $(GENERIC_DIR)/tclBasic.c
- $(GENERIC_DIR)/tclBinary.c
- $(GENERIC_DIR)/tclCkalloc.c
- $(GENERIC_DIR)/tclClock.c
- $(GENERIC_DIR)/tclCmdAH.c
- $(GENERIC_DIR)/tclCmdIL.c
- $(GENERIC_DIR)/tclCmdMZ.c
- $(GENERIC_DIR)/tclCompCmds.c
- $(GENERIC_DIR)/tclCompExpr.c
- $(GENERIC_DIR)/tclCompile.c
- $(GENERIC_DIR)/tclDate.c
- $(GENERIC_DIR)/tclEncoding.c
- $(GENERIC_DIR)/tclEnv.c
- $(GENERIC_DIR)/tclEvent.c
- $(GENERIC_DIR)/tclExecute.c
- $(GENERIC_DIR)/tclFCmd.c
- $(GENERIC_DIR)/tclFileName.c
- $(GENERIC_DIR)/tclGet.c
- $(GENERIC_DIR)/tclHash.c
- $(GENERIC_DIR)/tclHistory.c
- $(GENERIC_DIR)/tclIndexObj.c
- $(GENERIC_DIR)/tclInterp.c
- $(GENERIC_DIR)/tclIO.c
- $(GENERIC_DIR)/tclIOCmd.c
- $(GENERIC_DIR)/tclIOGT.c
- $(GENERIC_DIR)/tclIOSock.c
- $(GENERIC_DIR)/tclIOUtil.c
- $(GENERIC_DIR)/tclLink.c
- $(GENERIC_DIR)/tclListObj.c
- $(GENERIC_DIR)/tclLiteral.c
- $(GENERIC_DIR)/tclLoad.c
- $(GENERIC_DIR)/tclMain.c
- $(GENERIC_DIR)/tclNamesp.c
- $(GENERIC_DIR)/tclNotify.c
- $(GENERIC_DIR)/tclObj.c
- $(GENERIC_DIR)/tclParse.c
- $(GENERIC_DIR)/tclParseExpr.c
- $(GENERIC_DIR)/tclPipe.c
- $(GENERIC_DIR)/tclPkg.c
- $(GENERIC_DIR)/tclPosixStr.c
- $(GENERIC_DIR)/tclPreserve.c
- $(GENERIC_DIR)/tclProc.c
- $(GENERIC_DIR)/tclRegexp.c
- $(GENERIC_DIR)/tclResolve.c
- $(GENERIC_DIR)/tclResult.c
- $(GENERIC_DIR)/tclScan.c
- $(GENERIC_DIR)/tclStubInit.c
- $(GENERIC_DIR)/tclStubLib.c
- $(GENERIC_DIR)/tclStringObj.c
- $(GENERIC_DIR)/tclTest.c
- $(GENERIC_DIR)/tclTestObj.c
- $(GENERIC_DIR)/tclTestProcBodyObj.c
- $(GENERIC_DIR)/tclThread.c
- $(GENERIC_DIR)/tclThreadAlloc.c
- $(GENERIC_DIR)/tclThreadJoin.c
- $(GENERIC_DIR)/tclTimer.c
- $(GENERIC_DIR)/tclUtil.c
- $(GENERIC_DIR)/tclVar.c
- STUB_SRCS =
- $(GENERIC_DIR)/tclStubLib.c
- UNIX_HDRS =
- $(UNIX_DIR)/tclUnixPort.h
- UNIX_SRCS =
- $(UNIX_DIR)/tclAppInit.c
- $(UNIX_DIR)/tclUnixChan.c
- $(UNIX_DIR)/tclUnixEvent.c
- $(UNIX_DIR)/tclUnixFCmd.c
- $(UNIX_DIR)/tclUnixFile.c
- $(UNIX_DIR)/tclUnixPipe.c
- $(UNIX_DIR)/tclUnixSock.c
- $(UNIX_DIR)/tclUnixTest.c
- $(UNIX_DIR)/tclUnixThrd.c
- $(UNIX_DIR)/tclUnixTime.c
- $(UNIX_DIR)/tclUnixInit.c
- $(UNIX_DIR)/tclUnixCompat.c
- NOTIFY_SRCS =
- $(UNIX_DIR)/tclUnixNotfy.c
- DL_SRCS =
- $(UNIX_DIR)/tclLoadAix.c
- $(UNIX_DIR)/tclLoadAout.c
- $(UNIX_DIR)/tclLoadDl.c
- $(UNIX_DIR)/tclLoadDl2.c
- $(UNIX_DIR)/tclLoadDld.c
- $(UNIX_DIR)/tclLoadDyld.c
- $(GENERIC_DIR)/tclLoadNone.c
- $(UNIX_DIR)/tclLoadOSF.c
- $(UNIX_DIR)/tclLoadShl.c
- MAC_OSX_SRCS =
- $(MAC_OSX_DIR)/tclMacOSXBundle.c
- $(MAC_OSX_DIR)/tclMacOSXNotify.c
- DTRACE_HDR = tclDTrace.h
- DTRACE_SRC = $(GENERIC_DIR)/tclDTrace.d
- # Note: don't include DL_SRCS or MAC_OSX_SRCS in SRCS: most of those
- # files won't compile on the current machine, and they will cause
- # problems for things like "make depend".
- SRCS = $(GENERIC_SRCS) $(UNIX_SRCS) $(NOTIFY_SRCS) $(STUB_SRCS) @PLAT_SRCS@
- all: binaries libraries doc
- binaries: ${LIB_FILE} $(STUB_LIB_FILE) $(TCL_BUILD_EXP_FILE) tclsh
- libraries:
- doc:
- # The following target is configured by autoconf to generate either
- # a shared library or non-shared library for Tcl.
- ${LIB_FILE}: ${OBJS} ${STUB_LIB_FILE}
- rm -f $@
- @MAKE_LIB@
- ${STUB_LIB_FILE}: ${STUB_LIB_OBJS}
- rm -f $@
- @MAKE_STUB_LIB@
- # Make target which outputs the list of the .o contained in the Tcl lib
- # usefull to build a single big shared library containing Tcl and other
- # extensions. used for the Tcl Plugin. -- dl
- # The dependency on OBJS is not there because we just want the list
- # of objects here, not actually building them
- tclLibObjs:
- @echo ${OBJS}
- # This targets actually build the objects needed for the lib in the above
- # case
- objs: ${OBJS}
- tclsh: ${TCLSH_OBJS} ${TCL_LIB_FILE}
- ${CC} ${CFLAGS} ${LDFLAGS} ${TCLSH_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} @EXTRA_TCLSH_LIBS@
- ${CC_SEARCH_FLAGS} -o tclsh
- # Resetting the LIB_RUNTIME_DIR below is required so that
- # the generated tcltest executable gets the build directory
- # burned into its ld search path. This keeps tcltest from
- # picking up an already installed version of the Tcl library.
- tcltest: ${TCLTEST_OBJS} ${TCL_LIB_FILE} ${BUILD_DLTEST}
- $(MAKE) tcltest-real LIB_RUNTIME_DIR=`pwd`
- tcltest-real:
- ${CC} ${CFLAGS} ${LDFLAGS} ${TCLTEST_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} @EXTRA_TCLSH_LIBS@
- ${CC_SEARCH_FLAGS} -o tcltest
- # 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.
- # 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: tcltest
- @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- ./tcltest $(TOP_DIR)/tests/all.tcl $(TESTFLAGS) $(TCLTESTARGS)
- # Useful target to launch a built tcltest with the proper path,...
- runtest: tcltest
- @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- ./tcltest
- # Useful target for running the test suite with an unwritable current
- # directory...
- ro-test: tcltest
- @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- echo 'exec chmod -w .;package require tcltest;tcltest::temporaryDirectory /tmp;source ../tests/all.tcl;exec chmod +w .' | ./tcltest
- # This target can be used to run tclsh from the build directory
- # via `make shell SCRIPT=/tmp/foo.tcl`
- shell: tclsh
- @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- ./tclsh $(SCRIPT)
- # This target can be used to run tclsh inside either gdb or insight
- gdb: tclsh
- @echo "set env @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}" > gdb.run
- @echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
- $(GDB) ./tclsh --command=gdb.run
- rm gdb.run
- # This target can be used to run tclsh inside ddd
- ddd: tclsh
- @echo "set env @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}" > gdb.run
- @echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
- $(DDD) -command=gdb.run ./tclsh
- rm gdb.run
- VALGRINDARGS=--tool=memcheck --num-callers=8 --leak-resolution=high --leak-check=yes --show-reachable=yes -v
- valgrind: tclsh tcltest
- @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- valgrind $(VALGRINDARGS) ./tcltest $(TOP_DIR)/tests/all.tcl -singleproc 1 $(TESTFLAGS) $(TCLTESTARGS)
- valgrindshell: tclsh
- @LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- valgrind $(VALGRINDARGS) ./tclsh $(SCRIPT)
- # The following target outputs the name of the top-level source directory
- # for Tcl (it is used by Tk's configure script, for example). The
- # .NO_PARALLEL line is needed to avoid problems under Sun's "pmake".
- # Note: this target is now obsolete (use the autoconf variable
- # TCL_SRC_DIR from tclConfig.sh instead).
- .NO_PARALLEL: topDirName
- topDirName:
- @cd $(TOP_DIR); pwd
- # The following target generates the file generic/tclDate.c
- # from the yacc grammar found in generic/tclGetDate.y. This is
- # only run by hand as yacc is not available in all environments.
- # The name of the .c file is different than the name of the .y file
- # so that make doesn't try to automatically regenerate the .c file.
- gendate:
- yacc -l $(GENERIC_DIR)/tclGetDate.y
- sed -e 's/yy/TclDate/g' -e '/^#include <values.h>/d'
- -e 's?SCCSID?RCS: @(#) ?'
- -e '/#ifdef __STDC__/,/#endif/d' -e '/TclDateerrlab:/d'
- -e '/TclDatenewstate:/d' -e '/#pragma/d'
- -e '/#include <inttypes.h>/d' -e 's/const /CONST /g'
- <y.tab.c >$(GENERIC_DIR)/tclDate.c
- rm y.tab.c
- # The following target generates the shared libraries in dltest/ that
- # are used for testing; they are included as part of the "tcltest"
- # target (via the BUILD_DLTEST variable) if dynamic loading is supported
- # on this platform. The Makefile in the dltest subdirectory creates
- # the dltest.marker file in this directory after a successful build.
- dltest.marker:
- cd dltest ; $(MAKE)
- INSTALL_TARGETS = install-binaries install-libraries install-doc @EXTRA_INSTALL@
- install: $(INSTALL_TARGETS)
- install-strip:
- $(MAKE) $(INSTALL_TARGETS)
- INSTALL_PROGRAM="$(INSTALL_PROGRAM) ${INSTALL_STRIP_PROGRAM}"
- INSTALL_LIBRARY="$(INSTALL_LIBRARY) ${INSTALL_STRIP_LIBRARY}"
- # 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: binaries
- @for i in $(LIB_INSTALL_DIR) $(BIN_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 $(LIB_FILE) to $(LIB_INSTALL_DIR)/"
- @@INSTALL_LIB@
- @chmod 555 $(LIB_INSTALL_DIR)/$(LIB_FILE)
- @if test "$(TCL_BUILD_EXP_FILE)" != ""; then
- echo "Installing $(TCL_EXP_FILE) to $(LIB_INSTALL_DIR)/";
- $(INSTALL_DATA) $(TCL_BUILD_EXP_FILE)
- $(LIB_INSTALL_DIR)/$(TCL_EXP_FILE);
- fi
- @echo "Installing tclsh as $(BIN_INSTALL_DIR)/tclsh$(VERSION)"
- @$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
- @echo "Installing tclConfig.sh to $(LIB_INSTALL_DIR)/"
- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.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: libraries
- @for i in $(INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR);
- do
- if [ ! -d $$i ] ; then
- echo "Making directory $$i";
- mkdir -p $$i;
- chmod 755 $$i;
- else true;
- fi;
- done;
- @for i in http2.5 http1.0 opt0.4 encoding msgcat1.3 tcltest2.2;
- do
- if [ ! -d $(SCRIPT_INSTALL_DIR)/$$i ] ; then
- echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i";
- mkdir -p $(SCRIPT_INSTALL_DIR)/$$i;
- chmod 755 $(SCRIPT_INSTALL_DIR)/$$i;
- else true;
- fi;
- done;
- @if test ! -x $(SRC_DIR)/install-sh; then
- chmod +x $(SRC_DIR)/install-sh;
- fi
- @echo "Installing header files";
- @for i in $(GENERIC_DIR)/tcl.h $(GENERIC_DIR)/tclDecls.h
- $(GENERIC_DIR)/tclPlatDecls.h;
- do
- $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR);
- done;
- @echo "Installing library files to $(SCRIPT_INSTALL_DIR)";
- @for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex
- $(UNIX_DIR)/tclAppInit.c $(UNIX_DIR)/ldAix @DTRACE_SRC@;
- do
- $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR);
- done;
- @echo "Installing library http1.0 directory";
- @for j in $(TOP_DIR)/library/http1.0/*.tcl ;
- do
- $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/http1.0;
- done;
- @echo "Installing library http2.5 directory";
- @for j in $(TOP_DIR)/library/http/*.tcl ;
- do
- $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/http2.5;
- done;
- @echo "Installing library opt0.4 directory";
- @for j in $(TOP_DIR)/library/opt/*.tcl ;
- do
- $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/opt0.4;
- done;
- @echo "Installing library msgcat1.3 directory";
- @for j in $(TOP_DIR)/library/msgcat/*.tcl ;
- do
- $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/msgcat1.3;
- done;
- @echo "Installing library tcltest2.2 directory";
- @for j in $(TOP_DIR)/library/tcltest/*.tcl ;
- do
- $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/tcltest2.2;
- done;
- @echo "Installing library encoding directory";
- @for i in $(TOP_DIR)/library/encoding/*.enc ; do
- $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/encoding;
- done;
- install-doc: doc
- @if test ! -x $(UNIX_DIR)/installManPage; then
- chmod +x $(UNIX_DIR)/installManPage;
- fi
- @for i in $(MAN_INSTALL_DIR) $(MAN1_INSTALL_DIR) $(MAN3_INSTALL_DIR) $(MANN_INSTALL_DIR) ;
- do
- if [ ! -d $$i ] ; then
- echo "Making directory $$i";
- mkdir -p $$i;
- chmod 755 $$i;
- else true;
- fi;
- done;
- @echo "Installing and cross-linking top-level (.1) docs";
- @for i in $(TOP_DIR)/doc/*.1; do
- $(UNIX_DIR)/installManPage $(MAN_FLAGS) $$i $(MAN1_INSTALL_DIR);
- done
- @echo "Installing and cross-linking C API (.3) docs";
- @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 $(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)/tclInt.h $(GENERIC_DIR)/tclIntDecls.h
- $(GENERIC_DIR)/tclIntPlatDecls.h
- $(UNIX_DIR)/tclUnixPort.h $(GENERIC_DIR)/tclMath.h;
- do
- $(INSTALL_DATA) $$i $(PRIVATE_INCLUDE_INSTALL_DIR);
- done;
- @sed -e 's#../unix/##' $(GENERIC_DIR)/tclPort.h > tclPort.h;
- $(INSTALL_DATA) tclPort.h $(PRIVATE_INCLUDE_INSTALL_DIR);
- rm -f tclPort.h
- Makefile: $(UNIX_DIR)/Makefile.in $(DLTEST_DIR)/Makefile.in
- $(SHELL) config.status
- clean:
- rm -f *.a *.o libtcl* core errs *~ #* TAGS *.E a.out
- errors tclsh tcltest lib.exp Tcl
- cd dltest ; $(MAKE) clean
- distclean: clean
- rm -rf Makefile config.status config.cache config.log tclConfig.sh
- $(PACKAGE).* prototype *.plist Tcl.framework
- cd dltest ; $(MAKE) distclean
- depend:
- makedepend -- $(DEPEND_SWITCHES) -- $(SRCS)
- # Test binaries. The rules for tclTestInit.o and xtTestInit.o are
- # complicated because they are compiled from tclAppInit.c. Can't use
- # the "-o" option because this doesn't work on some strange compilers
- # (e.g. UnixWare).
- # To enable concurrent parallel make of tclsh and tcltest resp xttest, these
- # targets have to depend on tclsh, this ensures that linking of tclsh with
- # tclAppInit.o does not execute concurrently with the renaming and recompiling
- # of that same object file in the targets below.
- tclTestInit.o: $(UNIX_DIR)/tclAppInit.c tclsh
- @if test -f tclAppInit.o ; then
- rm -f tclAppInit.sav;
- mv tclAppInit.o tclAppInit.sav;
- fi;
- $(CC) -c $(APP_CC_SWITCHES)
- -DTCL_BUILDTIME_LIBRARY=""${TCL_BUILDTIME_LIBRARY}""
- -DTCL_TEST $(UNIX_DIR)/tclAppInit.c
- rm -f tclTestInit.o
- mv tclAppInit.o tclTestInit.o
- @if test -f tclAppInit.sav ; then
- mv tclAppInit.sav tclAppInit.o;
- fi;
- xtTestInit.o: $(UNIX_DIR)/tclAppInit.c tclsh
- @if test -f tclAppInit.o ; then
- rm -f tclAppInit.sav;
- mv tclAppInit.o tclAppInit.sav;
- fi;
- $(CC) -c $(APP_CC_SWITCHES)
- -DTCL_BUILDTIME_LIBRARY=""${TCL_BUILDTIME_LIBRARY}""
- -DTCL_TEST -DTCL_XT_TEST $(UNIX_DIR)/tclAppInit.c
- rm -f xtTestInit.o
- mv tclAppInit.o xtTestInit.o
- @if test -f tclAppInit.sav ; then
- mv tclAppInit.sav tclAppInit.o;
- fi;
- # Object files used on all Unix systems:
- REGHDRS=$(GENERIC_DIR)/regex.h $(GENERIC_DIR)/regguts.h
- $(GENERIC_DIR)/regcustom.h
- regcomp.o: $(REGHDRS) $(GENERIC_DIR)/regcomp.c $(GENERIC_DIR)/regc_lex.c
- $(GENERIC_DIR)/regc_color.c $(GENERIC_DIR)/regc_locale.c
- $(GENERIC_DIR)/regc_nfa.c $(GENERIC_DIR)/regc_cvec.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/regcomp.c
- regexec.o: $(REGHDRS) $(GENERIC_DIR)/regexec.c $(GENERIC_DIR)/rege_dfa.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/regexec.c
- regfree.o: $(REGHDRS) $(GENERIC_DIR)/regfree.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/regfree.c
- regerror.o: $(REGHDRS) $(GENERIC_DIR)/regerrs.h $(GENERIC_DIR)/regerror.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/regerror.c
- tclAppInit.o: $(UNIX_DIR)/tclAppInit.c
- $(CC) -c $(APP_CC_SWITCHES) $(UNIX_DIR)/tclAppInit.c
- # On unix we want to use the normal malloc/free implementation, so we
- # specifically set the USE_TCLALLOC flag.
- tclAlloc.o: $(GENERIC_DIR)/tclAlloc.c
- $(CC) -c $(CC_SWITCHES) -DUSE_TCLALLOC=0 $(GENERIC_DIR)/tclAlloc.c
- tclAsync.o: $(GENERIC_DIR)/tclAsync.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclAsync.c
- tclBasic.o: $(GENERIC_DIR)/tclBasic.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclBasic.c
- tclBinary.o: $(GENERIC_DIR)/tclBinary.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclBinary.c
- tclCkalloc.o: $(GENERIC_DIR)/tclCkalloc.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCkalloc.c
- tclClock.o: $(GENERIC_DIR)/tclClock.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclClock.c
- tclCmdAH.o: $(GENERIC_DIR)/tclCmdAH.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCmdAH.c
- tclCmdIL.o: $(GENERIC_DIR)/tclCmdIL.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCmdIL.c
- tclCmdMZ.o: $(GENERIC_DIR)/tclCmdMZ.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCmdMZ.c
- tclDate.o: $(GENERIC_DIR)/tclDate.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclDate.c
- tclCompCmds.o: $(GENERIC_DIR)/tclCompCmds.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCompCmds.c
- tclCompExpr.o: $(GENERIC_DIR)/tclCompExpr.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCompExpr.c
- tclCompile.o: $(GENERIC_DIR)/tclCompile.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCompile.c
- tclEncoding.o: $(GENERIC_DIR)/tclEncoding.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclEncoding.c
- tclEnv.o: $(GENERIC_DIR)/tclEnv.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclEnv.c
- tclEvent.o: $(GENERIC_DIR)/tclEvent.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclEvent.c
- tclExecute.o: $(GENERIC_DIR)/tclExecute.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclExecute.c
- tclFCmd.o: $(GENERIC_DIR)/tclFCmd.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclFCmd.c
- tclFileName.o: $(GENERIC_DIR)/tclFileName.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclFileName.c
- tclGet.o: $(GENERIC_DIR)/tclGet.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclGet.c
- tclHash.o: $(GENERIC_DIR)/tclHash.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclHash.c
- tclHistory.o: $(GENERIC_DIR)/tclHistory.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclHistory.c
- tclIndexObj.o: $(GENERIC_DIR)/tclIndexObj.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIndexObj.c
- tclInterp.o: $(GENERIC_DIR)/tclInterp.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclInterp.c
- tclIO.o: $(GENERIC_DIR)/tclIO.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIO.c
- tclIOCmd.o: $(GENERIC_DIR)/tclIOCmd.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOCmd.c
- tclIOGT.o: $(GENERIC_DIR)/tclIOGT.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOGT.c
- tclIOSock.o: $(GENERIC_DIR)/tclIOSock.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOSock.c
- tclIOUtil.o: $(GENERIC_DIR)/tclIOUtil.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOUtil.c
- tclLink.o: $(GENERIC_DIR)/tclLink.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLink.c
- tclListObj.o: $(GENERIC_DIR)/tclListObj.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclListObj.c
- tclLiteral.o: $(GENERIC_DIR)/tclLiteral.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLiteral.c
- tclObj.o: $(GENERIC_DIR)/tclObj.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclObj.c
- tclLoad.o: $(GENERIC_DIR)/tclLoad.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLoad.c
- tclLoadAix.o: $(UNIX_DIR)/tclLoadAix.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadAix.c
- tclLoadAout.o: $(UNIX_DIR)/tclLoadAout.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadAout.c
- tclLoadDl.o: $(UNIX_DIR)/tclLoadDl.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDl.c
- tclLoadDl2.o: $(UNIX_DIR)/tclLoadDl2.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDl2.c
- tclLoadDld.o: $(UNIX_DIR)/tclLoadDld.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDld.c
- tclLoadDyld.o: $(UNIX_DIR)/tclLoadDyld.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDyld.c
- tclLoadNone.o: $(GENERIC_DIR)/tclLoadNone.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLoadNone.c
- tclLoadOSF.o: $(UNIX_DIR)/tclLoadOSF.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadOSF.c
- tclLoadShl.o: $(UNIX_DIR)/tclLoadShl.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadShl.c
- tclMain.o: $(GENERIC_DIR)/tclMain.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclMain.c
- tclNamesp.o: $(GENERIC_DIR)/tclNamesp.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclNamesp.c
- tclNotify.o: $(GENERIC_DIR)/tclNotify.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclNotify.c
- tclParse.o: $(GENERIC_DIR)/tclParse.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclParse.c
- tclParseExpr.o: $(GENERIC_DIR)/tclParseExpr.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclParseExpr.c
- tclPanic.o: $(GENERIC_DIR)/tclPanic.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPanic.c
- tclPipe.o: $(GENERIC_DIR)/tclPipe.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPipe.c
- tclPkg.o: $(GENERIC_DIR)/tclPkg.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPkg.c
- tclPosixStr.o: $(GENERIC_DIR)/tclPosixStr.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPosixStr.c
- tclPreserve.o: $(GENERIC_DIR)/tclPreserve.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPreserve.c
- tclProc.o: $(GENERIC_DIR)/tclProc.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclProc.c
- tclRegexp.o: $(GENERIC_DIR)/tclRegexp.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclRegexp.c
- tclResolve.o: $(GENERIC_DIR)/tclResolve.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclResolve.c
- tclResult.o: $(GENERIC_DIR)/tclResult.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclResult.c
- tclScan.o: $(GENERIC_DIR)/tclScan.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclScan.c
- tclStringObj.o: $(GENERIC_DIR)/tclStringObj.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStringObj.c
- tclStubInit.o: $(GENERIC_DIR)/tclStubInit.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStubInit.c
- tclUtil.o: $(GENERIC_DIR)/tclUtil.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclUtil.c
- tclUtf.o: $(GENERIC_DIR)/tclUtf.c $(GENERIC_DIR)/tclUniData.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclUtf.c
- tclVar.o: $(GENERIC_DIR)/tclVar.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclVar.c
- tclTest.o: $(GENERIC_DIR)/tclTest.c
- $(CC) -c $(APP_CC_SWITCHES) $(GENERIC_DIR)/tclTest.c
- tclTestObj.o: $(GENERIC_DIR)/tclTestObj.c
- $(CC) -c $(APP_CC_SWITCHES) $(GENERIC_DIR)/tclTestObj.c
- tclTestProcBodyObj.o: $(GENERIC_DIR)/tclTestProcBodyObj.c
- $(CC) -c $(APP_CC_SWITCHES) $(GENERIC_DIR)/tclTestProcBodyObj.c
- tclTimer.o: $(GENERIC_DIR)/tclTimer.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclTimer.c
- tclThread.o: $(GENERIC_DIR)/tclThread.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclThread.c
- tclThreadAlloc.o: $(GENERIC_DIR)/tclThreadAlloc.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclThreadAlloc.c
- tclThreadJoin.o: $(GENERIC_DIR)/tclThreadJoin.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclThreadJoin.c
- tclThreadTest.o: $(GENERIC_DIR)/tclThreadTest.c
- $(CC) -c $(APP_CC_SWITCHES) $(GENERIC_DIR)/tclThreadTest.c
- tclUnixChan.o: $(UNIX_DIR)/tclUnixChan.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixChan.c
- tclUnixEvent.o: $(UNIX_DIR)/tclUnixEvent.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixEvent.c
- tclUnixFCmd.o: $(UNIX_DIR)/tclUnixFCmd.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixFCmd.c
- tclUnixFile.o: $(UNIX_DIR)/tclUnixFile.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixFile.c
- tclUnixNotfy.o: $(UNIX_DIR)/tclUnixNotfy.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixNotfy.c
- tclUnixPipe.o: $(UNIX_DIR)/tclUnixPipe.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixPipe.c
- tclUnixSock.o: $(UNIX_DIR)/tclUnixSock.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixSock.c
- tclUnixTest.o: $(UNIX_DIR)/tclUnixTest.c
- $(CC) -c $(APP_CC_SWITCHES) $(UNIX_DIR)/tclUnixTest.c
- tclUnixThrd.o: $(UNIX_DIR)/tclUnixThrd.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixThrd.c
- tclUnixTime.o: $(UNIX_DIR)/tclUnixTime.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixTime.c
- tclUnixInit.o: $(UNIX_DIR)/tclUnixInit.c $(GENERIC_DIR)/tclInitScript.h tclConfig.sh
- $(CC) -c $(CC_SWITCHES) -DTCL_LIBRARY="${TCL_LIBRARY}"
- -DTCL_PACKAGE_PATH=""${TCL_PACKAGE_PATH}""
- $(UNIX_DIR)/tclUnixInit.c
- tclUnixCompat.o: $(UNIX_DIR)/tclUnixCompat.c
- $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixCompat.c
- # The following are Mac OS X only sources:
- tclMacOSXBundle.o: $(MAC_OSX_DIR)/tclMacOSXBundle.c
- $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tclMacOSXBundle.c
- tclMacOSXNotify.o: $(MAC_OSX_DIR)/tclMacOSXNotify.c
- $(CC) -c $(CC_SWITCHES) $(MAC_OSX_DIR)/tclMacOSXNotify.c
- # DTrace support
- $(TCL_OBJS): @DTRACE_HDR@
- $(DTRACE_HDR): $(DTRACE_SRC)
- $(DTRACE) -h $(DTRACE_SWITCHES) -o $@ -s $(DTRACE_SRC)
- $(DTRACE_OBJ): $(DTRACE_SRC) $(TCL_OBJS)
- $(DTRACE) -G $(DTRACE_SWITCHES) -o $@ -s $(DTRACE_SRC) $(TCL_OBJS)
- # The following targets are not completely general. They are provide
- # purely for documentation purposes so people who are interested in
- # the Xt based notifier can modify them to suit their own installation.
- xttest: ${XTTEST_OBJS} ${GENERIC_OBJS} ${UNIX_OBJS} ${COMPAT_OBJS}
- @DL_OBJS@ ${BUILD_DLTEST}
- ${CC} ${XTTEST_OBJS} ${GENERIC_OBJS} ${UNIX_OBJS} ${COMPAT_OBJS}
- @DL_OBJS@ @TCL_BUILD_LIB_SPEC@ ${LIBS}
- ${CC_SEARCH_FLAGS} -L/usr/openwin/lib -lXt -o xttest
- tclXtNotify.o: $(UNIX_DIR)/tclXtNotify.c
- $(CC) -c $(APP_CC_SWITCHES) -I/usr/openwin/include
- $(UNIX_DIR)/tclXtNotify.c
- tclXtTest.o: $(UNIX_DIR)/tclXtTest.c
- $(CC) -c $(APP_CC_SWITCHES) -I/usr/openwin/include
- $(UNIX_DIR)/tclXtTest.c
- # compat binaries, these must be compiled for use in a shared library
- # even though they may be placed in a static executable or library. Since
- # they are included in both the tcl library and the stub library, they
- # need to be relocatable.
- fixstrtod.o: $(COMPAT_DIR)/fixstrtod.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/fixstrtod.c
- opendir.o: $(COMPAT_DIR)/opendir.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/opendir.c
- memcmp.o: $(COMPAT_DIR)/memcmp.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/memcmp.c
- strncasecmp.o: $(COMPAT_DIR)/strncasecmp.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strncasecmp.c
- strstr.o: $(COMPAT_DIR)/strstr.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strstr.c
- strtod.o: $(COMPAT_DIR)/strtod.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtod.c
- strtol.o: $(COMPAT_DIR)/strtol.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtol.c
- strtoll.o: $(COMPAT_DIR)/strtoll.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtoll.c
- strtoul.o: $(COMPAT_DIR)/strtoul.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtoul.c
- strtoull.o: $(COMPAT_DIR)/strtoull.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtoull.c
- tmpnam.o: $(COMPAT_DIR)/tmpnam.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/tmpnam.c
- waitpid.o: $(COMPAT_DIR)/waitpid.c
- $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/waitpid.c
- # Stub library binaries, these must be compiled for use in a shared library
- # even though they will be placed in a static archive
- tclStubLib.o: $(GENERIC_DIR)/tclStubLib.c
- $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclStubLib.c
- .c.o:
- $(CC) -c $(CC_SWITCHES) $<
- #
- # Target to regenerate header files and stub files from the *.decls tables.
- #
- $(GENERIC_DIR)/tclStubInit.c: $(GENERIC_DIR)/tcl.decls
- $(GENERIC_DIR)/tclInt.decls
- @echo "Warning: tclStubInit.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) $(TOOL_DIR)/genStubs.tcl $(GENERIC_DIR)
- $(GENERIC_DIR)/tcl.decls $(GENERIC_DIR)/tclInt.decls
- #
- # Target to check that all exported functions have an entry in the stubs
- # tables.
- #
- checkstubs: $(TCL_LIB_FILE)
- -@for i in `nm -p $(TCL_LIB_FILE)
- | awk '$$2 ~ /^[TDBCS]$$/ { sub("^_", "", $$3); print $$3 }'
- | sort -n`; do
- match=0;
- for j in $(TCL_DECLS); do
- if [ `grep -c "$$i *(" $$j` -gt 0 ]; then
- match=1;
- fi;
- done;
- if [ $$match -eq 0 ]; then echo $$i; fi
- done
- #
- # Target to check that all public APIs which are not command
- # implementations have an entry in section three of the distributed
- # manpages.
- #
- checkdoc: $(TCL_LIB_FILE)
- -@for i in `nm -p $(TCL_LIB_FILE) | awk '$$3 ~ /Tcl_/ { print $$3 }'
- | grep -v 'Cmd$$' | sort -n`; do
- match=0;
- for j in $(TOP_DIR)/doc/*.3; do
- if [ `grep '-' $$j | grep -c $$i` -gt 0 ]; then
- match=1;
- fi;
- done;
- 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 "Tcl" prefixes are
- # exported.
- #
- checkexports: $(TCL_LIB_FILE)
- -@nm -p $(TCL_LIB_FILE)
- | awk '$$2 ~ /^[TDBCS]$$/ { sub("^_", "", $$3); print $$3 }'
- | sort -n | grep -E -v '^[Tt]cl' || true
- #
- # Target to create a Tcl RPM for Linux. Requires that you be on a Linux
- # system.
- #
- rpm: all /bin/rpm
- rm -f THIS.TCL.SPEC
- echo "%define _builddir `pwd`" > THIS.TCL.SPEC
- echo "%define _rpmdir `pwd`/RPMS" >> THIS.TCL.SPEC
- cat tcl.spec >> THIS.TCL.SPEC
- mkdir -p RPMS/i386
- rpm -bb THIS.TCL.SPEC
- mv RPMS/i386/*.rpm .
- rm -rf RPMS THIS.TCL.SPEC
- #
- # Target to create a proper Tcl 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 = tcl${VERSION}${PATCH_LEVEL}
- ZIPNAME = tcl${MAJOR_VERSION}${MINOR_VERSION}${PATCH_LEVEL}-src.zip
- DISTDIR = $(DISTROOT)/$(DISTNAME)
- dist:
- rm -rf $(DISTDIR)
- mkdir -p $(DISTDIR)/unix
- cp -p $(UNIX_DIR)/*.c $(UNIX_DIR)/*.h $(DISTDIR)/unix
- cp $(UNIX_DIR)/Makefile.in $(DISTDIR)/unix
- chmod 664 $(DISTDIR)/unix/Makefile.in
- cp $(UNIX_DIR)/configure $(UNIX_DIR)/configure.in
- $(UNIX_DIR)/tcl.m4 $(UNIX_DIR)/aclocal.m4
- $(UNIX_DIR)/tclConfig.sh.in $(UNIX_DIR)/install-sh
- $(UNIX_DIR)/README $(UNIX_DIR)/ldAix $(UNIX_DIR)/tcl.spec
- $(UNIX_DIR)/installManPage
- $(DISTDIR)/unix
- chmod 775 $(DISTDIR)/unix/configure $(DISTDIR)/unix/configure.in
- chmod 775 $(DISTDIR)/unix/ldAix
- chmod +x $(DISTDIR)/unix/install-sh
- mkdir $(DISTDIR)/generic
- cp -p $(GENERIC_DIR)/*.[cdh] $(DISTDIR)/generic
- cp -p $(GENERIC_DIR)/*.decls $(DISTDIR)/generic
- cp -p $(GENERIC_DIR)/README $(DISTDIR)/generic
- cp -p $(GENERIC_DIR)/tclGetDate.y $(DISTDIR)/generic
- cp -p $(TOP_DIR)/changes $(TOP_DIR)/ChangeLog $(TOP_DIR)/README*
- $(TOP_DIR)/ChangeLog.[12]??? $(TOP_DIR)/license.terms
- $(DISTDIR)
- mkdir $(DISTDIR)/library
- cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/library/*.tcl
- $(TOP_DIR)/library/tclIndex $(DISTDIR)/library
- for i in http1.0 http opt msgcat reg dde tcltest;
- do
- mkdir $(DISTDIR)/library/$$i ;
- cp -p $(TOP_DIR)/library/$$i/*.tcl $(DISTDIR)/library/$$i;
- done;
- mkdir $(DISTDIR)/library/encoding
- cp -p $(TOP_DIR)/library/encoding/*.enc $(DISTDIR)/library/encoding
- mkdir $(DISTDIR)/doc
- cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/doc/*.[13n]
- $(TOP_DIR)/doc/man.macros $(DISTDIR)/doc
- mkdir $(DISTDIR)/compat
- cp -p $(TOP_DIR)/license.terms $(COMPAT_DIR)/*.c
- $(COMPAT_DIR)/*.h $(COMPAT_DIR)/README
- $(DISTDIR)/compat
- mkdir $(DISTDIR)/tests
- cp -p $(TOP_DIR)/license.terms $(DISTDIR)/tests
- cp -p $(TOP_DIR)/tests/*.test $(TOP_DIR)/tests/README
- $(TOP_DIR)/tests/httpd $(TOP_DIR)/tests/*.tcl
- $(DISTDIR)/tests
- mkdir $(DISTDIR)/win
- cp $(TOP_DIR)/win/Makefile.in $(DISTDIR)/win
- cp $(TOP_DIR)/win/configure.in $(TOP_DIR)/win/configure
- $(TOP_DIR)/win/tclConfig.sh.in
- $(TOP_DIR)/win/tcl.m4 $(TOP_DIR)/win/aclocal.m4
- $(DISTDIR)/win
- cp -p $(TOP_DIR)/win/*.c $(TOP_DIR)/win/*.h
- $(TOP_DIR)/win/*.ico $(TOP_DIR)/win/*.rc
- $(DISTDIR)/win
- cp -p $(TOP_DIR)/win/*.bat $(DISTDIR)/win
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/*.bat
- cp -p $(TOP_DIR)/win/makefile.* $(DISTDIR)/win
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/makefile.*
- cp -p $(TOP_DIR)/win/rules.vc $(DISTDIR)/win
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/rules.vc
- cp -p $(TOP_DIR)/win/coffbase.txt $(DISTDIR)/win
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/coffbase.txt
- cp -p $(TOP_DIR)/win/tcl.hpj.in $(DISTDIR)/win
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/tcl.hpj.in
- cp -p $(TOP_DIR)/win/tcl.ds* $(DISTDIR)/win
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/tcl.ds*
- cp -p $(TOP_DIR)/win/README $(DISTDIR)/win
- cp -p $(TOP_DIR)/license.terms $(DISTDIR)/win
- mkdir $(DISTDIR)/mac
- cp -p $(TOP_DIR)/mac/tcl*.sea.hqx
- $(TOP_DIR)/mac/*.c $(TOP_DIR)/mac/*.h $(TOP_DIR)/mac/*.r
- $(DISTDIR)/mac
- cp -p $(TOP_DIR)/mac/porting.notes $(TOP_DIR)/mac/README $(DISTDIR)/mac
- cp -p $(TOP_DIR)/mac/*.pch $(DISTDIR)/mac
- cp -p $(TOP_DIR)/mac/*.doc $(TOP_DIR)/mac/*.html $(DISTDIR)/mac
- cp -p $(TOP_DIR)/license.terms $(DISTDIR)/mac
- mkdir $(DISTDIR)/macosx
- cp -p $(MAC_OSX_DIR)/Makefile $(MAC_OSX_DIR)/README
- $(MAC_OSX_DIR)/*.c $(MAC_OSX_DIR)/*.in
- $(DISTDIR)/macosx
- cp -p $(TOP_DIR)/license.terms $(DISTDIR)/macosx
- mkdir $(DISTDIR)/macosx/Tcl.pbproj
- cp -p $(MAC_OSX_DIR)/Tcl.pbproj/*.pbx* $(DISTDIR)/macosx/Tcl.pbproj
- mkdir $(DISTDIR)/unix/dltest
- cp -p $(UNIX_DIR)/dltest/*.c $(UNIX_DIR)/dltest/Makefile.in
- $(UNIX_DIR)/dltest/README
- $(DISTDIR)/unix/dltest
- mkdir $(DISTDIR)/tools
- cp -p $(TOOL_DIR)/Makefile.in $(TOOL_DIR)/README
- $(TOOL_DIR)/configure $(TOOL_DIR)/configure.in
- $(TOOL_DIR)/*.tcl $(TOOL_DIR)/man2tcl.c
- $(TOOL_DIR)/tcl.wse.in $(TOOL_DIR)/*.bmp
- $(TOOL_DIR)/tcl.hpj.in
- $(DISTDIR)/tools
- $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/tools/tcl.hpj.in
- $(DISTDIR)/tools/tcl.wse.in
- #
- # 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)-src.tar.gz $(DISTROOT)/$(ZIPNAME)
- cd $(DISTROOT); tar cf $(DISTNAME)-src.tar $(DISTNAME);
- gzip -9 $(DISTNAME)-src.tar; zip -qr8 $(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)-src.tar.gz $(DISTROOT)/$(ZIPNAME)
- mv $(DISTROOT)/tcl${VERSION} $(DISTROOT)/old
- mv $(DISTROOT)/$(DISTNAME) $(DISTROOT)/tcl${VERSION}
- cd $(DISTROOT); tar cf $(DISTNAME)-src.tar tcl${VERSION};
- gzip -9 $(DISTNAME)-src.tar; zip -r8 $(ZIPNAME) tcl${VERSION}
- mv $(DISTROOT)/tcl${VERSION} $(DISTROOT)/$(DISTNAME)
- mv $(DISTROOT)/old $(DISTROOT)/tcl${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.* & tk8.* up two directories from the
- # TOOL_DIR.
- #
- html: tclsh
- $(BUILD_HTML)
- @EXTRA_BUILD_HTML@
- html-tcl: tclsh
- $(BUILD_HTML) --tcl
- @EXTRA_BUILD_HTML@
- html-tk: tclsh
- $(BUILD_HTML) --tk
- @EXTRA_BUILD_HTML@
- BUILD_HTML =
- @@LD_LIBRARY_PATH_VAR@=`pwd`:$${@LD_LIBRARY_PATH_VAR@}; export @LD_LIBRARY_PATH_VAR@;
- TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY;
- ./tclsh $(TOOL_DIR)/tcltk-man2html.tcl --htmldir=$(HTML_INSTALL_DIR)
- --srcdir=$(TOP_DIR)/.. $(BUILD_HTML_FLAGS)
- #
- # 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 group's tool workspace.
- #
- macdist: dist machtml
- machtml:
- rm -f $(DISTDIR)/mac/tclMacProjects.sea.hqx
- rm -rf $(DISTDIR)/doc
- $(TCL_EXE) $(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=SCRPtcl
- 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/$(PACKAGE)/$(VERSION)
- --exec_prefix=/opt/$(PACKAGE)/$(VERSION)/`arch`
- --enable-shared
- mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)
- mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`
- #
- # Build and install the architecture independent files in the dist directory.
- #
- package-common:
- cd $(DISTDIR)/unix/`arch`;
- $(MAKE);
- $(MAKE) prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)
- exec_prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`
- install-libraries install-man
- mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin
- sed -e "s/TCLVERSION/$(VERSION)/g" < $(UNIX_DIR)/tclsh.sh
- > $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin/tclsh$(VERSION)
- chmod 755 $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin/tclsh$(VERSION)
- #
- # Build and install the architecture specific files in the dist directory.
- #
- package-binaries:
- cd $(DISTDIR)/unix/`arch`;
- $(MAKE);
- $(MAKE) install-binaries prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)
- exec_prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`
- #
- # Generate a package from the installed files in the dist directory for the
- # current architecture.
- #
- package-generate:
- pkgproto $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin=bin
- $(DISTDIR)/$(PACKAGE)/$(VERSION)/include=include
- $(DISTDIR)/$(PACKAGE)/$(VERSION)/lib=lib
- $(DISTDIR)/$(PACKAGE)/$(VERSION)/man=man
- $(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`=`arch`
- | $(TCL_EXE) $(UNIX_DIR)/mkProto.tcl
- $(VERSION) $(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.