summaryrefslogtreecommitdiffstats
path: root/unix
diff options
context:
space:
mode:
Diffstat (limited to 'unix')
-rw-r--r--unix/tclUnixPort.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/unix/tclUnixPort.h b/unix/tclUnixPort.h
index ed75135..2da95b5 100644
--- a/unix/tclUnixPort.h
+++ b/unix/tclUnixPort.h
@@ -19,12 +19,16 @@
* 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.64 2008/02/28 20:14:12 jenglish Exp $
+ * RCS: @(#) $Id: tclUnixPort.h,v 1.65 2008/03/11 22:26:27 das Exp $
*/
#ifndef _TCLUNIXPORT
#define _TCLUNIXPORT
+#ifndef MODULE_SCOPE
+#define MODULE_SCOPE extern
+#endif
+
/*
*---------------------------------------------------------------------------
* The following sets of #includes and #ifdefs are required to get Tcl to
@@ -540,6 +544,12 @@ extern char **environ;
# if defined(__x86_64__) && !defined(FIXED_RDAR_4685553)
# undef USE_VFORK
# endif /* __x86_64__ */
+/* Workaround problems with vfork() when building with llvm-gcc-4.2 */
+# if defined (__llvm__) && \
+ (__GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ > 2 || \
+ (__GNUC_MINOR__ == 2 && __GNUC_PATCHLEVEL__ > 0))))
+# undef USE_VFORK
+# endif /* __llvm__ */
#endif /* __APPLE__ */
/*
@@ -623,10 +633,6 @@ EXTERN int pthread_getattr_np _ANSI_ARGS_((pthread_t, pthread_attr_t *));
#include <pwd.h>
#include <grp.h>
-#ifndef MODULE_SCOPE
-#define MODULE_SCOPE extern
-#endif
-
MODULE_SCOPE struct passwd* TclpGetPwNam(const char *name);
MODULE_SCOPE struct group* TclpGetGrNam(const char *name);
MODULE_SCOPE struct passwd* TclpGetPwUid(uid_t uid);