summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog28
-rw-r--r--generic/tcl.h5
-rw-r--r--macosx/Makefile280
-rw-r--r--macosx/README120
-rw-r--r--macosx/Tcl.pbproj/jingham.pbxuser440
-rw-r--r--macosx/Tcl.pbproj/project.pbxproj355
-rwxr-xr-xtools/tcltk-man2html.tcl63
-rw-r--r--unix/Makefile.in9
8 files changed, 496 insertions, 804 deletions
diff --git a/ChangeLog b/ChangeLog
index e6e44ae..53fdacc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,31 @@
+2003-07-15 Daniel Steffen <das@users.sourceforge.net>
+
+ * macosx/Makefile: Rewrote buildsystem for Mac OS X framework build
+ to be purely make driven; in order to become independent of Apple's
+ closed-source IDE and build tool. The changes are intended to be
+ transparent to the Makefile user, all existing make targets and
+ cmd line variable overrides should continue to work.
+ Changed build to only include tcl specific html help in Tcl.framework,
+ the tk specific html help is now included in Tk.framework.
+
+ * macosx/Tcl.pbproj/project.pbxproj:
+ * macosx/Tcl.pbproj/jingham.pbxuser: Changed to purely call through
+ to the make driven buildsystem; Tcl.framework is no longer assembled
+ by ProjectBuilder.
+ Set default SYMROOT in target options to simplify setting up PB
+ (manually setting common build folder for tcl & tk no longer needed).
+
+ * tools/tcltk-man2html.tcl: Added options to allow building only the
+ tcl or tk html help files; the default behaviour with none of the new
+ options is to build both, as before.
+
+ * unix/Makefile.in: Added targets for building only the tcl or tk help.
+
+ * macosx/README (new): Tcl specific excerpts of tk/macosx/README.
+
+ * generic/tcl.h: Updated reminder comment about editing
+ macosx/Tcl.pbproj/project.pbxproj when version number changes.
+
2003-07-11 Donal K. Fellows <fellowsd@cs.man.ac.uk>
* tests/binary.test (binary-46.*): Tests to help enforce the
diff --git a/generic/tcl.h b/generic/tcl.h
index f3d9dab..7d671e0 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -13,7 +13,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tcl.h,v 1.153.2.3 2003/05/15 18:59:37 hobbs Exp $
+ * RCS: @(#) $Id: tcl.h,v 1.153.2.4 2003/07/15 01:15:50 das Exp $
*/
#ifndef _TCL
@@ -46,8 +46,7 @@ extern "C" {
* win/makefile.vc (not patchlevel) 2 LOC
* README (sections 0 and 2)
* mac/README (2 LOC, not patchlevel)
- * macosx/Tcl.pbproj/project.pbxproj
- * (7 LOC total, 2 LOC patch)
+ * macosx/Tcl.pbproj/project.pbxproj (not patchlevel) 2 LOC
* win/README.binary (sections 0-4)
* win/README (not patchlevel) (sections 0 and 2)
* unix/tcl.spec (2 LOC Major/Minor, 1 LOC patch)
diff --git a/macosx/Makefile b/macosx/Makefile
index fec1e4b..3ae458a 100644
--- a/macosx/Makefile
+++ b/macosx/Makefile
@@ -1,87 +1,221 @@
-################################################################################
+########################################################################################################
#
-# Simple makefile for building on Mac OS X with the
-# Project Builder command line tool 'pbxbuild'
+# Makefile to build Tcl on Mac OS X packaged as a Framework
+# uses standard unix build system in tcl/unix
#
-# RCS: @(#) $Id: Makefile,v 1.5 2003/02/19 16:43:29 das Exp $
+# RCS: @(#) $Id: Makefile,v 1.5.2.1 2003/07/15 01:15:51 das Exp $
#
-################################################################################
+########################################################################################################
-INSTALL_ROOT ?=
+#-------------------------------------------------------------------------------------------------------
+# customizable settings
-BUILD_DIR ?= ${CURDIR}/../../build
+DESTDIR ?=
+INSTALL_ROOT ?= ${DESTDIR}
-TARGET = Tcl
+BUILD_DIR ?= ${CURDIR}/../../build
+SYMROOT ?= ${BUILD_DIR}/${PROJECT}
+OBJROOT ?= ${SYMROOT}
-DEVBUILDSTYLE = Development
-DEPBUILDSTYLE = Deployment
+EXTRA_CONFIGURE_ARGS ?=
+EXTRA_MAKE_ARGS ?=
-PBXBUILD = /usr/bin/pbxbuild
+INSTALL_PATH ?= /Library/Frameworks
+PREFIX ?= /usr
+BINDIR ?= ${PREFIX}/bin
-BUILD = ${PBXBUILD} SYMROOT="${BUILD_DIR}" -target "${TARGET}"
+TCL_PACKAGE_PATH ?= "~/Library/Tcl /Library/Tcl /Network/Library/Tcl /System/Library/Tcl \
+ ~/Library/Frameworks /Library/Frameworks /Network/Library/Frameworks \
+ /System/Library/Frameworks"
-DEVBUILD = ${BUILD} -buildstyle "${DEVBUILDSTYLE}"
-DEPBUILD = ${BUILD} -buildstyle "${DEPBUILDSTYLE}"
+#-------------------------------------------------------------------------------------------------------
+# meta targets
-INSTALLOPTS = INSTALL_ROOT="${INSTALL_ROOT}"
+meta := all install embedded install-embedded clean distclean
-EMBEDDEDOPTS = EMBEDDED_BUILD=1
+styles := develop deploy
-################################################################################
+all := ${styles}
+all : ${all}
-all: develop deploy
-
-install: install-develop install-deploy
-
-embedded: embedded-deploy
-
-install-embedded: install-embedded-deploy
-
-clean: clean-develop clean-deploy
-
-################################################################################
-
-develop:
- ${DEVBUILD}
-
-deploy:
- ${DEPBUILD}
-
-install-develop:
- ${DEVBUILD} install ${INSTALLOPTS}
-
-install-deploy:
- ${DEPBUILD} install ${INSTALLOPTS}
-
-embedded-develop:
- ${DEVBUILD} ${EMBEDDEDOPTS}
-
-embedded-deploy:
- ${DEPBUILD} ${EMBEDDEDOPTS}
-
-install-embedded-develop:
- ${DEVBUILD} install ${INSTALLOPTS} ${EMBEDDEDOPTS}
-
-install-embedded-deploy:
- ${DEPBUILD} install ${INSTALLOPTS} ${EMBEDDEDOPTS}
-
-clean-develop:
- ${DEVBUILD} clean
-
-clean-deploy:
- ${DEPBUILD} clean
-
-################################################################################
-
-forceRelink:
- @-cd ${BUILD_DIR}; \
- rm -rf Tcl.framework tclsh8.4 \
- Development.build/Tcl.build/Tcl Deployment.build/Tcl.build/Tcl
-
-################################################################################
-
-.PHONY: all install embedded clean develop deploy install-develop install-deploy \
-embedded-develop embedded-deploy install-embedded-develop install-embedded-deploy \
-clean-develop clean-deploy forceRelink \
-
-################################################################################
+install := ${styles:%=install-%}
+install : ${install}
+install-%: action := install-
+
+embedded := ${styles:%=embedded-%}
+embedded : embedded-deploy
+install-embedded := $(embedded:%=install-%)
+install-embedded : install-embedded-deploy
+
+clean := ${styles:%=clean-%}
+clean : ${clean}
+clean-%: action := clean-
+distclean := ${styles:%=distclean-%}
+distclean : ${distclean}
+distclean-%: action := distclean-
+
+targets := $(foreach v,${meta},${$v})
+
+#-------------------------------------------------------------------------------------------------------
+# build styles
+
+develop_make_args := BUILD_STYLE=Development CONFIGURE_ARGS=--enable-symbols
+deploy_make_args := BUILD_STYLE=Deployment \
+ MAKE_ARGS=INSTALL_PROGRAM="'$$\$${INSTALL} $$\$${INSTALL_STRIP_PROGRAM}'" \
+ MAKE_ARGS+=INSTALL_LIBRARY="'$$\$${INSTALL} $$\$${INSTALL_STRIP_LIBRARY}'"
+embedded_make_args := EMBEDDED_BUILD=1
+install_make_args := INSTALL_BUILD=1
+
+$(targets):
+ ${MAKE} ${action}${PROJECT} \
+ $(foreach s,${styles} embedded install,$(if $(findstring $s,$@),${${s}_make_args}))
+
+#-------------------------------------------------------------------------------------------------------
+# project specific settings
+
+PROJECT := tcl
+PRODUCT_NAME := Tcl
+
+UNIX_DIR := ${CURDIR}/../unix
+GENERIC_DIR := ${CURDIR}/../generic
+
+PRODUCT_VERSION := $(shell eval $$(grep '^TCL_VERSION=' ${UNIX_DIR}/configure.in); \
+ echo "$${TCL_VERSION}")
+PRODUCT_LONGVERSION := $(shell eval $$(grep '^TCL_PATCH_LEVEL=' ${UNIX_DIR}/configure.in); \
+ echo "${PRODUCT_VERSION}$${TCL_PATCH_LEVEL}")
+
+PRIVATE_HEADERS := tclInt.h tclIntDecls.h tclIntPlatDecls.h tclMath.h
+TARGETS := tclsh tcltest
+TCLSH := tclsh${PRODUCT_VERSION}
+
+DYLIB_INSTALL_PATH ?= ${INSTALL_PATH}
+
+TCL_LIBRARY := @TCL_IN_FRAMEWORK@
+LIBDIR := ${INSTALL_PATH}/${PRODUCT_NAME}.framework/Versions/${PRODUCT_VERSION}
+DYLIB_INSTALL_DIR := ${DYLIB_INSTALL_PATH}/${PRODUCT_NAME}.framework/Versions/${PRODUCT_VERSION}
+INCLUDEDIR := ${LIBDIR}/Headers
+PRIVATEINCLUDEDIR := ${LIBDIR}/PrivateHeaders
+SCRIPTDIR := ${LIBDIR}/Resources/Scripts
+DOCDIR := ${LIBDIR}/Resources/English.lproj/Documentation/Reference
+INFOPLIST := ${LIBDIR}/Resources/Info.plist
+
+BUILD_STYLE =
+OBJ_DIR = ${OBJROOT}/${BUILD_STYLE}
+
+${PROJECT}: override INSTALL_ROOT = ${OBJ_DIR}/
+
+MAKE_VARS := INSTALL_ROOT TCL_PACKAGE_PATH TCL_LIBRARY DYLIB_INSTALL_DIR
+MAKE_ARGS_V = $(foreach v,${MAKE_VARS},$v=${$v})
+export CPPROG := cp -p
+
+#-------------------------------------------------------------------------------------------------------
+# build rules
+
+${PROJECT}: install-${PROJECT}
+
+${OBJ_DIR}/Makefile: ${UNIX_DIR}/Makefile.in ${UNIX_DIR}/configure
+ mkdir -p ${OBJ_DIR} && cd ${OBJ_DIR} && ${UNIX_DIR}/configure \
+ --prefix=${PREFIX} --bindir=${BINDIR} --libdir=${LIBDIR} --includedir=${INCLUDEDIR} \
+ --enable-threads --enable-framework ${CONFIGURE_ARGS} ${EXTRA_CONFIGURE_ARGS}
+ cd ${OBJ_DIR} && mkdir -p ${PRODUCT_NAME}.framework && \
+ ln -fs ../${PRODUCT_NAME} ${PRODUCT_NAME}.framework/${PRODUCT_NAME}
+
+build-${PROJECT}: ${OBJ_DIR}/Makefile
+ ${MAKE} -C ${OBJ_DIR} ${TARGETS} ${MAKE_ARGS_V} ${MAKE_ARGS} ${EXTRA_MAKE_ARGS}
+# symolic link hackery to trick
+# 'make install INSTALL_ROOT=${OBJ_DIR}'
+# into building Tcl.framework and tclsh in ${SYMROOT}
+ cd ${OBJ_DIR}; mkdir -p $(dir ./${INSTALL_PATH}) $(dir ./${BINDIR}); \
+ rm -f ./${INSTALL_PATH}; ln -fs ${SYMROOT} ./${INSTALL_PATH}; \
+ rm -f ./${BINDIR}; ln -fs ${SYMROOT} ./${BINDIR}; \
+ ln -fs ${OBJ_DIR}/tcltest ${SYMROOT}
+
+clean-${PROJECT}:
+ ${MAKE} -C ${OBJ_DIR} clean
+
+distclean-${PROJECT}:
+ ${MAKE} -C ${OBJ_DIR} distclean
+ rm -rf ${OBJ_DIR} ${PRODUCT_NAME}.framework tclsh${PRODUCT_VERSION} tcltest
+
+install-${PROJECT}: build-${PROJECT}
+# install to ${INSTALL_ROOT} with optional stripping
+ ${MAKE} -C ${OBJ_DIR} install-binaries install-libraries \
+ SCRIPT_INSTALL_DIR=${INSTALL_ROOT}${SCRIPTDIR} ${MAKE_ARGS_V} ${MAKE_ARGS} ${EXTRA_MAKE_ARGS}
+ mkdir -p ${INSTALL_ROOT}${PRIVATEINCLUDEDIR} && \
+ cd ${GENERIC_DIR} && ${CPPROG} ${PRIVATE_HEADERS} ${INSTALL_ROOT}${PRIVATEINCLUDEDIR}
+ifeq (${BUILD_STYLE},Development)
+# keep copy of debug library around, so that
+# Deployment build can be installed on top
+# of Development build without overwriting
+# the debug library
+ cd ${INSTALL_ROOT}${LIBDIR} && ln -f "${PRODUCT_NAME}" "${PRODUCT_NAME}_debug"
+endif
+# fixup Framework structure
+ cd ${INSTALL_ROOT}${LIBDIR}/.. && \
+ rm -f Current && ln -fs ${PRODUCT_VERSION} Current && \
+ cd .. && ln -fs Versions/Current/* . && \
+ ln -fs Versions/${PRODUCT_VERSION}/lib*stub* .
+ifeq (${INSTALL_BUILD},1)
+ifeq (${EMBEDDED_BUILD},1)
+# if we are embedding frameworks, don't install tclsh
+ rm -f "${INSTALL_ROOT}/${BINDIR}/${TCLSH}"
+ -rmdir -p "${INSTALL_ROOT}/${BINDIR}" 2>&-
+else
+# redo prebinding
+ cd ${INSTALL_ROOT}; \
+ if [ ! -d usr/lib ]; then mkdir -p usr; ln -fs /usr/lib usr/; RM_USRLIB=1; fi; \
+ if [ ! -d System ]; then ln -fs /System .; RM_SYSTEM=1; fi; \
+ redo_prebinding -r . "./${BINDIR}/${TCLSH}"; \
+ if [ -n "$${RM_USRLIB:-}" ]; then rm -f usr/lib; rmdir -p usr 2>&-; fi; \
+ if [ -n "$${RM_SYSTEM:-}" ]; then rm -f System; fi
+# install tclsh symbolic link
+ mkdir -p ${INSTALL_ROOT}/usr/bin && \
+ ln -fs ${TCLSH} ${INSTALL_ROOT}/${BINDIR}/tclsh
+ifeq (${BUILD_STYLE},Deployment)
+# build html documentation
+ export DYLD_FRAMEWORK_PATH=${SYMROOT} && \
+ ${MAKE} -C ${OBJ_DIR} html-tcl \
+ DISTDIR=${INSTALL_ROOT}${DOCDIR} TCL_EXE=${SYMROOT}/${TCLSH} && \
+ cd ${INSTALL_ROOT}${DOCDIR} && ln -fs contents.htm html/${PRODUCT_NAME}TOC.html && \
+ rm -fr "${PRODUCT_NAME}" && mv -f html "${PRODUCT_NAME}"
+endif
+endif
+endif
+# write Info.plist file
+ @printf > ${INSTALL_ROOT}${INFOPLIST} '\
+ <?xml version="1.0" encoding="UTF-8"?>\n\
+ <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"\
+ "http://www.apple.com/DTDs/PropertyList-1.0.dtd">\n\
+ <plist version="1.0">\n\
+ <dict>\n\
+ <key>CFBundleDevelopmentRegion</key>\n\
+ <string>English</string>\n\
+ <key>CFBundleExecutable</key>\n\
+ <string>Tcl</string>\n\
+ <key>CFBundleGetInfoString</key>\n\
+ <string>Tcl Library ${PRODUCT_VERSION}, Copyright © 2003 Tcl Core Team.\n\
+ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright\
+ © 2001-2002, Apple Computer, Inc.</string>\n\
+ <key>CFBundleIdentifier</key>\n\
+ <string>com.tcltk.tcllibrary</string>\n\
+ <key>CFBundleInfoDictionaryVersion</key>\n\
+ <string>6.0</string>\n\
+ <key>CFBundleName</key>\n\
+ <string>Tcl Library ${PRODUCT_VERSION}</string>\n\
+ <key>CFBundlePackageType</key>\n\
+ <string>FMWK</string>\n\
+ <key>CFBundleShortVersionString</key>\n\
+ <string>${PRODUCT_LONGVERSION}</string>\n\
+ <key>CFBundleSignature</key>\n\
+ <string>Tcl </string>\n\
+ <key>CFBundleVersion</key>\n\
+ <string>${PRODUCT_LONGVERSION}</string>\n\
+ </dict>\n\
+ </plist>\n'
+
+#-------------------------------------------------------------------------------------------------------
+
+.PHONY: ${meta} ${targets} ${PROJECT} build-${PROJECT} install-${PROJECT} \
+ clean-${PROJECT} distclean-${PROJECT}
+
+#-------------------------------------------------------------------------------------------------------
diff --git a/macosx/README b/macosx/README
new file mode 100644
index 0000000..ced6d99
--- /dev/null
+++ b/macosx/README
@@ -0,0 +1,120 @@
+Tcl MacOSX README
+-----------------
+
+RCS: @(#) $Id: README,v 1.1.2.1 2003/07/15 01:15:51 das Exp $
+
+This is the README file for the Mac OS X native version of Tcl (framework build).
+
+
+1. General
+----------
+
+- The tcl-mac mailing list on sourceforge is the canonical place for questions
+specific to Tcl & Tk on Mac OS X:
+ http://lists.sourceforge.net/lists/listinfo/tcl-mac
+(this page also has a link to searchable archives of the list, please check them
+before asking on the list, many questions have already been answered).
+
+- For general tcl/tk questions, the newsgroup comp.lang.tcl is your best bet,
+but also check the Tcl'ers Wiki for a wealth of information:
+ http://wiki.tcl.tk/
+
+- The wiki has a page listing known bugs in Mac OS X Tcl/Tk (and other tips)
+ http://wiki.tcl.tk/MacOS%20X
+as well as a page with info on building Tcl/Tk on Mac OS X
+ http://wiki.tcl.tk/Steps%20to%20build%20Tcl/Tk%208.4.0%20on%20MacOS%20X
+
+- You should report bugs to the sourceforge bug trackers as usual:
+ Tcl: https://sourceforge.net/tracker/?func=add&group_id=10894&atid=110894
+ Tk: https://sourceforge.net/tracker/?func=add&group_id=12997&atid=112997
+please make sure that your report Tk specific bugs to the tktoolkit bug
+tracker and not the tcl one.
+
+
+2. Using Tcl on MacOSX
+----------------------
+
+- Mac OS X 10.1 (or higher) is required to run Tcl on MacOSX.
+
+- Tcl built on Mac OS X 10.2 or higher will not run on 10.1 due to missing
+symbols in libSystem, however Tcl built on 10.1 will run on 10.2 (but without
+prebinding and other optimizations).
+
+- Tcl extensions will be found in any of:
+ $HOME/Library/Tcl /Library/Tcl /Network/Library/Tcl /System/Library/Tcl
+ $HOME/Library/Frameworks /Library/Frameworks /Network/Library/Frameworks
+ /System/Library/Frameworks (searched in that order).
+Given a potential package directory $pkg, Tcl on OSX checks for the file
+$pkg/Resources/Scripts/pkgIndex.tcl as well as the usual $pkg/pkgIndex.tcl.
+This allows building extensions as frameworks with all script files contained
+in the Resources/Scripts directory of the framework.
+
+- The Tcl framework contains documentation in html format in the
+standard location for frameworks:
+ Tcl.framework/Resources/English.lproj/Documentation/Reference/Tcl
+No manpages are installed by default.
+
+- the framework Tcl.framework can be placed in any of the system's standard
+framework directories:
+ $HOME/Library/Frameworks /Library/Frameworks
+ /Network/Library/Frameworks /System/Library/Frameworks
+and /usr/bin/tclsh will work.
+
+- the format of binary extensions expected by [load] is that of ordinary shared
+libraries (.dylib) and not MachO bundles, at present loading of MachO bundles is
+not supported.
+
+
+3. Building Tcl.framework
+-------------------------
+
+- Mac OS X 10.1.5 (or higher) is required to build Tcl on MacOSX.
+
+- Apple's Developer Tools CD needs to be installed (the version matching your OS
+release, but no earlier than April 2002). This CD should have come with Mac OS X
+retail or should be present as a disk image on new macs that came with OSX
+preinstalled. It can also be downloaded from http://connect.apple.com (after you
+register for free ADC membership).
+
+- Tcl is built as a Mac OS X framework via the Makefile in tcl/macosx, but can
+also be built from Apple's ProjectBuilder IDE using the Tcl.pbproj project (which
+calls through to the Makefile).
+
+- Unpack the tcl source release archive.
+
+- The following instructions assume the tcl source tree is named "tcl${ver}",
+where ${ver} is a shell variable containing the tcl version number (for
+example '8.4.2').
+Setup the shell variable as follows:
+ set ver="8.4.2" ;: if your shell is csh
+ ver="8.4.2" ;: if your shell is sh
+The source tree will be named this way only if you are building from a release
+archive, if you are building from CVS, the version numbers will be missing; so
+set ${ver} to the empty string instead:
+ set ver="" ;: if your shell is csh
+ ver="" ;: if your shell is sh
+
+- If you're only interested in _building_ Tcl.framework and don't plan on doing
+development with the ProjectBuilder projects, using the Makefile is easiest.
+The following steps will build Tcl from the Terminal, assuming you are
+located in the directory containing the tcl source tree:
+ make -C tcl${ver}/macosx
+and the following will then install Tcl onto the root volume (admin password
+required):
+ sudo make -C tcl${ver}/macosx install
+if you don't have the admin password, you can install into your home directory,
+instead by passing an INSTALL_ROOT argument to make:
+ make -C tcl${ver}/macosx install INSTALL_ROOT="${HOME}/"
+
+- The default Makefile targets will build _both_ debug and optimized versions of
+the Tcl framework with the standard convention of naming the debug
+library Tcl.framework/Tcl_debug.
+This allows you to dynamically link to the debug libraries at runtime by setting
+ setenv DYLD_IMAGE_SUFFIX _debug
+(c.f. man dyld for more details)
+
+If you only want to build and install the debug or optimized build, use the
+'develop' or 'deploy' target variants of the Makefiles, respectively.
+For example, to build and install only the optimized versions:
+ make -C tcl${ver}/macosx deploy
+ sudo make -C tcl${ver}/macosx install-deploy
diff --git a/macosx/Tcl.pbproj/jingham.pbxuser b/macosx/Tcl.pbproj/jingham.pbxuser
index d914578..10f0b57 100644
--- a/macosx/Tcl.pbproj/jingham.pbxuser
+++ b/macosx/Tcl.pbproj/jingham.pbxuser
@@ -1,405 +1,79 @@
// !$*UTF8*$!
{
- 005751AA02FB00930AC916F0 = {
- fRef = 005751AB02FB00930AC916F0;
- isa = PBXTextBookmark;
- name = "DefaultsDoc.rtf: 30";
- rLen = 32;
- rLoc = 2777;
- rType = 0;
- vrLen = 1334;
- vrLoc = 2136;
- };
- 005751AB02FB00930AC916F0 = {
- isa = PBXFileReference;
- name = DefaultsDoc.rtf;
- path = "/Developer/Applications/Project Builder.app/Contents/Resources/DefaultsDoc.rtf";
- refType = 0;
- };
00E2F845016E82EB0ACA28DC = {
activeBuildStyle = 00E2F847016E82EB0ACA28DC;
- activeTarget = F50DC359017027D801DC9062;
- addToTargets = (
- 00E2F84C016E8B780ACA28DC,
- );
+ activeExecutable = F9A61CCE04C2B5A8006F5A0B;
+ activeTarget = 00E2F84C016E8B780ACA28DC;
breakpoints = (
);
+ executables = (
+ F9A61CCE04C2B5A8006F5A0B,
+ F973FC3204852E75006F146B,
+ );
perUserDictionary = {
- PBXPerProjectTemplateStateSaveDate = 49920633;
- "PBXTemplateGeometry-F5314676015831810DCA290F" = {
- ContentSize = "{789, 551}";
- LeftSlideOut = {
- Collapsed = NO;
- Frame = "{{0, 23}, {789, 528}}";
- Split0 = {
- ActiveTab = 2;
- Collapsed = NO;
- Frame = "{{0, 0}, {789, 528}}";
- Split0 = {
- Frame = "{{0, 204}, {789, 324}}";
- };
- SplitCount = 1;
- Tab0 = {
- Debugger = {
- Collapsed = NO;
- Frame = "{{0, 0}, {952, 321}}";
- Split0 = {
- Frame = "{{0, 24}, {952, 297}}";
- Split0 = {
- Frame = "{{0, 0}, {468, 297}}";
- };
- Split1 = {
- DebugVariablesTableConfiguration = (
- Name,
- 123,
- Value,
- 85,
- Summary,
- 241.123,
- );
- Frame = "{{477, 0}, {475, 297}}";
- };
- SplitCount = 2;
- };
- SplitCount = 1;
- Tab0 = {
- Frame = "{{0, 0}, {100, 50}}";
- };
- Tab1 = {
- Frame = "{{0, 0}, {100, 50}}";
- };
- TabCount = 2;
- TabsVisible = YES;
- };
- Frame = "{{0, 0}, {952, 321}}";
- LauncherConfigVersion = 7;
- };
- Tab1 = {
- Frame = "{{0, 0}, {781, 452}}";
- LauncherConfigVersion = 3;
- Runner = {
- Frame = "{{0, 0}, {781, 452}}";
- };
- };
- Tab2 = {
- BuildMessageFrame = "{{0, 0}, {791, 191}}";
- BuildTranscriptFrame = "{{0, 200}, {791, 0}}";
- Frame = "{{0, 0}, {789, 198}}";
- };
- Tab3 = {
- Frame = "{{0, 0}, {612, 295}}";
- };
- TabCount = 4;
- TabsVisible = NO;
- };
- SplitCount = 1;
- Tab0 = {
- Frame = "{{0, 0}, {300, 533}}";
- GroupTreeTableConfiguration = (
- TargetStatusColumn,
- 18,
- MainColumn,
- 267,
- );
- };
- Tab1 = {
- ClassesFrame = "{{0, 0}, {280, 398}}";
- ClassesTreeTableConfiguration = (
- PBXBookColumnIdentifier,
- 20,
- PBXClassColumnIdentifier,
- 237,
- );
- Frame = "{{0, 0}, {278, 659}}";
- MembersFrame = "{{0, 407}, {280, 252}}";
- MembersTreeTableConfiguration = (
- PBXBookColumnIdentifier,
- 20,
- PBXMethodColumnIdentifier,
- 236,
- );
- };
- Tab2 = {
- Frame = "{{0, 0}, {200, 100}}";
- };
- Tab3 = {
- Frame = "{{0, 0}, {200, 100}}";
- TargetTableConfiguration = (
- ActiveObject,
- 16,
- ObjectNames,
- 202.296,
- );
- };
- Tab4 = {
- BreakpointsTreeTableConfiguration = (
- breakpointColumn,
- 197,
- enabledColumn,
- 31,
- );
- Frame = "{{0, 0}, {250, 100}}";
- };
- TabCount = 5;
- TabsVisible = NO;
- };
- StatusViewVisible = YES;
- Template = F5314676015831810DCA290F;
- ToolbarVisible = YES;
- WindowLocation = "{7, 385}";
- };
- PBXWorkspaceContents = (
- {
- LeftSlideOut = {
- Split0 = {
- Split0 = {
- NavContent0 = {
- bookmark = 005751AA02FB00930AC916F0;
- history = (
- F5BFE56402F8B7A901DC9062,
- F5BFE56702F8B7A901DC9062,
- 00F4D9CE02F9BA490AC916F0,
- );
- prevStack = (
- F5BFE56A02F8B7A901DC9062,
- );
- };
- NavCount = 1;
- NavGeometry0 = {
- Frame = "{{0, 0}, {571, 548}}";
- NavBarVisible = YES;
- };
- };
- SplitCount = 1;
- Tab0 = {
- Debugger = {
- Split0 = {
- SplitCount = 2;
- };
- SplitCount = 1;
- TabCount = 2;
- };
- LauncherConfigVersion = 7;
- };
- Tab1 = {
- LauncherConfigVersion = 3;
- Runner = {
- };
- };
- TabCount = 4;
- };
- SplitCount = 1;
- Tab1 = {
- OptionsSetName = "Default Options";
- };
- TabCount = 5;
- };
- },
- );
- PBXWorkspaceGeometries = (
- {
- ContentSize = "{855, 571}";
- LeftSlideOut = {
- ActiveTab = 0;
- Collapsed = NO;
- Frame = "{{0, 23}, {855, 548}}";
- Split0 = {
- Collapsed = NO;
- Frame = "{{284, 0}, {571, 548}}";
- Split0 = {
- Frame = "{{0, 0}, {571, 548}}";
- };
- SplitCount = 1;
- Tab0 = {
- Debugger = {
- Collapsed = NO;
- Frame = "{{0, 0}, {681, 289}}";
- Split0 = {
- Frame = "{{0, 24}, {681, 265}}";
- Split0 = {
- Frame = "{{0, 0}, {333, 265}}";
- };
- Split1 = {
- DebugVariablesTableConfiguration = (
- Name,
- 82.80298,
- Value,
- 104.074,
- Summary,
- 126.123,
- );
- Frame = "{{342, 0}, {339, 265}}";
- };
- SplitCount = 2;
- };
- SplitCount = 1;
- Tab0 = {
- Frame = "{{0, 0}, {100, 50}}";
- };
- Tab1 = {
- Frame = "{{0, 0}, {100, 50}}";
- };
- TabCount = 2;
- TabsVisible = YES;
- };
- Frame = "{{0, 0}, {681, 289}}";
- LauncherConfigVersion = 7;
- };
- Tab1 = {
- Frame = "{{0, 0}, {681, 120}}";
- LauncherConfigVersion = 3;
- Runner = {
- Frame = "{{0, 0}, {681, 120}}";
- };
- };
- Tab2 = {
- BuildMessageFrame = "{{0, 0}, {683, 127}}";
- BuildTranscriptFrame = "{{0, 136}, {683, 100}}";
- Frame = "{{0, 0}, {681, 234}}";
- };
- Tab3 = {
- Frame = "{{0, 0}, {681, 238}}";
- };
- TabCount = 4;
- TabsVisible = NO;
- };
- SplitCount = 1;
- Tab0 = {
- Frame = "{{0, 0}, {260, 548}}";
- GroupTreeTableConfiguration = (
- SCMStatusColumn,
- 22,
- TargetStatusColumn,
- 18,
- MainColumn,
- 205,
- );
- };
- Tab1 = {
- ClassesFrame = "{{0, 0}, {250, 333}}";
- ClassesTreeTableConfiguration = (
- PBXBookColumnIdentifier,
- 20,
- PBXClassColumnIdentifier,
- 207,
- );
- Frame = "{{0, 0}, {248, 554}}";
- MembersFrame = "{{0, 342}, {250, 212}}";
- MembersTreeTableConfiguration = (
- PBXBookColumnIdentifier,
- 20,
- PBXMethodColumnIdentifier,
- 206,
- );
- };
- Tab2 = {
- Frame = "{{0, 0}, {217, 554}}";
- };
- Tab3 = {
- Frame = "{{0, 0}, {239, 548}}";
- TargetTableConfiguration = (
- ActiveObject,
- 16,
- ObjectNames,
- 206,
- );
- };
- Tab4 = {
- BreakpointsTreeTableConfiguration = (
- breakpointColumn,
- 197,
- enabledColumn,
- 31,
- );
- Frame = "{{0, 0}, {250, 554}}";
- };
- TabCount = 5;
- TabsVisible = YES;
- };
- StatusViewVisible = YES;
- Template = 64ABBB4501FA494900185B06;
- ToolbarVisible = YES;
- WindowLocation = "{77, 330}";
- },
- );
- PBXWorkspaceStateSaveDate = 49920633;
- };
- perUserProjectItems = {
- 005751AA02FB00930AC916F0 = 005751AA02FB00930AC916F0;
- 00F4D9CE02F9BA490AC916F0 = 00F4D9CE02F9BA490AC916F0;
- F5BFE56402F8B7A901DC9062 = F5BFE56402F8B7A901DC9062;
- F5BFE56702F8B7A901DC9062 = F5BFE56702F8B7A901DC9062;
- F5BFE56A02F8B7A901DC9062 = F5BFE56A02F8B7A901DC9062;
+ PBXPerProjectTemplateStateSaveDate = 79872121;
};
projectwideBuildSettings = {
- OBJROOT = "/Volumes/TheCloset/jingham/tcl-tk/source/tcl-merge/Objects";
- SYMROOT = "/Volumes/TheCloset/jingham/tcl-tk/source/tcl-merge/Products";
+ SYMROOT = "${SRCROOT}/../../build/tcl";
};
wantsIndex = 1;
- wantsSCM = 1;
- };
- 00E2F84B016E8A830ACA28DC = {
- activeExec = 0;
+ wantsSCM = -1;
};
00E2F84C016E8B780ACA28DC = {
activeExec = 0;
};
- 00E2F84E016E92110ACA28DC = {
- activeExec = 0;
- };
- 00F4D9CE02F9BA490AC916F0 = {
- fRef = 00F4D9CF02F9BA4A0AC916F0;
- isa = PBXTextBookmark;
- name = "DefaultsDoc.rtf: 30";
- rLen = 32;
- rLoc = 2777;
- rType = 0;
- vrLen = 1334;
- vrLoc = 2136;
+ F973FC3204852E75006F146B = {
+ activeArgIndex = 2147483647;
+ activeArgIndices = (
+ );
+ argumentStrings = (
+ );
+ configStateDict = {
+ };
+ debuggerPlugin = GDBDebugging;
+ dylibVariantSuffix = "";
+ enableDebugStr = 1;
+ environmentEntries = (
+ );
+ isa = PBXExecutable;
+ launchableReference = F9A61CCD04C2B5A5006F5A0B;
+ name = tclsh8.4;
+ shlibInfoDictList = (
+ );
+ sourceDirectories = (
+ );
};
- 00F4D9CF02F9BA4A0AC916F0 = {
+ F9A61CCD04C2B5A5006F5A0B = {
isa = PBXFileReference;
- name = DefaultsDoc.rtf;
- path = "/Developer/Applications/Project Builder.app/Contents/Resources/DefaultsDoc.rtf";
- refType = 0;
- };
- F50DC359017027D801DC9062 = {
- activeExec = 0;
- };
- F5BFE56402F8B7A901DC9062 = {
- fRef = F5BFE56E02F8B7AA01DC9062;
- isa = PBXTextBookmark;
- name = "stat.h: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 1666;
- vrLoc = 3618;
- };
- F5BFE56702F8B7A901DC9062 = {
- fRef = F5F24F6E016ECAA401DC9062;
- isa = PBXTextBookmark;
- name = "tcl.h: 397";
- rLen = 6;
- rLoc = 11199;
- rType = 0;
- vrLen = 1293;
- vrLoc = 10644;
+ name = tclsh8.4;
+ path = ../../build/tcl/tclsh8.4;
+ refType = 4;
};
- F5BFE56A02F8B7A901DC9062 = {
- fRef = F5F24F6E016ECAA401DC9062;
- isa = PBXTextBookmark;
- name = "tcl.h: 397";
- rLen = 6;
- rLoc = 11199;
- rType = 0;
- vrLen = 1293;
- vrLoc = 10644;
+ F9A61CCE04C2B5A8006F5A0B = {
+ activeArgIndex = 2147483647;
+ activeArgIndices = (
+ );
+ argumentStrings = (
+ );
+ configStateDict = {
+ };
+ debuggerPlugin = GDBDebugging;
+ dylibVariantSuffix = "";
+ enableDebugStr = 1;
+ environmentEntries = (
+ );
+ isa = PBXExecutable;
+ launchableReference = F9A61CD104C2B5B4006F5A0B;
+ name = tcltest;
+ shlibInfoDictList = (
+ );
+ sourceDirectories = (
+ );
};
- F5BFE56E02F8B7AA01DC9062 = {
+ F9A61CD104C2B5B4006F5A0B = {
isa = PBXFileReference;
- name = stat.h;
- path = /usr/include/sys/stat.h;
- refType = 0;
+ name = tcltest;
+ path = ../../build/tcl/tcltest;
+ refType = 4;
};
}
diff --git a/macosx/Tcl.pbproj/project.pbxproj b/macosx/Tcl.pbproj/project.pbxproj
index 9f9fa9a..4d2b2ca 100644
--- a/macosx/Tcl.pbproj/project.pbxproj
+++ b/macosx/Tcl.pbproj/project.pbxproj
@@ -5,32 +5,6 @@
};
objectVersion = 38;
objects = {
- 00530A0D0173C8270ACA28DC = {
- buildActionMask = 12;
- files = (
- );
- generatedFileNames = (
- );
- isa = PBXShellScriptBuildPhase;
- neededFileNames = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "# install to ${INSTALL_ROOT} with optional stripping\ncd ${TEMP_DIR}/..\nif test \"${INSTALL_STRIP}\" = \"YES\"; then\nexport INSTALL_PROGRAM='${INSTALL} ${INSTALL_STRIP_PROGRAM}'\nexport INSTALL_LIBRARY='${INSTALL} ${INSTALL_STRIP_LIBRARY}'\nelse\nexport INSTALL_PROGRAM='${INSTALL}'\nexport INSTALL_LIBRARY='${INSTALL}'\nfi\nexport CPPROG='cp -p'\ngnumake install-binaries install-libraries TCL_LIBRARY=\"@TCL_IN_FRAMEWORK@\" INSTALL_ROOT=\"${INSTALL_ROOT}\" SCRIPT_INSTALL_DIR=\"${INSTALL_ROOT}${LIBDIR}/Resources/Scripts\" INSTALL_PROGRAM=\"${INSTALL_PROGRAM}\" INSTALL_LIBRARY=\"${INSTALL_LIBRARY}\"";
- };
- 00530A0E0173CC960ACA28DC = {
- buildActionMask = 12;
- files = (
- );
- generatedFileNames = (
- );
- isa = PBXShellScriptBuildPhase;
- neededFileNames = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "# fixup Framework structure\ncd \"${INSTALL_ROOT}${LIBDIR}\"\nln -fs Versions/Current/Headers ../..\nln -fs \"Versions/Current/tclConfig.sh\" ../..\nln -fs `ls libtclstub* | sed -e \"s|.*|Versions/${FRAMEWORK_VERSION}/&|\"` ../..\nif [ \"${BUILD_STYLE}\" = \"Development\" ]; then\n\t# keep copy of debug library around, so that\n\t# Deployment build can be installed on top\n\t# of Development build without overwriting\n\t# the debug library\n\tcp -fp \"${PRODUCT_NAME}\" \"${PRODUCT_NAME}_debug\"\n\tln -fs \"Versions/Current/${PRODUCT_NAME}_debug\" ../..\nfi";
- };
00E2F845016E82EB0ACA28DC = {
buildStyles = (
00E2F847016E82EB0ACA28DC,
@@ -42,8 +16,6 @@
productRefGroup = 00E2F84A016E8A830ACA28DC;
projectDirPath = "";
targets = (
- 00E2F84E016E92110ACA28DC,
- 00E2F84B016E8A830ACA28DC,
00E2F84C016E8B780ACA28DC,
);
};
@@ -65,9 +37,7 @@
buildRules = (
);
buildSettings = {
- EXTRA_CONFIGURE_FLAGS = "--enable-symbols";
- INSTALL_STRIP = NO;
- TEMP_DIR = "${OBJROOT}/Development.build/$(PROJECT_NAME).build/$(TARGET_NAME).build";
+ MAKE_TARGET = develop;
};
isa = PBXBuildStyle;
name = Development;
@@ -76,15 +46,14 @@
buildRules = (
);
buildSettings = {
- INSTALL_STRIP = YES;
- TEMP_DIR = "${OBJROOT}/Deployment.build/$(PROJECT_NAME).build/$(TARGET_NAME).build";
+ MAKE_TARGET = deploy;
};
isa = PBXBuildStyle;
name = Deployment;
};
00E2F84A016E8A830ACA28DC = {
children = (
- 00E2F84D016E92110ACA28DC,
+ F9A61C9D04C2B4E3006F5A0B,
F53ACC5C031D9D11016F146B,
F53ACC73031DA405016F146B,
);
@@ -92,134 +61,31 @@
name = Products;
refType = 4;
};
- 00E2F84B016E8A830ACA28DC = {
- buildArgumentsString = "-c \"if [ \\\"${ACTION}\\\" != \\\"clean\\\" ]; then if [ -z \\\"`find . ! \\\\( -path './*/*' -prune \\\\) -name Makefile -newer \\\"${SRCROOT}/../unix/configure\\\"`\\\" ]; then \\\"${SRCROOT}/../unix/configure\\\" --prefix=/usr --mandir=/usr/share/man --libdir=\\\"${LIBDIR}\\\" --includedir=\\\"${LIBDIR}/Headers\\\" --enable-threads --enable-framework ${EXTRA_CONFIGURE_FLAGS}; mkdir -p Tcl.framework; ln -fs ../Tcl Tcl.framework/Tcl; fi; fi\"";
- buildPhases = (
- );
- buildSettings = {
- EXTRA_CONFIGURE_FLAGS = "";
- FRAMEWORK_VERSION = 8.4;
- INSTALL_PATH = /Library/Frameworks;
- LIBDIR = "${INSTALL_PATH}/${PRODUCT_NAME}.framework/Versions/${FRAMEWORK_VERSION}";
- PRODUCT_NAME = Tcl;
- };
- buildToolPath = /bin/sh;
- buildWorkingDirectory = "${TEMP_DIR}/..";
- dependencies = (
- );
- isa = PBXLegacyTarget;
- name = Configure;
- passBuildSettingsInEnvironment = 1;
- productName = Configure;
- settingsToExpand = 6;
- settingsToPassInEnvironment = 287;
- settingsToPassOnCommandLine = 280;
- };
00E2F84C016E8B780ACA28DC = {
- buildArgumentsString = "-c \"if [ \\\"${ACTION}\\\" != \\\"clean\\\" ]; then gnumake tclsh tcltest TCL_LIBRARY=\\\"@TCL_IN_FRAMEWORK@\\\" TCL_PACKAGE_PATH=\\\"~/Library/Tcl /Library/Tcl /Network/Library/Tcl /System/Library/Tcl ~/Library/Frameworks /Library/Frameworks /Network/Library/Frameworks /System/Library/Frameworks\\\" DYLIB_INSTALL_DIR=\\\"${DYLIB_INSTALL_DIR}\\\" ${EXTRA_MAKE_FLAGS}; else gnumake distclean; fi\"";
+ buildArgumentsString = "-c \"if [ \\\"${ACTION}\\\" != \\\"clean\\\" ]; then if [ \\\"${ACTION}\\\" = \\\"install\\\" ]; then MAKE_ACTION=\"install-\"; fi; else MAKE_ACTION=\"distclean-\"; fi; gnumake \\${MAKE_ACTION:-}${MAKE_TARGET}";
buildPhases = (
);
buildSettings = {
- DYLIB_INSTALL_DIR = "${DYLIB_INSTALL_PATH}/${PRODUCT_NAME}.framework/Versions/${FRAMEWORK_VERSION}";
- DYLIB_INSTALL_PATH = "${INSTALL_PATH}";
- EXTRA_MAKE_FLAGS = "";
- FRAMEWORK_VERSION = 8.4;
+ EXTRA_CONFIGURE_ARGS = "";
+ EXTRA_MAKE_ARGS = "";
INSTALL_PATH = /Library/Frameworks;
+ INSTALL_ROOT = "${DSTROOT}";
+ PREFIX = /usr;
PRODUCT_NAME = Tcl;
+ SYMROOT = "${SRCROOT}/../../build/tcl";
};
buildToolPath = /bin/sh;
- buildWorkingDirectory = "${TEMP_DIR}/..";
+ buildWorkingDirectory = "${SRCROOT}";
dependencies = (
- F5877EB5031F7997016F146B,
);
isa = PBXLegacyTarget;
- name = Make;
+ name = Tcl;
passBuildSettingsInEnvironment = 1;
- productName = Make;
+ productName = Tcl;
settingsToExpand = 6;
settingsToPassInEnvironment = 287;
settingsToPassOnCommandLine = 280;
};
- 00E2F84D016E92110ACA28DC = {
- isa = PBXFrameworkReference;
- path = Tcl.framework;
- refType = 3;
- };
- 00E2F84E016E92110ACA28DC = {
- buildPhases = (
- F5877FB6031F97AF016F146B,
- F50DC36A01703B7301DC9062,
- F50DC367017033D701DC9062,
- F50DC3680170344801DC9062,
- 00E2F84F016E92110ACA28DC,
- F5BE9BBF02FB5974016F146B,
- 00530A0D0173C8270ACA28DC,
- 00530A0E0173CC960ACA28DC,
- F5877FBB031FA90A016F146B,
- F59AE5E3017AC67A01DC9062,
- );
- buildSettings = {
- DSTROOT = "${TEMP_DIR}";
- EXTRA_MAKE_INSTALL_FLAGS = "";
- FRAMEWORK_VERSION = 8.4;
- INSTALL_PATH = /Library/Frameworks;
- LIBDIR = "${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Versions/${FRAMEWORK_VERSION}";
- PRODUCT_NAME = Tcl;
- WRAPPER_EXTENSION = framework;
- };
- dependencies = (
- F5877EB6031F79A4016F146B,
- );
- isa = PBXFrameworkTarget;
- name = Tcl;
- productInstallPath = /Library/Frameworks;
- productName = TclLibrary;
- productReference = 00E2F84D016E92110ACA28DC;
- productSettingsXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
-<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
-<plist version=\"1.0\">
-<dict>
- <key>CFBundleDevelopmentRegion</key>
- <string>English</string>
- <key>CFBundleExecutable</key>
- <string>Tcl</string>
- <key>CFBundleGetInfoString</key>
- <string>Tcl Library 8.4, Copyright © 2003 Tcl Core Team.
-MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright © 2001-2002, Apple Computer, Inc.</string>
- <key>CFBundleIconFile</key>
- <string></string>
- <key>CFBundleIdentifier</key>
- <string>com.tcltk.tcllibrary</string>
- <key>CFBundleInfoDictionaryVersion</key>
- <string>6.0</string>
- <key>CFBundleName</key>
- <string>Tcl Library 8.4</string>
- <key>CFBundlePackageType</key>
- <string>FMWK</string>
- <key>CFBundleShortVersionString</key>
- <string>8.4.3</string>
- <key>CFBundleSignature</key>
- <string>Tcl </string>
- <key>CFBundleVersion</key>
- <string>8.4.3</string>
-</dict>
-</plist>
-";
- };
- 00E2F84F016E92110ACA28DC = {
- buildActionMask = 2147483647;
- files = (
- F59D846A0338FAA4016F146B,
- F59D846B0338FAA4016F146B,
- F59D846E0338FAA4016F146B,
- F59D84620338F9CA016F146B,
- F59D846C0338FAA4016F146B,
- F59D846D0338FAA4016F146B,
- F5C093BB0342F7D6016F146B,
- );
- isa = PBXHeadersBuildPhase;
- runOnlyForDeploymentPostprocessing = 0;
- };
00E2F854016E922C0ACA28DC = {
children = (
F5F24F87016ECAFC01DC9062,
@@ -409,33 +275,6 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
//F52
//F53
//F54
- F50DC367017033D701DC9062 = {
- buildActionMask = 2147483647;
- files = (
- );
- isa = PBXFrameworksBuildPhase;
- runOnlyForDeploymentPostprocessing = 0;
- };
- F50DC3680170344801DC9062 = {
- buildActionMask = 2147483647;
- files = (
- );
- isa = PBXResourcesBuildPhase;
- runOnlyForDeploymentPostprocessing = 0;
- };
- F50DC36A01703B7301DC9062 = {
- buildActionMask = 2147483647;
- files = (
- F59D84630338F9EC016F146B,
- F59D84640338F9ED016F146B,
- F59D84670338FA8B016F146B,
- F59D84680338FA8D016F146B,
- F59D84690338FA90016F146B,
- F5C093BA0342F7B4016F146B,
- );
- isa = PBXSourcesBuildPhase;
- runOnlyForDeploymentPostprocessing = 0;
- };
F5306C9F03CAC979016F146B = {
children = (
F5306CA303CAC9DE016F146B,
@@ -476,171 +315,21 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
F53ACC5C031D9D11016F146B = {
isa = PBXExecutableFileReference;
name = tclsh8.4;
- path = ../../build/tclsh8.4;
+ path = ../../build/tcl/tclsh8.4;
refType = 2;
};
F53ACC73031DA405016F146B = {
isa = PBXExecutableFileReference;
name = tcltest;
- path = ../../build/tcltest;
+ path = ../../build/tcl/tcltest;
refType = 2;
};
- F5877EB5031F7997016F146B = {
- isa = PBXTargetDependency;
- target = 00E2F84B016E8A830ACA28DC;
- };
- F5877EB6031F79A4016F146B = {
- isa = PBXTargetDependency;
- target = 00E2F84C016E8B780ACA28DC;
- };
- F5877FB6031F97AF016F146B = {
- buildActionMask = 8;
- files = (
- );
- generatedFileNames = (
- );
- isa = PBXShellScriptBuildPhase;
- neededFileNames = (
- );
- runOnlyForDeploymentPostprocessing = 1;
- shellPath = /bin/sh;
- shellScript = "# ensure we can overwrite a previous install\nif [ -d \"${INSTALL_ROOT}${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}\" ]; then\n chmod -RH u+w \"${INSTALL_ROOT}${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}\"\nfi";
- };
- F5877FBB031FA90A016F146B = {
- buildActionMask = 8;
- files = (
- );
- generatedFileNames = (
- );
- isa = PBXShellScriptBuildPhase;
- neededFileNames = (
- );
- runOnlyForDeploymentPostprocessing = 1;
- shellPath = /bin/sh;
- shellScript = "if [ -n \"${EMBEDDED_BUILD:-}\" ]; then\n# if we are embedding frameworks, don't install tclsh\nrm -f \"${INSTALL_ROOT}/usr/bin/tclsh${FRAMEWORK_VERSION}\"\nrmdir -p \"${INSTALL_ROOT}/usr/bin\" 2>&-\ntrue\nelse\n# redo prebinding\ncd \"${INSTALL_ROOT}\"\nif [ ! -d usr/lib ]; then mkdir -p usr; ln -fs /usr/lib usr/; RM_USRLIB=1; fi\nif [ ! -d System ]; then ln -fs /System .; RM_SYSTEM=1; fi\nredo_prebinding -r . \"./usr/bin/tclsh${FRAMEWORK_VERSION}\"\nif [ -n \"${RM_USRLIB:-}\" ]; then rm -f usr/lib; rmdir -p usr 2>&-; fi\nif [ -n \"${RM_SYSTEM:-}\" ]; then rm -f System; fi\n# install tclsh symbolic link\nmkdir -p \"${INSTALL_ROOT}/usr/bin\"\nln -fs \"tclsh${FRAMEWORK_VERSION}\" \"${INSTALL_ROOT}/usr/bin/tclsh\"\nfi";
- };
- F59AE5E3017AC67A01DC9062 = {
- buildActionMask = 8;
- files = (
- );
- generatedFileNames = (
- );
- isa = PBXShellScriptBuildPhase;
- neededFileNames = (
- );
- runOnlyForDeploymentPostprocessing = 1;
- shellPath = /bin/sh;
- shellScript = "if [ -z \"${EMBEDDED_BUILD:-}\" ]; then\n# build html documentation\nif [ \"${BUILD_STYLE}\" = \"Deployment\" ]; then\n cd \"${TEMP_DIR}/..\"\n export DYLD_FRAMEWORK_PATH=${SYMROOT}\n gnumake html DISTDIR=\"${INSTALL_ROOT}${LIBDIR}/Resources/English.lproj/Documentation/Reference\"\n cd \"${INSTALL_ROOT}${LIBDIR}/Resources/English.lproj/Documentation/Reference\"\n ln -fs contents.htm html/TclTOC.html\n rm -fr \"${PRODUCT_NAME}\"; mv -f html \"${PRODUCT_NAME}\"\nfi\nfi";
- };
- F59D84620338F9CA016F146B = {
- fileRef = F5F24F72016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- ATTRIBUTES = (
- Private,
- );
- };
- };
- F59D84630338F9EC016F146B = {
- fileRef = F5F24F73016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D84640338F9ED016F146B = {
- fileRef = F5F24F74016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D84670338FA8B016F146B = {
- fileRef = F5F24F6E016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D84680338FA8D016F146B = {
- fileRef = F5F24F70016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D84690338FA90016F146B = {
- fileRef = F5F24F77016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D846A0338FAA4016F146B = {
- fileRef = F5F24F6E016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D846B0338FAA4016F146B = {
- fileRef = F5F24F70016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F59D846C0338FAA4016F146B = {
- fileRef = F5F24F73016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- ATTRIBUTES = (
- Private,
- );
- };
- };
- F59D846D0338FAA4016F146B = {
- fileRef = F5F24F74016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- ATTRIBUTES = (
- Private,
- );
- };
- };
- F59D846E0338FAA4016F146B = {
- fileRef = F5F24F77016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
F5A1836F018242A501DC9062 = {
fileEncoding = 5;
isa = PBXFileReference;
path = tclMacOSXBundle.c;
refType = 2;
};
- F5BE9BBF02FB5974016F146B = {
- buildActionMask = 2147483647;
- files = (
- );
- generatedFileNames = (
- );
- isa = PBXShellScriptBuildPhase;
- neededFileNames = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "# symolic link hackery to trick\n# 'make install INSTALL_ROOT=${TEMP_DIR}'\n# into building Tcl.framework and tclsh in ${SYMROOT}\ncd \"${TEMP_DIR}\"\nmkdir -p Library\nmkdir -p usr\nrm -f Library/Frameworks; ln -fs \"${SYMROOT}\" Library/Frameworks\nrm -f usr/bin; ln -fs \"${SYMROOT}\" usr/bin\nln -fs \"${TEMP_DIR}/../tcltest\" \"${SYMROOT}\"";
- };
- F5C093BA0342F7B4016F146B = {
- fileRef = F5F24F76016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- };
- };
- F5C093BB0342F7D6016F146B = {
- fileRef = F5F24F76016ECAA401DC9062;
- isa = PBXBuildFile;
- settings = {
- ATTRIBUTES = (
- Private,
- );
- };
- };
F5C88655017D604601DC9062 = {
children = (
F5C88656017D604601DC9062,
@@ -1560,6 +1249,22 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
path = ../library/word.tcl;
refType = 2;
};
+//F50
+//F51
+//F52
+//F53
+//F54
+//F90
+//F91
+//F92
+//F93
+//F94
+ F9A61C9D04C2B4E3006F5A0B = {
+ isa = PBXFrameworkReference;
+ name = Tcl.framework;
+ path = ../../build/tcl/Tcl.framework;
+ refType = 2;
+ };
};
rootObject = 00E2F845016E82EB0ACA28DC;
}
diff --git a/tools/tcltk-man2html.tcl b/tools/tcltk-man2html.tcl
index 42f0e58..a4babde 100755
--- a/tools/tcltk-man2html.tcl
+++ b/tools/tcltk-man2html.tcl
@@ -65,20 +65,22 @@ package require Tcl 8.4
# Oct 24, 1997 - moved from 8.0b1 to 8.0 release
#
-set Version "0.31"
+set Version "0.32"
proc parse_command_line {} {
global argv Version
# These variables determine where the man pages come from and where
# the converted pages go to.
- global tcltkdir tkdir tcldir webdir
+ global tcltkdir tkdir tcldir webdir build_tcl build_tk
# Set defaults based on original code.
set tcltkdir ../..
set tkdir {}
set tcldir {}
set webdir ../html
+ set build_tcl 0
+ set build_tk 0
# Handle arguments a la GNU:
# --version
@@ -99,6 +101,8 @@ proc parse_command_line {} {
puts " --version print version number, then exit"
puts " --srcdir=DIR find tcl and tk source below DIR"
puts " --htmldir=DIR put generated HTML in DIR"
+ puts " --tcl build tcl help"
+ puts " --tk build tk help"
exit 0
}
@@ -112,6 +116,14 @@ proc parse_command_line {} {
set webdir [string range $option 10 end]
}
+ --tcl {
+ set build_tcl 1
+ }
+
+ --tk {
+ set build_tk 1
+ }
+
default {
puts stderr "tcltk-man-html: unrecognized option -- `$option'"
exit 1
@@ -119,6 +131,9 @@ proc parse_command_line {} {
}
}
+ if {!$build_tcl && !$build_tk} {set build_tcl 1; set build_tk 1}
+
+ if {$build_tcl} {
# Find Tcl.
set tcldir [lindex [lsort [glob -nocomplain -tails -type d \
-directory $tcltkdir {tcl{,[8-9].[0-9]{,.[0-9]}}}]] end]
@@ -127,7 +142,9 @@ proc parse_command_line {} {
exit 1
}
puts "using Tcl source directory $tcldir"
+ }
+ if {$build_tk} {
# Find Tk.
set tkdir [lindex [lsort [glob -nocomplain -tails -type d \
-directory $tcltkdir {tk{,[8-9].[0-9]{,.[0-9]}}}]] end]
@@ -136,10 +153,15 @@ proc parse_command_line {} {
exit 1
}
puts "using Tk source directory $tkdir"
+ }
# the title for the man pages overall
global overall_title
- set overall_title "[capitalize $tcldir]/[capitalize $tkdir] Manual"
+ set overall_title ""
+ if {$build_tcl} {append overall_title "[capitalize $tcldir]"}
+ if {$build_tcl && $build_tk} {append overall_title "/"}
+ if {$build_tk} {append overall_title "[capitalize $tkdir]"}
+ append overall_title " Manual"
}
proc capitalize {string} {
@@ -656,6 +678,7 @@ proc cross-reference {ref} {
foreach name {array file history info interp string trace
after clipboard grab image option pack place selection tk tkwait update winfo wm} {
if {[regexp "^$name \[a-z0-9]*\$" $lref] && \
+ [info exists manual(name-$name)] && \
[string compare $manual(tail) "$name.n"]} {
return "<A HREF=\"../$manual(name-$name).htm\">$ref</A>"
}
@@ -1265,7 +1288,7 @@ proc makedirhier {dir} {
## specified by html.
##
proc make-man-pages {html args} {
- global env manual overall_title
+ global env manual overall_title tcltkdesc
makedirhier $html
set manual(short-toc-n) 1
set manual(short-toc-fp) [open $html/contents.htm w]
@@ -1273,6 +1296,7 @@ proc make-man-pages {html args} {
puts $manual(short-toc-fp) "<BODY><HR><H3>$overall_title</H3><HR><DL>"
set manual(merge-copyrights) {}
foreach arg $args {
+ if {$arg == ""} {continue}
set manual(wing-glob) [lindex $arg 0]
set manual(wing-name) [lindex $arg 1]
set manual(wing-file) [lindex $arg 2]
@@ -1558,15 +1582,15 @@ proc make-man-pages {html args} {
set keys [lsort -command strcasecmp [array names manual keyword-*]]
makedirhier $html/Keywords
catch {eval file delete -- [glob $html/Keywords/*]}
- puts $manual(short-toc-fp) {<DT><A HREF="Keywords/contents.htm">Keywords</A><DD>The keywords from the Tcl/Tk man pages.}
+ puts $manual(short-toc-fp) "<DT><A HREF=\"Keywords/contents.htm\">Keywords</A><DD>The keywords from the $tcltkdesc man pages."
set keyfp [open $html/Keywords/contents.htm w]
- puts $keyfp "<HTML><HEAD><TITLE>Tcl/Tk Keywords</TITLE></HEAD>"
- puts $keyfp "<BODY><HR><H3>Tcl/Tk Keywords</H3><HR><H2>"
+ puts $keyfp "<HTML><HEAD><TITLE>$tcltkdesc Keywords</TITLE></HEAD>"
+ puts $keyfp "<BODY><HR><H3>$tcltkdesc Keywords</H3><HR><H2>"
foreach a {A B C D E F G H I J K L M N O P Q R S T U V W X Y Z} {
puts $keyfp "<A HREF=\"$a.htm\">$a</A>"
set afp [open $html/Keywords/$a.htm w]
- puts $afp "<HTML><HEAD><TITLE>Tcl/Tk Keywords - $a</TITLE></HEAD>"
- puts $afp "<BODY><HR><H3>Tcl/Tk Keywords - $a</H3><HR><H2>"
+ puts $afp "<HTML><HEAD><TITLE>$tcltkdesc Keywords - $a</TITLE></HEAD>"
+ puts $afp "<BODY><HR><H3>$tcltkdesc Keywords - $a</H3><HR><H2>"
foreach b {A B C D E F G H I J K L M N O P Q R S T U V W X Y Z} {
puts $afp "<A HREF=\"$b.htm\">$b</A>"
}
@@ -1657,22 +1681,27 @@ proc make-man-pages {html args} {
return {}
}
-set usercmddesc {The interpreters which implement Tcl and Tk.}
+parse_command_line
+
+set tcltkdesc ""; set cmdesc ""; set appdir ""
+if {$build_tcl} {append tcltkdesc "Tcl"; append cmdesc "Tcl"; append appdir "$tcldir"}
+if {$build_tcl && $build_tk} {append tcltkdesc "/"; append cmdesc " and "; append appdir ","}
+if {$build_tk} {append tcltkdesc "Tk"; append cmdesc "Tk"; append appdir "$tkdir"}
+
+set usercmddesc "The interpreters which implement $cmdesc."
set tclcmddesc {The commands which the <B>tclsh</B> interpreter implements.}
set tkcmddesc {The additional commands which the <B>wish</B> interpreter implements.}
set tcllibdesc {The C functions which a Tcl extended C program may use.}
set tklibdesc {The additional C functions which a Tk extended C program may use.}
-parse_command_line
-
if {1} {
if {[catch {
make-man-pages $webdir \
- "$tcltkdir/{$tkdir,$tcldir}/doc/*.1 {Tcl/Tk Applications} UserCmd {$usercmddesc}" \
- "$tcltkdir/$tcldir/doc/*.n {Tcl Commands} TclCmd {$tclcmddesc}" \
- "$tcltkdir/$tkdir/doc/*.n {Tk Commands} TkCmd {$tkcmddesc}" \
- "$tcltkdir/$tcldir/doc/*.3 {Tcl Library} TclLib {$tcllibdesc}" \
- "$tcltkdir/$tkdir/doc/*.3 {Tk Library} TkLib {$tklibdesc}"
+ "$tcltkdir/{$appdir}/doc/*.1 \"$tcltkdesc Applications\" UserCmd {$usercmddesc}" \
+ [expr {$build_tcl ? "$tcltkdir/$tcldir/doc/*.n {Tcl Commands} TclCmd {$tclcmddesc}" : ""}] \
+ [expr {$build_tk ? "$tcltkdir/$tkdir/doc/*.n {Tk Commands} TkCmd {$tkcmddesc}" : ""}] \
+ [expr {$build_tcl ? "$tcltkdir/$tcldir/doc/*.3 {Tcl Library} TclLib {$tcllibdesc}" : ""}] \
+ [expr {$build_tk ? "$tcltkdir/$tkdir/doc/*.3 {Tk Library} TkLib {$tklibdesc}" : ""}]
} error]} {
puts $error\n$errorInfo
}
diff --git a/unix/Makefile.in b/unix/Makefile.in
index 9afd3b5..f9853a8 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -5,7 +5,7 @@
# "autoconf" program (constructs like "@foo@" will get replaced in the
# actual Makefile.
#
-# RCS: @(#) $Id: Makefile.in,v 1.121.2.1 2003/05/20 17:26:26 hobbs Exp $
+# RCS: @(#) $Id: Makefile.in,v 1.121.2.2 2003/07/15 01:15:51 das Exp $
VERSION = @TCL_VERSION@
MAJOR_VERSION = @TCL_MAJOR_VERSION@
@@ -1343,9 +1343,12 @@ allpatch: dist
# TOOL_DIR.
#
-html:
+html-tcl: EXTRA_HTML_ARGS=--tcl
+html-tk: EXTRA_HTML_ARGS=--tk
+
+html html-tcl html-tk:
$(TCL_EXE) $(TOOL_DIR)/tcltk-man2html.tcl --htmldir=$(DISTDIR)/html \
- --srcdir=$(TOP_DIR)/..
+ --srcdir=$(TOP_DIR)/.. $(EXTRA_HTML_ARGS)
#
# Target to create a Macintosh version of the distribution. This will