From f6a5a5d57bfdc3aa6088dd2e9957652bdd9be70c Mon Sep 17 00:00:00 2001 From: das Date: Fri, 29 Jun 2007 03:19:05 +0000 Subject: * macosx/Wish.xcodeproj/project.pbxproj: improve support for renamed * macosx/Wish.xcodeproj/default.pbxuser: tcl and tk source dirs; add * macosx/Wish-Common.xcconfig: 10.5 SDK build config; remove tclMathOp.c. * macosx/README: document Wish.xcodeproj changes. --- macosx/README | 38 ++++++++++++++++----------- macosx/Wish-Common.xcconfig | 4 +-- macosx/Wish.xcodeproj/default.pbxuser | 16 ++++++------ macosx/Wish.xcodeproj/project.pbxproj | 49 ++++++++++++++++++++++++++++------- 4 files changed, 71 insertions(+), 36 deletions(-) diff --git a/macosx/README b/macosx/README index 4a9c917..769ee1f 100644 --- a/macosx/README +++ b/macosx/README @@ -1,7 +1,7 @@ Tcl/Tk Mac OS X README ---------------------- -RCS: @(#) $Id: README,v 1.23 2007/04/23 21:24:32 das Exp $ +RCS: @(#) $Id: README,v 1.24 2007/06/29 03:19:05 das Exp $ This is the README file for the Mac OS X/Darwin version of Tcl/Tk. @@ -173,10 +173,15 @@ take care to only use the project matching your DevTools and OS version: target useful for debugging, this target's 'Development' buildstyle has ZeroLink and Fix&Continue enabled, use the 'DevelNoFixZL' buildstyle if you need a debug build without these features. - * Wish.xcodeproj for Xcode 2.4 on 10.4, which has the following - additional configurations for the 'Tk' and 'tktest' targets: + * Wish.xcodeproj for Xcode 2.4 on 10.4 or later, which has the following + additional build configurations for the 'Tk' and 'tktest' targets: + 'DebugUnthreaded': debug build with threading turned off. + 'DebugMemCompile': debug build with memory and bytecode debugging on. + 'DebugLeaks': debug build with PURIFY defined. 'ReleaseUniversal': builds the targets as universal binaries for the ppc and i386 architectures. + 'ReleaseUniversal10.5SDK': same as 'ReleaseUniversal' but builds + against the 10.5 SDK on Leopard (with 10.5 deployment target). 'ReleaseUniversal10.4uSDK': same as 'ReleaseUniversal' but builds against the 10.4u SDK, required to build universal binaries on PowerPC Tiger (where the system libraries are not universal). @@ -186,23 +191,26 @@ take care to only use the project matching your DevTools and OS version: 10.2.8 SDK, useful to verify on Tiger that building on Jaguar would succeed. Notes about the native targets of the Xcode projects: - * the Xcode projects refer to the tcl and tk source dirs with a relative - path of ../../tcl and ../../tk to the project location, if your source - directories are named differently you'll need to enter the correct path - in the info panel of the 'Tcl Sources' and 'Tk Sources' groups. + * the Xcode 2 project refers to the toplevel tcl and tk source dirs through + the TCL_SRCROOT and TK_SRCROOT user build settings, by default these are + set to the project-relative paths '../../tcl' and '../../tk', if your + source directories are named differently, e.g. '../../tcl8.5', you'll + need to manually change the TCL_SRCROOT and TK_SRCROOT settings by + editing your ${USER}.pbxuser file (located inside the Wish.xcodeproj + bundle directory) with a text editor. * XCode 1.5 has a bug that causes Fix&Continue and the Build menu items Compile/Preprocess/ShowAssembly to fail in presence of relative paths to source files, as a workaround change the Path Type of the 'Tcl Sources' and 'Tk Sources' groups to 'Absolute Path' in the groups' Info panel. (fixed in Xcode 2.2) - * the native targets need a version of the unix configure scripts with - config headers enabled, this is automatically generated as - tcl/macosx/configure and tk/macosx/configure by the project but this - requires 2.59 versions of autoconf & autoheader, which are not available - on on Mac OS X 10.3 by default, and so need to be installed manually. By - default they are assumed to be installed as /usr/local/bin/autoconf-2.59 - and /usr/local/bin/autoheader-2.59, set the env vars AUTOCONF and - AUTOHEADER to their true locations if necessary. + * the native targets need a version of the unix configure scripts with config + headers enabled, this is automatically generated as tcl/macosx/configure + and tk/macosx/configure by the project but that requires 2.59 versions + of autoconf & autoheader. These are not available on on Mac OS X 10.3 by + default and need to be installed manually. By default they are assumed + to be installed as /usr/local/bin/autoconf-2.59 and + /usr/local/bin/autoheader-2.59, set the env vars AUTOCONF and AUTOHEADER + to their true locations if necessary. - To build universal binaries outside of Wish.xcodeproj, set CFLAGS as follows: export CFLAGS="-arch ppc -arch i386 \ diff --git a/macosx/Wish-Common.xcconfig b/macosx/Wish-Common.xcconfig index 635fbbb..0a9d691 100644 --- a/macosx/Wish-Common.xcconfig +++ b/macosx/Wish-Common.xcconfig @@ -9,7 +9,7 @@ // See the file "license.terms" for information on usage and redistribution // of this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// RCS: @(#) $Id: Wish-Common.xcconfig,v 1.3 2007/04/23 21:24:32 das Exp $ +// RCS: @(#) $Id: Wish-Common.xcconfig,v 1.4 2007/06/29 03:19:05 das Exp $ // HEADER_SEARCH_PATHS = $(TK_SRCROOT)/generic $(TK_SRCROOT)/xlib $(DERIVED_FILE_DIR)/tcl $(DERIVED_FILE_DIR)/tk $(HEADER_SEARCH_PATHS) @@ -42,9 +42,7 @@ TCL_CONFIGURE_ARGS = --enable-threads TCL_FRAMEWORK_DIR = $(SYMROOT)/../tcl/$(CONFIGURATION) TCL_LIBRARY = $(LIBDIR)/tcl$(VERSION) TCL_PACKAGE_PATH = "$(LIBDIR)" -TCL_SRCROOT = $(SRCROOT)/../../tcl TCL_DEFS = HAVE_TCL_CONFIG_H TK_LIBRARY = $(LIBDIR)/tk$(VERSION) -TK_SRCROOT = $(SRCROOT)/../../tk TK_DEFS = HAVE_TK_CONFIG_H TCL_NO_DEPRECATED VERSION = 8.5 diff --git a/macosx/Wish.xcodeproj/default.pbxuser b/macosx/Wish.xcodeproj/default.pbxuser index 1ab49ec..4fb516d 100644 --- a/macosx/Wish.xcodeproj/default.pbxuser +++ b/macosx/Wish.xcodeproj/default.pbxuser @@ -16,6 +16,8 @@ userBuildSettings = { GCC = /usr/bin/gcc; SYMROOT = "${SRCROOT}/../../build/tk"; + TCL_SRCROOT = "${SRCROOT}/../../tcl"; + TK_SRCROOT = "${SRCROOT}/../../tk"; }; }; 8DD76FA90486AB0100D96B5E /* tktest */ = { @@ -37,9 +39,9 @@ NO, ); argumentStrings = ( - "${SRCROOT}/../../tk/library/demos/widget", - "${SRCROOT}/../../tk/tests/all.tcl", - "${SRCROOT}/../../tk/tests/ttk/all.tcl", + "${TK_SRCROOT}/library/demos/widget", + "${TK_SRCROOT}/tests/all.tcl", + "${TK_SRCROOT}/tests/ttk/all.tcl", "-geometry +0+0", "-singleproc 1", "-verbose \"bet\"", @@ -79,12 +81,12 @@ { active = YES; name = TCL_LIBRARY; - value = "${SRCROOT}/../../tcl/library"; + value = "${TCL_SRCROOT}/library"; }, { active = YES; name = TK_LIBRARY; - value = "${SRCROOT}/../../tk/library"; + value = "${TK_SRCROOT}/library"; }, { active = YES; @@ -165,11 +167,9 @@ activeArgIndex = 0; activeArgIndices = ( YES, - NO, ); argumentStrings = ( - "${SRCROOT}/../../tk/library/demos/widget", - "${SRCROOT}/../../tk/library/demos/ttk_demo.tcl", + "${TK_SRCROOT}/library/demos/widget", ); autoAttachOnCrash = 1; configStateDict = { diff --git a/macosx/Wish.xcodeproj/project.pbxproj b/macosx/Wish.xcodeproj/project.pbxproj index fa25b9d..bf45daf 100644 --- a/macosx/Wish.xcodeproj/project.pbxproj +++ b/macosx/Wish.xcodeproj/project.pbxproj @@ -8,7 +8,6 @@ /* Begin PBXBuildFile section */ F9067BCD0BFBA2900074F726 /* tkOldTest.c in Sources */ = {isa = PBXBuildFile; fileRef = F966BAFE08F27A39005CB29B /* tkOldTest.c */; }; - F9408AF30B195C08009F7CAC /* tclMathOp.c in Sources */ = {isa = PBXBuildFile; fileRef = F9408AF20B195C08009F7CAC /* tclMathOp.c */; }; F966BDCF08F27A3F005CB29B /* tk3d.c in Sources */ = {isa = PBXBuildFile; fileRef = F966BAAC08F27A39005CB29B /* tk3d.c */; }; F966BDD108F27A3F005CB29B /* tkArgv.c in Sources */ = {isa = PBXBuildFile; fileRef = F966BAAE08F27A39005CB29B /* tkArgv.c */; }; F966BDD208F27A3F005CB29B /* tkAtom.c in Sources */ = {isa = PBXBuildFile; fileRef = F966BAAF08F27A39005CB29B /* tkAtom.c */; }; @@ -315,7 +314,6 @@ 8DD76FB20486AB0100D96B5E /* tktest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = tktest; sourceTree = BUILT_PRODUCTS_DIR; }; F91E62260C1AE686006C9D96 /* Tclsh-Info.plist.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "Tclsh-Info.plist.in"; sourceTree = ""; }; F93E5EFD09CF8711008FA367 /* tkMacOSXFont.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tkMacOSXFont.h; sourceTree = ""; }; - F9408AF20B195C08009F7CAC /* tclMathOp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = tclMathOp.c; sourceTree = ""; }; F966BA0408F27A37005CB29B /* error.xbm */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; path = error.xbm; sourceTree = ""; }; F966BA0508F27A37005CB29B /* gray12.xbm */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; path = gray12.xbm; sourceTree = ""; }; F966BA0608F27A37005CB29B /* gray25.xbm */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; path = gray25.xbm; sourceTree = ""; }; @@ -1740,6 +1738,7 @@ F96D449808F272BA004A47F5 /* tclWinThrd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = tclWinThrd.c; sourceTree = ""; }; F96D449908F272BA004A47F5 /* tclWinThrd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tclWinThrd.h; sourceTree = ""; }; F96D449A08F272BA004A47F5 /* tclWinTime.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = tclWinTime.c; sourceTree = ""; }; + F976F6A70C325FB6005066D9 /* tkMacOSXPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tkMacOSXPrivate.h; sourceTree = ""; }; F97AE7F10B65C1E900310EA2 /* Wish-Common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Wish-Common.xcconfig"; sourceTree = ""; }; F97AE82B0B65C69B00310EA2 /* Wish-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Wish-Release.xcconfig"; sourceTree = ""; }; F97AE8330B65C87F00310EA2 /* Wish-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Wish-Debug.xcconfig"; sourceTree = ""; }; @@ -1780,7 +1779,7 @@ F966C06F08F281DC005CB29B /* Frameworks */, 1AB674ADFE9D54B511CA2CBB /* Products */, ); - comments = "Copyright (c) 2004-2007 Daniel A. Steffen \n\nSee the file \"license.terms\" for information on usage and redistribution of\nthis file, and for a DISCLAIMER OF ALL WARRANTIES.\n\nRCS: @(#) $Id: project.pbxproj,v 1.24 2007/06/09 17:09:41 das Exp $\n"; + comments = "Copyright (c) 2004-2007 Daniel A. Steffen \n\nSee the file \"license.terms\" for information on usage and redistribution of\nthis file, and for a DISCLAIMER OF ALL WARRANTIES.\n\nRCS: @(#) $Id: project.pbxproj,v 1.25 2007/06/29 03:19:05 das Exp $\n"; name = Wish; path = .; sourceTree = SOURCE_ROOT; @@ -2246,6 +2245,7 @@ F966BBE208F27A3B005CB29B /* tkMacOSXMouseEvent.c */, F966BBE308F27A3B005CB29B /* tkMacOSXNotify.c */, F966BBEA08F27A3C005CB29B /* tkMacOSXPort.h */, + F976F6A70C325FB6005066D9 /* tkMacOSXPrivate.h */, F966BBEB08F27A3C005CB29B /* tkMacOSXRegion.c */, F966BBEC08F27A3C005CB29B /* tkMacOSXScale.c */, F966BBED08F27A3C005CB29B /* tkMacOSXScrlbr.c */, @@ -2640,8 +2640,7 @@ F96D432B08F272B4004A47F5 /* license.terms */, ); name = "Tcl Sources"; - path = ../../tcl; - sourceTree = SOURCE_ROOT; + sourceTree = TCL_SRCROOT; }; F96D3DF708F271BE004A47F5 /* Tk Sources */ = { isa = PBXGroup; @@ -2661,8 +2660,7 @@ F966BB9608F27A3B005CB29B /* license.terms */, ); name = "Tk Sources"; - path = ../../tk; - sourceTree = SOURCE_ROOT; + sourceTree = TK_SRCROOT; }; F96D3DFC08F272A4004A47F5 /* doc */ = { isa = PBXGroup; @@ -2945,7 +2943,6 @@ F96D3F0808F272A7004A47F5 /* tclLoad.c */, F96D3F0908F272A7004A47F5 /* tclLoadNone.c */, F96D3F0A08F272A7004A47F5 /* tclMain.c */, - F9408AF20B195C08009F7CAC /* tclMathOp.c */, F96D3F0B08F272A7004A47F5 /* tclNamesp.c */, F96D3F0C08F272A7004A47F5 /* tclNotify.c */, F96D3F0D08F272A7004A47F5 /* tclObj.c */, @@ -3710,7 +3707,6 @@ F96D45A608F272BC004A47F5 /* tclLiteral.c in Sources */, F96D45A708F272BC004A47F5 /* tclLoad.c in Sources */, F96D45A908F272BC004A47F5 /* tclMain.c in Sources */, - F9408AF30B195C08009F7CAC /* tclMathOp.c in Sources */, F96D45AA08F272BC004A47F5 /* tclNamesp.c in Sources */, F96D45AB08F272BC004A47F5 /* tclNotify.c in Sources */, F96D45AC08F272BC004A47F5 /* tclObj.c in Sources */, @@ -4203,7 +4199,7 @@ ARCHS = ppc; CFLAGS = "$(PER_ARCH_CFLAGS_ppc) $(CFLAGS)"; CPPFLAGS = "-arch ppc -isysroot $(SDKROOT) $(CPPFLAGS)"; - MACOSX_DEPLOYMENT_TARGET = 10.2; + MACOSX_DEPLOYMENT_TARGET = 10.3; PREBINDING = YES; SDKROOT = /Developer/SDKs/MacOSX10.3.9.sdk; }; @@ -4243,6 +4239,36 @@ }; name = ReleasePPC10.2.8SDK; }; + F9EEED960C2FEFD300396116 /* ReleaseUniversal10.5SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = Wish; + }; + name = ReleaseUniversal10.5SDK; + }; + F9EEED970C2FEFD300396116 /* ReleaseUniversal10.5SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = tktest; + }; + name = ReleaseUniversal10.5SDK; + }; + F9EEED990C2FEFD300396116 /* ReleaseUniversal10.5SDK */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = F97AE82B0B65C69B00310EA2 /* Wish-Release.xcconfig */; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + CFLAGS = "-arch ppc -arch i386 $(CFLAGS)"; + CPPFLAGS = "-isysroot $(SDKROOT) $(CPPFLAGS)"; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.5.sdk; + }; + name = ReleaseUniversal10.5SDK; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -4256,6 +4282,7 @@ F98BA83F0BEB6A0100E34417 /* DebugLeaks */, F95CC8AD09158F3100EA5ACE /* Release */, F91BCC4F093152310042A6BF /* ReleaseUniversal */, + F9EEED960C2FEFD300396116 /* ReleaseUniversal10.5SDK */, F9DB62080B65ADA800A370FB /* ReleaseUniversal10.4uSDK */, F9DB621F0B65AFDE00A370FB /* ReleasePPC10.3.9SDK */, F9DB62350B65B03A00A370FB /* ReleasePPC10.2.8SDK */, @@ -4273,6 +4300,7 @@ F98BA8410BEB6A0100E34417 /* DebugLeaks */, F95CC8B209158F3100EA5ACE /* Release */, F91BCC50093152310042A6BF /* ReleaseUniversal */, + F9EEED970C2FEFD300396116 /* ReleaseUniversal10.5SDK */, F9DB62090B65ADA800A370FB /* ReleaseUniversal10.4uSDK */, F9DB62200B65AFDE00A370FB /* ReleasePPC10.3.9SDK */, F9DB62360B65B03A00A370FB /* ReleasePPC10.2.8SDK */, @@ -4290,6 +4318,7 @@ F98BA8430BEB6A0100E34417 /* DebugLeaks */, F95CC8B709158F3100EA5ACE /* Release */, F91BCC51093152310042A6BF /* ReleaseUniversal */, + F9EEED990C2FEFD300396116 /* ReleaseUniversal10.5SDK */, F9DB620A0B65ADA800A370FB /* ReleaseUniversal10.4uSDK */, F9DB62210B65AFDE00A370FB /* ReleasePPC10.3.9SDK */, F9DB62370B65B03A00A370FB /* ReleasePPC10.2.8SDK */, -- cgit v0.12