summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog13
-rw-r--r--macosx/Makefile27
-rw-r--r--macosx/Tcl.pbproj/project.pbxproj113
3 files changed, 141 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 5434244..75e76e2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2002-09-26 Daniel Steffen <das@users.sourceforge.net>
+
+ * macosx/Makefile: preserve environment value of INSTALL_ROOT.
+ When embedding only use deployment build. Force relink before
+ embedded build to ensure new linker flags are picked up.
+
+ * macosx/Tcl.pbproj/project.pbxproj: add symbolic links to
+ debug lib, stub libs and tclConfig.sh in framework toplevel.
+ Configure target dependency fix. Fix to 'clean' action. Added
+ private tcl headers to framework. Install tclsh symbolic link.
+ Html doc build works when no installed tclsh available. Made
+ html doc structure in framework more like in Apple frameworks.
+
2002-09-24 Donal K. Fellows <fellowsd@cs.man.ac.uk>
* unix/tcl.m4 (SC_TCL_64BIT_FLAGS): Yet more robust 64-bit value
diff --git a/macosx/Makefile b/macosx/Makefile
index 529e2f5..27d22b1 100644
--- a/macosx/Makefile
+++ b/macosx/Makefile
@@ -3,13 +3,13 @@
# Simple makefile for building on Mac OS X with the
# Project Builder command line tool 'pbxbuild'
#
-# RCS: @(#) $Id: Makefile,v 1.3 2002/09/10 09:57:44 das Exp $
+# RCS: @(#) $Id: Makefile,v 1.4 2002/09/26 17:06:14 das Exp $
#
################################################################################
-INSTALL_ROOT =
+INSTALL_ROOT ?=
-BUILD_DIR = ../../build
+BUILD_DIR ?= ${CURDIR}/../../build
TARGET = Tcl
@@ -33,9 +33,9 @@ all: develop deploy
install: install-develop install-deploy
-embedded: embedded-develop embedded-deploy
+embedded: embedded-deploy
-install-embedded: install-embedded-develop install-embedded-deploy
+install-embedded: install-embedded-deploy
clean: clean-develop clean-deploy
@@ -53,10 +53,10 @@ install-develop:
install-deploy:
${DEPBUILD} install ${INSTALLOPTS}
-embedded-develop:
+embedded-develop: forceRelink
${DEVBUILD} ${EMBEDDEDOPTS}
-embedded-deploy:
+embedded-deploy: forceRelink
${DEPBUILD} ${EMBEDDEDOPTS}
install-embedded-develop:
@@ -72,3 +72,16 @@ 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 \
+
+################################################################################
diff --git a/macosx/Tcl.pbproj/project.pbxproj b/macosx/Tcl.pbproj/project.pbxproj
index 4cede55..76f6c7f 100644
--- a/macosx/Tcl.pbproj/project.pbxproj
+++ b/macosx/Tcl.pbproj/project.pbxproj
@@ -29,7 +29,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "# fixup Framework structure\ncd \"${INSTALL_ROOT}${LIBDIR}\"\nln -fs Versions/Current/Headers ../..\nmv -f tclConfig.sh Resources\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 debuglibrary\n\tcp -fp \"${PRODUCT_NAME}\" \"${PRODUCT_NAME}_debug\"\nfi";
+ shellScript = "# fixup Framework structure\ncd \"${INSTALL_ROOT}${LIBDIR}\"\nln -fs Versions/Current/Headers ../..\nmv -f tclConfig.sh Resources\nln -fs \"Resources/tclConfig.sh\" ../..\nln -fs `ls libtclstub* | sed -e 's|.*|Versions/Current/&|'` ../..\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 = (
@@ -90,7 +90,7 @@
refType = 4;
};
00E2F84B016E8A830ACA28DC = {
- buildArgumentsString = "-c \"if [ \\\"${ACTION}\\\" != \\\"clean\\\" ]; then if [ -z \\\"`find . -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; else rm -f Makefile; fi\"";
+ 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 = {
@@ -113,7 +113,7 @@
shouldUseHeadermap = 0;
};
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\\\" DYLIB_INSTALL_DIR=\\\"${DYLIB_INSTALL_DIR}\\\" ${EXTRA_MAKE_FLAGS}; else gnumake clean; fi\"";
+ 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\\\" DYLIB_INSTALL_DIR=\\\"${DYLIB_INSTALL_DIR}\\\" ${EXTRA_MAKE_FLAGS}; else gnumake distclean; fi\"";
buildPhases = (
);
buildSettings = {
@@ -207,6 +207,13 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
00E2F84F016E92110ACA28DC = {
buildActionMask = 2147483647;
files = (
+ F59D846A0338FAA4016F146B,
+ F59D846B0338FAA4016F146B,
+ F59D846E0338FAA4016F146B,
+ F59D84620338F9CA016F146B,
+ F59D846C0338FAA4016F146B,
+ F59D846D0338FAA4016F146B,
+ F5C093BB0342F7D6016F146B,
);
isa = PBXHeadersBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -417,6 +424,12 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
F50DC36A01703B7301DC9062 = {
buildActionMask = 2147483647;
files = (
+ F59D84630338F9EC016F146B,
+ F59D84640338F9ED016F146B,
+ F59D84670338FA8B016F146B,
+ F59D84680338FA8D016F146B,
+ F59D84690338FA90016F146B,
+ F5C093BA0342F7B4016F146B,
);
isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -465,7 +478,7 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
);
runOnlyForDeploymentPostprocessing = 1;
shellPath = /bin/sh;
- shellScript = "if [ `echo \"${DYLIB_INSTALL_PATH:-}\" | grep -c \"@executable_path\"` -gt 0 ]; 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\"\necho \"tclsh removed\"\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; fi\nif [ -n \"${RM_SYSTEM:-}\" ]; then rm -f System; fi\nfi";
+ shellScript = "if [ `echo \"${DYLIB_INSTALL_PATH:-}\" | grep -c \"@executable_path\"` -gt 0 ]; 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;
@@ -478,7 +491,82 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
);
runOnlyForDeploymentPostprocessing = 1;
shellPath = /bin/sh;
- shellScript = "if [ `echo \"${DYLIB_INSTALL_PATH:-}\" | grep -c \"@executable_path\"` -eq 0 ]; then\n# build html documentation\nif [ \"${BUILD_STYLE}\" = \"Deployment\" ]; then\n cd \"${TEMP_DIR}/..\"\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/index.html\n rm -f \"${PRODUCT_NAME}\"; ln -fs html \"${PRODUCT_NAME}\"\nfi\nfi";
+ shellScript = "if [ `echo \"${DYLIB_INSTALL_PATH:-}\" | grep -c \"@executable_path\"` -eq 0 ]; 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 = {
isa = PBXFileReference;
@@ -498,6 +586,21 @@ MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright Â
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,