| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
universal builds including x86_64, for 64-bit CoreFoundation on Leopard
and for use of -mmacosx-version-min instead of MACOSX_DEPLOYMENT_TARGET.
* unix/configure: autoconf-2.13
* generic/tcl.h: add fixes for building on Leopard and support for
* unix/tclUnixPort.h: 64-bit CoreFoundation on Leopard.
* unix/tclUnixPort.h: on Darwin x86_64, disable use of vfork as it
causes execve to fail intermittently. (rdar://4685553)
* macosx/README: updates for x86_64 support and Xcode 2.3.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
notifier thread lazily upon first call to Tcl_WaitForEvent() rather than
in Tcl_InitNotifier(). Allows calling exeve() in processes where the
event loop has not yet been run (Darwin's execve() fails in processes
with more than one thread), in particular allows embedders to call
fork() followed by execve(), previously the pthread_atfork() child
handler's call to Tcl_InitNotifier() would immediately recreate the
notifier thread in the child after a fork.
* macosx/tclMacOSXNotify.c (Tcl_InitNotifier): add support for
* unix/tclUnixFCmd.c (DoRenameFile, CopyFileAtts): weakly importing
* unix/tclUnixInit.c (TclpSetInitialEncodings): symbols not available
on OSX 10.2 or 10.3, enables binaires built on later OSX versions to run
on earlier ones.
* macosx/README: document how to enable weak-linking; cleanup.
* unix/tclUnixPort.h: add support for weak-linking; conditionalize
AvailabilityMacros.h inclusion; only disable realpath on 10.2 or earlier
when threads are enabled.
* unix/tclLoadDyld.c (TclpLoadMemoryGetBuffer): change runtime Darwin
* unix/tclUnixInit.c (TclpInitPlatform): release check to use
global initialized once.
* unix/tclUnixFCmd.c (DoRenameFile, TclpObjNormalizePath): add runtime
Darwin release check to determine if realpath is threadsafe.
* unix/configure.in: add check on Darwin for compiler support of weak
* unix/tcl.m4: import and for AvailabilityMacros.h header; move
Darwin specific checks & defines that are only relevant to the tcl build
out of tcl.m4; restrict framework option to Darwin; cleanup quoting.
* unix/configure: autoconf-2.13
* unix/tclLoadDyld.c (TclpLoadMemory):
* unix/tclUnixPipe.c (TclpCreateProcess): fix signed-with-unsigned
comparison and other warnings from gcc4 -Wextra.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* unix/tcl.m4 (Darwin): recreates CoreFoundation state and notifier
thread in the child after a fork(). Note that pthread_atfork() is
available starting with Tiger only. Because vfork() is used by the core
on Darwin, [exec]/[open] are not affected by this fix, only extensions
or embedders that call fork() directly (such as TclX). However, this
only makes fork() safe from corefoundation tcl with --disable-threads;
as on all platforms, forked children may deadlock in threaded tcl due to
the potential for stale locked mutexes in the child. [Patch 923072]
* unix/configure: autoconf-2.59
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
add CFLAGS to SHLIB_LD to support passing -isysroot in env(CFLAGS) to
configure (flag can't be present twice, so can't be in both CFLAGS and
LDFLAGS during configure), don't use -prebind when deploying on 10.4,
define TCL_IO_TRACK_OS_FOR_DRIVER_WITH_BAD_BLOCKING (rdar://3171542).
(SC_ENABLE_LANGINFO, SC_TIME_HANDLER): add/fix caching, fix obsolete
autoconf macros. Sync with tk/unix/tcl.m4, sync whitespace with HEAD.
* unix/configure.in: fix obsolete autoconf macros, sync gratuitous
formatting/ordering differences with tk/unix/configure.in.
* unix/Makefile.in: add CFLAGS to tclsh/tcltest link to make executable
linking the same as during configure (needed to avoid loosing any linker
relevant flags in CFLAGS, in particular flags that can't be in LDFLAGS).
Avoid concurrent linking of tclsh and compiling of tclTestInit.o or
xtTestInit.o during parallel make.
(checkstubs, checkdoc, checkexports): dependency and Darwin fixes
* unix/tclLoadDyld.c (TclpDlopen): use NSADDIMAGE_OPTION_WITH_SEARCHING
on second NSAddImage only. [Bug 1204237]
(TclGuessPackageName): should not be MODULE_SCOPE.
(TclpLoadMemory): ppc64 and endian (i386) fixes, add support for loading
universal (fat) bundles from memory.
* unix/tclUnixPort.h:
* unix/tclUnixFCmd.c: add support for new Tiger copyfile() API to enable
copying of xattrs & ACLs by [file copy].
* generic/tcl.h: add Darwin specifc configure overrides for TCL_WIDE
defines to support fat compiles of ppc and ppc64 at the same time,
(replaces Darwin CVS fix by emoy, rdar://3693001).
add/correct location of version numbers in macosx files.
* generic/tclInt.h: clarify fat compile comment.
* unix/tclUnixPort.h: add Darwin specifc configure overrides to support
fat compiles, where configure runs only once for multiple architectures
(replaces Darwin CVS fix by emoy, rdar://3693001).
* macosx/tclMacOSXBundle.c:
* macosx/tclMacOSXNotify.c:
* unix/tclUnixNotfy.c:
* unix/tclUnixPort.h: fix #include order to support compile time
override of HAVE_COREFOUNDATION in tclUnixPort.h when building for ppc64
* macosx/Tcl.pbproj/default.pbxuser (new file):
* macosx/Tcl.pbproj/jingham.pbxuser:
* macosx/Tcl.pbproj/project.pbxproj: sync with HEAD.
* macosx/README: clarification/cleanup, sync with HEAD, document
universal (fat) builds via CFLAGS (i.e. all of ppc ppc64 i386 at once).
* macosx/Makefile: add support for reusing configure cache, build target
fixes, remove GENERIC_FLAGS override now handled by tcl.m4.
* generic/tclIOUtil.c:
* generic/tclRegexp.c:
* generic/tclVar.c: declare globals used only in own file as static
(sync with HEAD).
* generic/rege_dfa.c (getvacant):
* generic/regexec.c (cfind):
* generic/tclCompExpr.c (CompileSubExpr):
* unix/tclUnixChan.c (TclUnixWaitForFile): initialise variables to
silence gcc 4 warnings.
* generic/regguts.h: only #define NDEBUG if not already #defined.
* macosx/tclMacOSXNotify.c: sync whitespace & comments with HEAD
* unix/configure: regen.
|
| |
|
|
|
|
|
|
| |
* unix/configure.in: corrected framework finalization to softlink
stub library to Versions/8.x subdir instead of Versions/Current.
* unix/configure: autoconf-2.59
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* macosx/README:
* macosx/Tcl-Info.plist.in (new file):
* unix/Makefile.in:
* unix/configure.in:
* unix/tcl.m4:
* unix/tclUnixInit.c: moved all Darwin framework build support from
macosx/Makefile into the standard unix configure/make buildsystem, the
macosx/Makefile is no longer required to build Tcl.framework (but its
functionality is still available for backwards compatibility).
* unix/configure: autoconf-2.13
|
|
|
|
|
|
| |
CFRelease of runLoopSource in Tcl_InitNotifier (reported by Zoran):
CFRunLoopAddSource doesn't CFRetain, so can only CFRelease the
runLoopSource in Tcl_FinalizeNotifier.
|
|
|
|
|
|
| |
CFRelease of runLoopSource in Tcl_InitNotifier (reported by Zoran):
CFRunLoopAddSource doesn't CFRetain, so can only CFRelease the
runLoopSource in Tcl_FinalizeNotifier.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* unix/tclUnixInit.c:
* unix/tcl.m4 (Darwin): made use of CoreFoundation API configurable
and added test of CoreFoundation availablility to allow building on
ppc64, replaced HAVE_CFBUNDLE by HAVE_COREFOUNDATION; test for
availability of Tiger or later OSSpinLockLock API.
* unix/tclUnixNotfy.c:
* unix/Makefile.in:
* macosx/tclMacOSXNotify.c (new file): when CoreFoundation is
available, use new CFRunLoop based notifier: allows easy integration
with other event loops on Mac OS X, in particular the TkAqua Carbon
event loop is now integrated via a standard tcl event source (instead
of TkAqua upon loading having to finalize the exsting notifier and
replace it with its custom version). [Patch 1202052]
* tests/unixNotfy.test: don't run unthreaded tests on Darwin
since notifier may be using threads even in unthreaded core.
* unix/tclUnixPort.h:
* unix/tcl.m4 (Darwin): test for thread-unsafe realpath durning
configure, as Darwin 7 and later realpath is threadsafe.
* macosx/tclMacOSXBundle.c:
* unix/tclLoadDyld.c:
* unix/tclUnixInit.c: fixed gcc 4.0 warnings.
* unix/configure: autoconf-2.13
|
|
|
|
| |
versions + other small fixes/cleanup.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* unix/configure.in:
* unix/tclUnixInit.c (MacOSXGetLibraryPath): changed detection
of tcl framework build when determining tclLibPath from overloaded
TCL_LIBRARY to configuration define TCL_FRAMEWORK. [Bug 1068088]
* unix/configure: autoconf-2.13
* tests/unixInit.test (7.1): fixed failure when running tests
with -tmpdir arg not set to working dir.
|
|
|
|
|
| |
Prevent parallel make from building several targets at the same
time.
|
|
|
|
|
| |
CFBundleOpenBundleResourceMap symbol, since it is only present in
full CoreFoundation on Mac OS X and not in CFLite on pure Darwin.
|
| |
|
|
|
|
| |
ThreadAlloc range checking.
|
| |
|
|
|
|
| |
* mac/tclMacResource.c: fixed possible NULL dereference (bdesgraupes).
|
|
|
|
| |
on command line. Replaced explict use of /usr/bin by ${BINDIR}.
|
|
|
|
| |
in addition to default html help.
|
|
|
|
| |
during html help building (Landon Fuller).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
first call to Tcl_MacOSXOpenVersionedBundleResources() for a given
bundle identifier to succeed. This caused the tcl runtime library
not to be found in all interps created after the inital one.
|
|
|
|
|
|
| |
in versioned framework subdirectories to be identical to location
in framework toplevel; fixed stub library symbolic links to be
tcl version specific.
|
|
|
|
| |
* macosx/Tcl.pbproj/project.pbxproj: updated copyright year.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* macosx/tclMacOSXBundle.c: added extended version of the
Tcl_MacOSXOpenBundleResources() API taking an extra version number
argument: Tcl_MacOSXOpenVersionedBundleResources().
This is needed to be able to access bundle resources in versioned
frameworks such as Tcl and Tk, otherwise if multiple versions were
installed, only the latest version's resources could be accessed.
[Bug 736774]
* unix/tclUnixInit.c (Tcl_MacOSXGetLibraryPath): use new versioned
bundle resource API to get tcl runtime library for TCL_VERSION.
[Bug 736774]
* generic/tclPlatDecls.h:
* generic/tclStubInit.c: regen.
* unix/tclUnixPort.h: worked around the issue of realpath() not
being thread-safe on Mac OS X by defining NO_REALPATH for threaded
builds on Mac OS X. [Bug 711232]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of always invalidating unicode rep (if the obj has a string rep).
Added hasUnicode flag to String struct, allows decoupling of
validity of unicode rep from buffer size allocated to it (improves
memory allocation efficiency). [Bugs #686782, #671138, #635200]
* macosx/Tcl.pbproj/project.pbxproj:
* macosx/Makefile: reworked embedded build to no longer require
relinking but to use install_name_tool instead to change the
install_names for embedded frameworks.
* macosx/Tcl.pbproj/project.pbxproj: preserve mod dates when
running 'make install' to build framework (avoids bogus rebuilds
of dependent frameworks because tcl headers appear changed).
* tests/ioCmd.test (iocmd-1.8): fix failure when system encoding
is utf-8: use iso8859-1 encoding explicitly.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tcl.h:
* tools/tcl.wse.in:
* unix/configure:
* unix/configure.in:
* unix/tcl.m4:
* unix/tcl.spec:
* win/README.binary:
* win/configure:
* win/configure.in:
* macosx/Tcl.pbproj/project.pbxproj:
|
|
|
|
|
|
|
|
|
|
|
|
| |
* library/package.tcl (tclPkgUnknown): on macosx, search inside the
Resources/Scripts subdirectory of any potential package directory
* macosx/Tcl.pbproj/project.pbxproj: add standard Frameworks dirs
to TCL_PACKAGE_PATH make argument.
* unix/tclUnixInit.c (TclpSetVariables): on macosx, add embedded
framework dirs to tcl_pkgPath: @executable_path/../Frameworks and
@executable_path/../PrivateFrameworks (if they exist), as well as
the dirs in DYLD_FRAMEWORK_PATH (if set). [Patch #624509]
use standard MAXPATHLEN instead of literal 1024
|
|
|
|
|
| |
* generic/tcl.h: Added reminder comment to edit
macosx/Tcl.pbproj/project.pbxproj when version number changes.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
documentation during embedded build.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and set it to default value ${LIB_RUNTIME_DIR}
* unix/tcl.m4 (Darwin): use DYLIB_INSTALL_DIR instead of
LIB_RUNTIME_DIR in the -install_name argument to ld.
* unix/configure: regen.
* macosx/Tcl.pbproj/project.pbxproj:
* macosx/Makefile: added support for building Tcl as an embedded
framework, i.e. using an dyld install_name containing
@executable_path/../Frameworks via the new DYLIB_INSTALL_DIR
unix/Makefile variable.
|
|
|
|
| |
8.4.0 and updated copyright info.
|
|
* generic/tcl.decls: added new macosx specific entry to stubs table.
* tools/genStubs.tcl: added generation of platform guards for
macosx. This is a little more complex than it seems, because MacOS
X IS "unix" plus a little bit, for the purposes of Tcl. BUT
unfortunately, Tk uses "unix" to mean X11. So added platform keys
for macosx (the little added to "unix"), "aqua" and "x11" to
distinguish these for Tk.
* generic/tcl.h: added a #ifnded RESOURCE_INCLUDED so that tcl.h
can be passed to the resource compiler.
* generic/tcl.h:
* generic/tclNotify.c: added a few Notifier procs, to be able to
modify more bits of the Tcl notifier dynamically. Required to get
Mac OS X Tk to live on top of the Tcl Unix threaded notifier.
Changes the size of the Tcl_NotifierProcs structure, but doesn't
move any elements around.
* unix/tclUnixNotfy.c: moved the call to Tcl_ConditionNotify till
AFTER we are done mucking with the pointer swap. Fixes cases where
the thread waiting on the condition wakes & accesses the
waitingListPtr before it gets reset, causing a hang.
* library/auto.tcl (tcl_findLibrary): added checking the
directories in the tcl_pkgPath for library files on macosx to
enable support of the standard Mac OSX library locations
* unix/Makefile.in:
* unix/configure.in:
* unix/tcl.m4: added MAC_OSX_DIR. Added PLAT_OBJS to the OBJS:
there are some MacOS X specific files now for Tcl, and when I get
he resource & applescript stuff ported over, and restore support
for FindFiles, etc, there will be a few more.
Added LD_LIBRARY_PATH_VAR configure variable to avoid having to set
all possible LD_LIBRARY_PATH analogues on all platforms.
LD_LIBRARY_PATH_VAR is "LD_LIBRARY_PATH" by default, "LIBPATH" on
AIX, "SHLIB_PATH" on HPUX and "DYLD_LIBRARY_PATH" on Mac OSX.
Added configure option to package Tcl as a framework on Mac OSX.
* macosx/tclMacOSXBundle.c (new): support for finding Tcl extension
packaged as 'bundles' in the standard Mac OSX library locations.
* unix/tclUnixInit.c: added support for findig the tcl script
library inside Tcl packaged as a framework on Mac OSX.
* macosx/Tcl.pbproj/jingham.pbxuser (new):
* macosx/Tcl.pbproj/project.pbxproj (new): project for Apple's
ProjectBuilder IDE.
* macosx/Makefile (new): simple makefile for building the project
from the command line via the ProjectBuilder tool 'pbxbuild'.
* unix/configure:
* generic/tclStubInit.c:
* generic/tclPlatDecls.h: regen
|