summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--tools/man2tcl.c9
-rw-r--r--unix/tclUnixPort.h4
3 files changed, 17 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7afbb8b..de699a1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2003-12-09 Donal K. Fellows <donal.k.fellows@man.ac.uk>
+
+ * unix/tclUnixPort.h: #ifdef'd out declarations of errno which
+ * tools/man2tcl.c: are known to cause problems with recent
+ glibc. [Bug 852369]
+
2003-12-09 Vince Darley <vincentdarley@users.sourceforge.net>
* win/tclWinFile.c: fix to NT file permissions code [Bug 855923]
diff --git a/tools/man2tcl.c b/tools/man2tcl.c
index f7e5356..a5c71cb 100644
--- a/tools/man2tcl.c
+++ b/tools/man2tcl.c
@@ -16,7 +16,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: man2tcl.c,v 1.7 2002/05/08 23:48:13 davygrvy Exp $
+ * RCS: @(#) $Id: man2tcl.c,v 1.8 2003/12/09 15:27:47 dkf Exp $
*/
static char sccsid[] = "@(#) man2tcl.c 1.3 95/08/12 17:34:08";
@@ -32,7 +32,14 @@ static char sccsid[] = "@(#) man2tcl.c 1.3 95/08/12 17:34:08";
* Imported things that aren't defined in header files:
*/
+/*
+ * Some <errno.h> define errno to be something complex and
+ * thread-aware; in that case we definitely do not want to declare
+ * errno ourselves!
+ */
+#ifndef errno
extern int errno;
+#endif
/*
* Current line number, used for error messages.
diff --git a/unix/tclUnixPort.h b/unix/tclUnixPort.h
index bfeb161..3dfd708 100644
--- a/unix/tclUnixPort.h
+++ b/unix/tclUnixPort.h
@@ -19,7 +19,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclUnixPort.h,v 1.31 2003/11/14 23:21:02 dkf Exp $
+ * RCS: @(#) $Id: tclUnixPort.h,v 1.32 2003/12/09 15:27:48 dkf Exp $
*/
#ifndef _TCLUNIXPORT
@@ -464,7 +464,9 @@ EXTERN int gettimeofday _ANSI_ARGS_((struct timeval *tp,
* isn't generally declared in a header file anywhere.
*/
+#ifdef NO_ERRNO
extern int errno;
+#endif /* NO_ERRNO */
/*
* Not all systems declare all the errors that Tcl uses! Provide some