summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordas <das@noemail.net>2007-04-29 02:21:31 (GMT)
committerdas <das@noemail.net>2007-04-29 02:21:31 (GMT)
commit2fddddfa2ec2a38ab4916bea10e8cec9fb4bd375 (patch)
treef3b588b14f9fc50815a26ad5cff212efc666c721
parent05d11af8a17726241117e5ba355eadf3438af270 (diff)
downloadtcl-2fddddfa2ec2a38ab4916bea10e8cec9fb4bd375.zip
tcl-2fddddfa2ec2a38ab4916bea10e8cec9fb4bd375.tar.gz
tcl-2fddddfa2ec2a38ab4916bea10e8cec9fb4bd375.tar.bz2
* macosx/tclMacOSXNotify.c: fix warnings.
* macosx/README: sync whitespace/formatting with HEAD. * macosx/tclMacOSXBundle.c: * macosx/tclMacOSXNotify.c: * macosx/Makefile: fix/add copyright and license refs. * macosx/tclMacOSXBundle.c: * macosx/Tcl-Info.plist.in: FossilOrigin-Name: e6df3a40f5729a0b8a58c8a873fa195dc73bfb39
-rw-r--r--ChangeLog22
-rw-r--r--macosx/Makefile21
-rw-r--r--macosx/README21
-rw-r--r--macosx/Tcl-Info.plist.in17
-rw-r--r--macosx/tclMacOSXBundle.c185
-rw-r--r--macosx/tclMacOSXNotify.c54
6 files changed, 186 insertions, 134 deletions
diff --git a/ChangeLog b/ChangeLog
index 055bf30..7f31279 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,25 @@
+2007-04-29 Daniel Steffen <das@users.sourceforge.net>
+
+ * unix/tclUnixFCmd.c: add workaround for crashing bug in fts_open()
+ * unix/tclUnixInit.c: without FTS_NOSTAT on 64bit Darwin 8 or earlier.
+
+ * unix/tclLoadDyld.c (TclpLoadMemory): fix (void*) arithmetic.
+
+ * macosx/tclMacOSXNotify.c: fix warnings.
+
+ * macosx/README: sync whitespace/formatting with HEAD.
+ * macosx/tclMacOSXBundle.c:
+ * macosx/tclMacOSXNotify.c:
+ * unix/tclLoadDyld.c:
+
+ * macosx/Makefile: fix/add copyright and license refs.
+ * macosx/tclMacOSXBundle.c:
+ * macosx/Tcl-Info.plist.in:
+
+ * unix/Makefile.in (dist): copy license.terms to dist macosx dir.
+ * unix/configure.in: install license.terms into Tcl.framework.
+ * unix/configure: autoconf-2.13
+
2007-04-21 Kevin B. Kenny <kennyb@acm.org>
* generic/tclClock.c: Restored Cygwin buildability [Bug 1387154]
diff --git a/macosx/Makefile b/macosx/Makefile
index 8ec7027..a8acc28 100644
--- a/macosx/Makefile
+++ b/macosx/Makefile
@@ -4,7 +4,12 @@
# uses the standard unix build system in tcl/unix (which can be used directly instead of this
# if you are not using the tk/macosx projects).
#
-# RCS: @(#) $Id: Makefile,v 1.5.2.16 2006/10/16 17:34:42 das Exp $
+# Copyright (c) 2002-2007 Daniel A. Steffen <das@users.sourceforge.net>
+#
+# See the file "license.terms" for information on usage and redistribution of
+# this file, and for a DISCLAIMER OF ALL WARRANTIES.
+#
+# RCS: @(#) $Id: Makefile,v 1.5.2.17 2007/04/29 02:21:33 das Exp $
#
########################################################################################################
@@ -18,8 +23,8 @@ BUILD_DIR ?= ${CURDIR}/../../build
SYMROOT ?= ${BUILD_DIR}/${PROJECT}
OBJROOT ?= ${SYMROOT}
-EXTRA_CONFIGURE_ARGS ?=
-EXTRA_MAKE_ARGS ?=
+EXTRA_CONFIGURE_ARGS ?=
+EXTRA_MAKE_ARGS ?=
INSTALL_PATH ?= /Library/Frameworks
PREFIX ?= /usr/local
@@ -28,12 +33,12 @@ LIBDIR ?= ${INSTALL_PATH}
MANDIR ?= ${PREFIX}/man
# set to non-empty value to install manpages in addition to html help:
-INSTALL_MANPAGES ?=
+INSTALL_MANPAGES ?=
#-------------------------------------------------------------------------------------------------------
# meta targets
-meta := all install embedded install-embedded clean distclean test
+meta := all install embedded install-embedded clean distclean test
styles := develop deploy
@@ -75,7 +80,7 @@ deploy_make_args := BUILD_STYLE=Deployment INSTALL_TARGET=install-strip \
embedded_make_args := EMBEDDED_BUILD=1
install_make_args := INSTALL_BUILD=1
-${targets}:
+${targets}:
${MAKE} ${action}${PROJECT} \
$(foreach s,${styles} embedded install,$(if $(findstring $s,$@),${${s}_make_args}))
@@ -122,7 +127,7 @@ ${PROJECT}:
${MAKE} install-${PROJECT} INSTALL_ROOT=${OBJ_DIR}/
${OBJ_DIR}/Makefile: ${UNIX_DIR}/Makefile.in ${UNIX_DIR}/configure \
- ${UNIX_DIR}/tclConfig.sh.in Tcl-Info.plist.in
+ ${UNIX_DIR}/tclConfig.sh.in Tcl-Info.plist.in
mkdir -p ${OBJ_DIR} && cd ${OBJ_DIR} && \
if [ ${UNIX_DIR}/configure -nt config.status ]; then ${UNIX_DIR}/configure \
--prefix=${PREFIX} --bindir=${BINDIR} --libdir=${LIBDIR} \
@@ -188,7 +193,7 @@ clean-${PROJECT}: %-${PROJECT}:
distclean-${PROJECT}: %-${PROJECT}: clean-${PROJECT}
${DO_MAKE}
rm -rf ${OBJ_DIR}
-
+
test-${PROJECT}: %-${PROJECT}: build-${PROJECT}
${DO_MAKE}
diff --git a/macosx/README b/macosx/README
index 40fae5b..94576c6 100644
--- a/macosx/README
+++ b/macosx/README
@@ -1,7 +1,7 @@
-Tcl Mac OS X README
------------------
+Tcl Mac OS X README
+-------------------
-RCS: @(#) $Id: README,v 1.1.2.8 2006/08/21 06:10:03 das Exp $
+RCS: @(#) $Id: README,v 1.1.2.9 2007/04/29 02:21:33 das Exp $
This is the README file for the Mac OS X/Darwin version of Tcl.
@@ -93,10 +93,11 @@ project, this simply calls through to the tcl/macosx/Makefile.
export CFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 \
-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4"
This requires Mac OS X 10.4 and Xcode 2.4 (or Xcode 2.2 if -arch x86_64 is
-omitted, but _not_ Xcode 2.1) and will work on any of the architectures (on
-intel Macs, the -isysroot may not be required). Note that it is not possible to
-configure universal builds correctly if the current architecture is not present
-in CFLAGS (i.e. -arch `arch` must be there).
+omitted, but _not_ Xcode 2.1) and will work on any of the architectures (the
+-isysroot flag is only required on PowerPC Tiger).
+Note that configure requires CFLAGS to contain a least one architecture that can
+be run on the build machine (i.e. ppc on G3/G4, ppc or ppc64 on G5, ppc or i386
+on Core and ppc, i386 or x86_64 on Core2/Xeon).
Universal builds of Tcl TEA extensions are also possible with CFLAGS set as
above, they will be [load]able by universal as well as thin binaries of Tcl.
@@ -118,12 +119,12 @@ where ${ver} is a shell variable containing the tcl version number (for example
'8.4.12').
Setup the shell variable as follows:
set ver="8.4.12" ;: if your shell is csh
- ver="8.4.12" ;: if your shell is sh
+ ver="8.4.12" ;: 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
+ set ver="" ;: if your shell is csh
+ ver="" ;: if your shell is sh
- The following steps will build Tcl from the Terminal, assuming you are located
in the directory containing the tcl source tree:
diff --git a/macosx/Tcl-Info.plist.in b/macosx/Tcl-Info.plist.in
index b942956..2031628 100644
--- a/macosx/Tcl-Info.plist.in
+++ b/macosx/Tcl-Info.plist.in
@@ -1,5 +1,13 @@
<?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">
+<!--
+ Copyright (c) 2005-2007 Daniel A. Steffen <das@users.sourceforge.net>
+
+ See the file "license.terms" for information on usage and redistribution of
+ this file, and for a DISCLAIMER OF ALL WARRANTIES.
+
+ RCS: @(#) $Id: Tcl-Info.plist.in,v 1.1.2.3 2007/04/29 02:21:33 das Exp $
+-->
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
@@ -7,14 +15,17 @@
<key>CFBundleExecutable</key>
<string>@TCL_LIB_FILE@</string>
<key>CFBundleGetInfoString</key>
- <string>Tcl Library @TCL_VERSION@, Copyright © @TCL_YEAR@ Tcl Core Team.
-Initial MacOS X Port by Jim Ingham &lt;jingham@apple.com&gt; &amp; Ian Reid, Copyright © 2001-2002, Apple Computer, Inc.</string>
+ <string>Tcl @TCL_VERSION@@TCL_PATCH_LEVEL@,
+Copyright © @TCL_YEAR@ Tcl Core Team,
+Copyright © 2001-@TCL_YEAR@ Daniel A. Steffen,
+Initial MacOS X Port by Jim Ingham &amp; Ian Reid,
+Copyright © 2001-2002, Apple Computer, Inc.</string>
<key>CFBundleIdentifier</key>
<string>com.tcltk.tcllibrary</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
- <string>Tcl Library @TCL_VERSION@</string>
+ <string>Tcl @TCL_VERSION@</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
diff --git a/macosx/tclMacOSXBundle.c b/macosx/tclMacOSXBundle.c
index 28e4977..3355e5f 100644
--- a/macosx/tclMacOSXBundle.c
+++ b/macosx/tclMacOSXBundle.c
@@ -1,54 +1,54 @@
/*
* tclMacOSXBundle.c --
*
- * This file implements functions that inspect CFBundle structures
- * on MacOS X.
- *
- * Copyright 2001, Apple Computer, Inc.
- *
- * The following terms apply to all files originating from Apple
- * Computer, Inc. ("Apple") and associated with the software
- * unless explicitly disclaimed in individual files.
- *
- *
- * Apple hereby grants permission to use, copy, modify,
- * distribute, and license this software and its documentation
- * for any purpose, provided that existing copyright notices are
- * retained in all copies and that this notice is included
- * verbatim in any distributions. No written agreement, license,
- * or royalty fee is required for any of the authorized
- * uses. Modifications to this software may be copyrighted by
- * their authors and need not follow the licensing terms
- * described here, provided that the new terms are clearly
- * indicated on the first page of each file where they apply.
- *
- *
- * IN NO EVENT SHALL APPLE, THE AUTHORS OR DISTRIBUTORS OF THE
- * SOFTWARE BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL,
- * INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
- * THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF,
- * EVEN IF APPLE OR THE AUTHORS HAVE BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE. APPLE, THE AUTHORS AND
- * DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING,
- * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS
- * SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND APPLE,THE
- * AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
- * MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
- *
- * GOVERNMENT USE: If you are acquiring this software on behalf
- * of the U.S. government, the Government shall have only
- * "Restricted Rights" in the software and related documentation
- * as defined in the Federal Acquisition Regulations (FARs) in
- * Clause 52.227.19 (c) (2). If you are acquiring the software
- * on behalf of the Department of Defense, the software shall be
- * classified as "Commercial Computer Software" and the
- * Government shall have only "Restricted Rights" as defined in
- * Clause 252.227-7013 (c) (1) of DFARs. Notwithstanding the
- * foregoing, the authors grant the U.S. Government and others
- * acting in its behalf permission to use and distribute the
- * software in accordance with the terms specified in this
- * license.
+ * This file implements functions that inspect CFBundle structures on
+ * MacOS X.
+ *
+ * Copyright 2001, Apple Computer, Inc.
+ * Copyright (c) 2003-2007 Daniel A. Steffen <das@users.sourceforge.net>
+ *
+ * See the file "license.terms" for information on usage and redistribution of
+ * this file, and for a DISCLAIMER OF ALL WARRANTIES.
+ *
+ * The following terms apply to all files originating from Apple
+ * Computer, Inc. ("Apple") and associated with the software unless
+ * explicitly disclaimed in individual files.
+ *
+ * Apple hereby grants permission to use, copy, modify, distribute, and
+ * license this software and its documentation for any purpose, provided
+ * that existing copyright notices are retained in all copies and that
+ * this notice is included verbatim in any distributions. No written
+ * agreement, license, or royalty fee is required for any of the
+ * authorized uses. Modifications to this software may be copyrighted by
+ * their authors and need not follow the licensing terms described here,
+ * provided that the new terms are clearly indicated on the first page of
+ * each file where they apply.
+ *
+ * IN NO EVENT SHALL APPLE, THE AUTHORS OR DISTRIBUTORS OF THE SOFTWARE
+ * BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
+ * CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS
+ * DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN IF APPLE OR THE
+ * AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. APPLE,
+ * THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES,
+ * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
+ * NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND
+ * APPLE,THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
+ * MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ * GOVERNMENT USE: If you are acquiring this software on behalf of the
+ * U.S. government, the Government shall have only "Restricted Rights" in
+ * the software and related documentation as defined in the Federal
+ * Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you are
+ * acquiring the software on behalf of the Department of Defense, the
+ * software shall be classified as "Commercial Computer Software" and the
+ * Government shall have only "Restricted Rights" as defined in Clause
+ * 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the
+ * authors grant the U.S. Government and others acting in its behalf
+ * permission to use and distribute the software in accordance with the
+ * terms specified in this license.
+ *
+ * RCS: @(#) $Id: tclMacOSXBundle.c,v 1.3.2.6 2007/04/29 02:21:33 das Exp $
*/
#include "tclPort.h"
@@ -65,13 +65,12 @@
*
* Given the bundle name for a shared library, this routine sets
* libraryPath to the Resources/Scripts directory in the framework
- * package. If hasResourceFile is true, it will also open the main
+ * package. If hasResourceFile is true, it will also open the main
* resource file for the bundle.
*
- *
* Results:
* TCL_OK if the bundle could be opened, and the Scripts folder found.
- * TCL_ERROR otherwise.
+ * TCL_ERROR otherwise.
*
* Side effects:
* libraryVariableName may be set, and the resource file opened.
@@ -83,12 +82,12 @@ int
Tcl_MacOSXOpenBundleResources(
Tcl_Interp *interp,
CONST char *bundleName,
- int hasResourceFile,
- int maxPathLen,
- char *libraryPath)
+ int hasResourceFile,
+ int maxPathLen,
+ char *libraryPath)
{
return Tcl_MacOSXOpenVersionedBundleResources(interp, bundleName,
- NULL, hasResourceFile, maxPathLen, libraryPath);
+ NULL, hasResourceFile, maxPathLen, libraryPath);
}
/*
@@ -96,16 +95,15 @@ Tcl_MacOSXOpenBundleResources(
*
* Tcl_MacOSXOpenVersionedBundleResources --
*
- * Given the bundle and version name for a shared library (version
- * name can be NULL to indicate latest version), this routine sets
- * libraryPath to the Resources/Scripts directory in the framework
- * package. If hasResourceFile is true, it will also open the main
- * resource file for the bundle.
- *
+ * Given the bundle and version name for a shared library (version name
+ * can be NULL to indicate latest version), this routine sets libraryPath
+ * to the Resources/Scripts directory in the framework package. If
+ * hasResourceFile is true, it will also open the main resource file for
+ * the bundle.
*
* Results:
* TCL_OK if the bundle could be opened, and the Scripts folder found.
- * TCL_ERROR otherwise.
+ * TCL_ERROR otherwise.
*
* Side effects:
* libraryVariableName may be set, and the resource file opened.
@@ -118,9 +116,9 @@ Tcl_MacOSXOpenVersionedBundleResources(
Tcl_Interp *interp,
CONST char *bundleName,
CONST char *bundleVersion,
- int hasResourceFile,
- int maxPathLen,
- char *libraryPath)
+ int hasResourceFile,
+ int maxPathLen,
+ char *libraryPath)
{
#ifdef HAVE_COREFOUNDATION
CFBundleRef bundleRef;
@@ -129,32 +127,39 @@ Tcl_MacOSXOpenVersionedBundleResources(
libraryPath[0] = '\0';
- bundleNameRef = CFStringCreateWithCString(NULL,
- bundleName, kCFStringEncodingUTF8);
+ bundleNameRef = CFStringCreateWithCString(NULL, bundleName,
+ kCFStringEncodingUTF8);
bundleRef = CFBundleGetBundleWithIdentifier(bundleNameRef);
CFRelease(bundleNameRef);
if (bundleVersion && bundleRef) {
- /* create bundle from bundleVersion subdirectory of 'Versions' */
- CFBundleRef versionedBundleRef = NULL;
+ /*
+ * Create bundle from bundleVersion subdirectory of 'Versions'.
+ */
+
+ CFBundleRef versionedBundleRef = NULL;
CFURLRef versionedBundleURL = NULL;
CFStringRef bundleVersionRef = CFStringCreateWithCString(NULL,
bundleVersion, kCFStringEncodingUTF8);
CFURLRef bundleURL = CFBundleCopyBundleURL(bundleRef);
+
if (bundleURL) {
CFStringRef bundleTailRef = CFURLCopyLastPathComponent(bundleURL);
+
if (bundleTailRef) {
- if (CFStringCompare(bundleTailRef,bundleVersionRef,0)
- == kCFCompareEqualTo) {
+ if (CFStringCompare(bundleTailRef, bundleVersionRef, 0) ==
+ kCFCompareEqualTo) {
versionedBundleRef = bundleRef;
}
CFRelease(bundleTailRef);
}
}
+
if (bundleURL && !versionedBundleRef) {
CFURLRef versURL = CFURLCreateCopyAppendingPathComponent(NULL,
- bundleURL, CFSTR("Versions"), TRUE);
+ bundleURL, CFSTR("Versions"), TRUE);
+
if (versURL) {
versionedBundleURL = CFURLCreateCopyAppendingPathComponent(
NULL, versURL, bundleVersionRef, TRUE);
@@ -170,36 +175,44 @@ Tcl_MacOSXOpenVersionedBundleResources(
bundleRef = versionedBundleRef;
}
- if (bundleRef) {
+ if (bundleRef) {
if (hasResourceFile) {
- /* Dynamically acquire address for CFBundleOpenBundleResourceMap
- * symbol, since it is only present in full CoreFoundation
- * on Mac OS X and not in CFLite on pure Darwin. */
+ /*
+ * Dynamically acquire address for CFBundleOpenBundleResourceMap
+ * symbol, since it is only present in full CoreFoundation on Mac
+ * OS X and not in CFLite on pure Darwin.
+ */
+
static int initialized = FALSE;
static short (*openresourcemap)(CFBundleRef) = NULL;
- if(!initialized) {
+
+ if (!initialized) {
NSSymbol nsSymbol = NULL;
- if(NSIsSymbolNameDefinedWithHint("_CFBundleOpenBundleResourceMap", "CoreFoundation")) {
- nsSymbol = NSLookupAndBindSymbolWithHint("_CFBundleOpenBundleResourceMap", "CoreFoundation");
- if(nsSymbol) {
+ if (NSIsSymbolNameDefinedWithHint(
+ "_CFBundleOpenBundleResourceMap", "CoreFoundation")) {
+ nsSymbol = NSLookupAndBindSymbolWithHint(
+ "_CFBundleOpenBundleResourceMap","CoreFoundation");
+ if (nsSymbol) {
openresourcemap = NSAddressOfSymbol(nsSymbol);
}
}
initialized = TRUE;
}
+
if (openresourcemap) {
short refNum;
+
refNum = openresourcemap(bundleRef);
}
}
- libURL = CFBundleCopyResourceURL(bundleRef,
- CFSTR("Scripts"), NULL, NULL);
+ libURL = CFBundleCopyResourceURL(bundleRef, CFSTR("Scripts"),
+ NULL, NULL);
if (libURL) {
/*
- * FIXME: This is a quick fix, it is probably not right
- * for internationalization.
+ * FIXME: This is a quick fix, it is probably not right for
+ * internationalization.
*/
CFURLGetFileSystemRepresentation(libURL, TRUE,
@@ -207,9 +220,9 @@ Tcl_MacOSXOpenVersionedBundleResources(
CFRelease(libURL);
}
}
-
+
if (libraryPath[0]) {
- return TCL_OK;
+ return TCL_OK;
} else {
return TCL_ERROR;
}
diff --git a/macosx/tclMacOSXNotify.c b/macosx/tclMacOSXNotify.c
index 8a5fe0f..ea94e8e 100644
--- a/macosx/tclMacOSXNotify.c
+++ b/macosx/tclMacOSXNotify.c
@@ -7,13 +7,12 @@
*
* Copyright (c) 1995-1997 Sun Microsystems, Inc.
* Copyright 2001, Apple Computer, Inc.
- * Copyright (c) 2005 Tcl Core Team.
- * Copyright (c) 2005-2006 Daniel A. Steffen <das@users.sourceforge.net>
+ * Copyright (c) 2005-2007 Daniel A. Steffen <das@users.sourceforge.net>
*
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclMacOSXNotify.c,v 1.1.2.11 2007/03/07 23:44:33 das Exp $
+ * RCS: @(#) $Id: tclMacOSXNotify.c,v 1.1.2.12 2007/04/29 02:21:33 das Exp $
*/
#include "tclInt.h"
@@ -275,7 +274,8 @@ static CFStringRef tclEventsOnlyRunLoopMode = NULL;
* Static routines defined in this file.
*/
-static void NotifierThreadProc(ClientData clientData);
+static void NotifierThreadProc(ClientData clientData)
+ __attribute__ ((__noreturn__));
static int FileHandlerEventProc(Tcl_Event *evPtr, int flags);
#ifdef HAVE_PTHREAD_ATFORK
@@ -427,8 +427,8 @@ Tcl_InitNotifier(void)
*/
void
-Tcl_FinalizeNotifier(clientData)
- ClientData clientData; /* Not used. */
+Tcl_FinalizeNotifier(
+ ClientData clientData) /* Not used. */
{
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
@@ -509,8 +509,8 @@ Tcl_FinalizeNotifier(clientData)
*/
void
-Tcl_AlertNotifier(clientData)
- ClientData clientData;
+Tcl_AlertNotifier(
+ ClientData clientData)
{
ThreadSpecificData *tsdPtr = (ThreadSpecificData *) clientData;
@@ -542,8 +542,8 @@ Tcl_AlertNotifier(clientData)
*/
void
-Tcl_SetTimer(timePtr)
- Tcl_Time *timePtr; /* Timeout value, may be NULL. */
+Tcl_SetTimer(
+ Tcl_Time *timePtr) /* Timeout value, may be NULL. */
{
/*
* The interval timer doesn't do anything in this implementation, because
@@ -573,8 +573,8 @@ Tcl_SetTimer(timePtr)
*/
void
-Tcl_ServiceModeHook(mode)
- int mode; /* Either TCL_SERVICE_ALL, or
+Tcl_ServiceModeHook(
+ int mode) /* Either TCL_SERVICE_ALL, or
* TCL_SERVICE_NONE. */
{
}
@@ -596,15 +596,15 @@ Tcl_ServiceModeHook(mode)
*/
void
-Tcl_CreateFileHandler(fd, mask, proc, clientData)
- int fd; /* Handle of stream to watch. */
- int mask; /* OR'ed combination of TCL_READABLE,
+Tcl_CreateFileHandler(
+ int fd, /* Handle of stream to watch. */
+ int mask, /* OR'ed combination of TCL_READABLE,
* TCL_WRITABLE, and TCL_EXCEPTION: indicates
* conditions under which proc should be
* called. */
- Tcl_FileProc *proc; /* Function to call for each selected
+ Tcl_FileProc *proc, /* Function to call for each selected
* event. */
- ClientData clientData; /* Arbitrary data to pass to proc. */
+ ClientData clientData) /* Arbitrary data to pass to proc. */
{
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
FileHandler *filePtr;
@@ -673,8 +673,8 @@ Tcl_CreateFileHandler(fd, mask, proc, clientData)
*/
void
-Tcl_DeleteFileHandler(fd)
- int fd; /* Stream id for which to remove callback
+Tcl_DeleteFileHandler(
+ int fd) /* Stream id for which to remove callback
* function. */
{
FileHandler *filePtr, *prevPtr;
@@ -766,9 +766,9 @@ Tcl_DeleteFileHandler(fd)
*/
static int
-FileHandlerEventProc(evPtr, flags)
- Tcl_Event *evPtr; /* Event to service. */
- int flags; /* Flags that indicate what events to handle,
+FileHandlerEventProc(
+ Tcl_Event *evPtr, /* Event to service. */
+ int flags) /* Flags that indicate what events to handle,
* such as TCL_FILE_EVENTS. */
{
int mask;
@@ -835,8 +835,8 @@ FileHandlerEventProc(evPtr, flags)
*/
int
-Tcl_WaitForEvent(timePtr)
- Tcl_Time *timePtr; /* Maximum block time, or NULL. */
+Tcl_WaitForEvent(
+ Tcl_Time *timePtr) /* Maximum block time, or NULL. */
{
FileHandler *filePtr;
FileHandlerEvent *fileEvPtr;
@@ -1033,8 +1033,8 @@ Tcl_WaitForEvent(timePtr)
*/
static void
-NotifierThreadProc(clientData)
- ClientData clientData; /* Not used. */
+NotifierThreadProc(
+ ClientData clientData) /* Not used. */
{
ThreadSpecificData *tsdPtr;
fd_set readableMask;
@@ -1182,7 +1182,7 @@ NotifierThreadProc(clientData)
}
}
}
- pthread_exit (0);
+ pthread_exit(0);
}
#ifdef HAVE_PTHREAD_ATFORK