summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--macosx/Tcl.xcodeproj/default.pbxuser1
-rw-r--r--macosx/Tcl.xcodeproj/project.pbxproj201
-rw-r--r--unix/tclUnixPort.h16
3 files changed, 210 insertions, 8 deletions
diff --git a/macosx/Tcl.xcodeproj/default.pbxuser b/macosx/Tcl.xcodeproj/default.pbxuser
index 47e6f9b..b135cfb 100644
--- a/macosx/Tcl.xcodeproj/default.pbxuser
+++ b/macosx/Tcl.xcodeproj/default.pbxuser
@@ -16,7 +16,6 @@
userBuildSettings = {
AUTOCONF = "/usr/local/bin/autoconf-2.59";
AUTOHEADER = "/usr/local/bin/autoheader-2.59";
- GCC = "${DEVELOPER_DIR}/usr/bin/gcc";
SYMROOT = "${SRCROOT}/../../build/tcl";
TCL_SRCROOT = "${SRCROOT}/../../tcl";
};
diff --git a/macosx/Tcl.xcodeproj/project.pbxproj b/macosx/Tcl.xcodeproj/project.pbxproj
index 3b7490b..d452303 100644
--- a/macosx/Tcl.xcodeproj/project.pbxproj
+++ b/macosx/Tcl.xcodeproj/project.pbxproj
@@ -933,7 +933,7 @@
F966C06F08F281DC005CB29B /* Frameworks */,
1AB674ADFE9D54B511CA2CBB /* Products */,
);
- comments = "Copyright (c) 2004-2007 Daniel A. Steffen <das@users.sourceforge.net>\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.29 2007/12/13 15:26:04 dgp Exp $\n";
+ comments = "Copyright (c) 2004-2008 Daniel A. Steffen <das@users.sourceforge.net>\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.30 2008/03/11 22:26:27 das Exp $\n";
name = Tcl;
path = .;
sourceTree = SOURCE_ROOT;
@@ -1964,7 +1964,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/bash;
- shellScript = "if [ -e \"${BUILT_PRODUCTS_DIR}/tclsh\" ]; then\n mv -f \"${BUILT_PRODUCTS_DIR}/tclsh\" \"${BUILT_PRODUCTS_DIR}/tclsh${VERSION}\"\nfi\ngnumake -C \"${TCL_SRCROOT}/macosx\" -j \"$(sysctl -n hw.activecpu)\" \"$(echo \"${ACTION}\" | sed -e s/build// -e s/clean/distclean/ -e s/..\\*/\\&-/)${MAKE_TARGET}\" CFLAGS_WARNING=\"${WARNING_CFLAGS}\" SYMROOT=\"${BUILT_PRODUCTS_DIR}\" OBJ_DIR=\"${OBJECT_FILE_DIR}\" INSTALL_ROOT=\"${DSTROOT}\" PREFIX=\"${PREFIX}\" BINDIR=\"${BINDIR}\" LIBDIR=\"${FRAMEWORK_INSTALL_PATH}\" MANDIR=\"${MANDIR}\" EXTRA_CONFIGURE_ARGS=\"${CONFIGURE_ARGS}\" ${EXTRA_MAKE_FLAGS}\nresult=$?\nif [ -e \"${BUILT_PRODUCTS_DIR}/tclsh${VERSION}\" ]; then\n mv -f \"${BUILT_PRODUCTS_DIR}/tclsh${VERSION}\" \"${BUILT_PRODUCTS_DIR}/tclsh\"\nfi\nif [ -e \"${BUILT_PRODUCTS_DIR}/tcltest\" ]; then\n\trm -f \"${BUILT_PRODUCTS_DIR}/tcltest\"\nfi\necho \"Done\"\nexit ${result}\n";
+ shellScript = "if [ -e \"${BUILT_PRODUCTS_DIR}/tclsh\" ]; then\n mv -f \"${BUILT_PRODUCTS_DIR}/tclsh\" \"${BUILT_PRODUCTS_DIR}/tclsh${VERSION}\"\nfi\ngnumake -C \"${TCL_SRCROOT}/macosx\" -j \"$(sysctl -n hw.activecpu)\" \"$(echo \"${ACTION}\" | sed -e s/build// -e s/clean/distclean/ -e s/..\\*/\\&-/)${MAKE_TARGET}\" CFLAGS_WARNING=\"${WARNING_CFLAGS}\" CFLAGS_OPTIMIZE=\"-O${GCC_OPTIMIZATION_LEVEL}\" SYMROOT=\"${BUILT_PRODUCTS_DIR}\" OBJ_DIR=\"${OBJECT_FILE_DIR}\" INSTALL_ROOT=\"${DSTROOT}\" PREFIX=\"${PREFIX}\" BINDIR=\"${BINDIR}\" LIBDIR=\"${FRAMEWORK_INSTALL_PATH}\" MANDIR=\"${MANDIR}\" EXTRA_CONFIGURE_ARGS=\"${CONFIGURE_ARGS}\" ${EXTRA_MAKE_FLAGS}\nresult=$?\nif [ -e \"${BUILT_PRODUCTS_DIR}/tclsh${VERSION}\" ]; then\n mv -f \"${BUILT_PRODUCTS_DIR}/tclsh${VERSION}\" \"${BUILT_PRODUCTS_DIR}/tclsh\"\nfi\nif [ -e \"${BUILT_PRODUCTS_DIR}/tcltest\" ]; then\n\trm -f \"${BUILT_PRODUCTS_DIR}/tcltest\"\nfi\necho \"Done\"\nexit ${result}\n";
showEnvVarsInLog = 0;
};
F9A5C5F508F651A2008AE941 /* ShellScript */ = {
@@ -2416,6 +2416,187 @@
};
name = Debug64bit;
};
+ F9988AB10D814C6500B6B03B /* Debug gcc42 */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = F97AE8330B65C87F00310EA2 /* Tcl-Debug.xcconfig */;
+ buildSettings = {
+ GCC_VERSION = 4.2;
+ MACOSX_DEPLOYMENT_TARGET = 10.5;
+ PREBINDING = NO;
+ };
+ name = "Debug gcc42";
+ };
+ F9988AB20D814C6500B6B03B /* Debug gcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tclsh;
+ };
+ name = "Debug gcc42";
+ };
+ F9988AB30D814C6500B6B03B /* Debug gcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CONFIGURE_ARGS = "tcl_cv_cc_visibility_hidden=no $(CONFIGURE_ARGS)";
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "__private_extern__=extern",
+ "$(GCC_PREPROCESSOR_DEFINITIONS)",
+ );
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+ PRODUCT_NAME = tcltest;
+ ZERO_LINK = YES;
+ };
+ name = "Debug gcc42";
+ };
+ F9988AB40D814C6500B6B03B /* Debug gcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tests;
+ TCLTEST_OPTIONS = "";
+ TCL_LIBRARY = "$(TCL_SRCROOT)/library";
+ TEST_RIG = "$(OBJROOT)/$(CONFIGURATION)/tcltest";
+ };
+ name = "Debug gcc42";
+ };
+ F9988AB50D814C7500B6B03B /* Debug llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = F97AE8330B65C87F00310EA2 /* Tcl-Debug.xcconfig */;
+ buildSettings = {
+ GCC = "$(DEVELOPER_DIR)/usr/bin/llvm-gcc";
+ GCC_VERSION = 4.2;
+ MACOSX_DEPLOYMENT_TARGET = 10.5;
+ PREBINDING = NO;
+ };
+ name = "Debug llvmgcc42";
+ };
+ F9988AB60D814C7500B6B03B /* Debug llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tclsh;
+ };
+ name = "Debug llvmgcc42";
+ };
+ F9988AB70D814C7500B6B03B /* Debug llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CONFIGURE_ARGS = "tcl_cv_cc_visibility_hidden=no $(CONFIGURE_ARGS)";
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "__private_extern__=extern",
+ "$(GCC_PREPROCESSOR_DEFINITIONS)",
+ );
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+ PRODUCT_NAME = tcltest;
+ ZERO_LINK = YES;
+ };
+ name = "Debug llvmgcc42";
+ };
+ F9988AB80D814C7500B6B03B /* Debug llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tests;
+ TCLTEST_OPTIONS = "";
+ TCL_LIBRARY = "$(TCL_SRCROOT)/library";
+ TEST_RIG = "$(OBJROOT)/$(CONFIGURATION)/tcltest";
+ };
+ name = "Debug llvmgcc42";
+ };
+ F9988BB10D81586D00B6B03B /* ReleaseUniversal gcc42 */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = F97AE82B0B65C69B00310EA2 /* Tcl-Release.xcconfig */;
+ buildSettings = {
+ ARCHS = (
+ ppc,
+ ppc64,
+ i386,
+ x86_64,
+ );
+ CFLAGS = "-arch ppc -arch ppc64 -arch i386 -arch x86_64 $(CFLAGS)";
+ GCC_VERSION = 4.2;
+ MACOSX_DEPLOYMENT_TARGET = 10.5;
+ OTHER_LDFLAGS = (
+ "-Wl,-no_arch_warnings",
+ "$(OTHER_LDFLAGS)",
+ );
+ PREBINDING = NO;
+ };
+ name = "ReleaseUniversal gcc42";
+ };
+ F9988BB20D81586D00B6B03B /* ReleaseUniversal gcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tclsh;
+ };
+ name = "ReleaseUniversal gcc42";
+ };
+ F9988BB30D81586D00B6B03B /* ReleaseUniversal gcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tcltest;
+ };
+ name = "ReleaseUniversal gcc42";
+ };
+ F9988BB40D81586D00B6B03B /* ReleaseUniversal gcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tests;
+ TCLTEST_OPTIONS = "";
+ TCL_LIBRARY = "$(TCL_SRCROOT)/library";
+ TEST_RIG = "$(OBJROOT)/$(CONFIGURATION)/tcltest";
+ };
+ name = "ReleaseUniversal gcc42";
+ };
+ F9988BB50D81587400B6B03B /* ReleaseUniversal llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = F97AE82B0B65C69B00310EA2 /* Tcl-Release.xcconfig */;
+ buildSettings = {
+ ARCHS = (
+ ppc,
+ i386,
+ x86_64,
+ );
+ CFLAGS = "-arch ppc -arch i386 -arch x86_64 $(CFLAGS)";
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ GCC = "$(DEVELOPER_DIR)/usr/bin/llvm-gcc";
+ GCC_OPTIMIZATION_LEVEL = 4;
+ GCC_VERSION = 4.2;
+ MACOSX_DEPLOYMENT_TARGET = 10.5;
+ OTHER_CFLAGS = "-emit-llvm";
+ OTHER_LDFLAGS = (
+ "-Wl,-no_arch_warnings",
+ "$(OTHER_LDFLAGS)",
+ );
+ PREBINDING = NO;
+ TCL_CONFIGURE_ARGS = "$(TCL_CONFIGURE_ARGS) --disable-dtrace";
+ };
+ name = "ReleaseUniversal llvmgcc42";
+ };
+ F9988BB60D81587400B6B03B /* ReleaseUniversal llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tclsh;
+ };
+ name = "ReleaseUniversal llvmgcc42";
+ };
+ F9988BB70D81587400B6B03B /* ReleaseUniversal llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tcltest;
+ };
+ name = "ReleaseUniversal llvmgcc42";
+ };
+ F9988BB80D81587400B6B03B /* ReleaseUniversal llvmgcc42 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = tests;
+ TCLTEST_OPTIONS = "";
+ TCL_LIBRARY = "$(TCL_SRCROOT)/library";
+ TEST_RIG = "$(OBJROOT)/$(CONFIGURATION)/tcltest";
+ };
+ name = "ReleaseUniversal llvmgcc42";
+ };
F99EE73B0BE835310060D4AF /* DebugUnthreaded */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -2635,6 +2816,8 @@
isa = XCConfigurationList;
buildConfigurations = (
F95CC8AC09158F3100EA5ACE /* Debug */,
+ F9988AB20D814C6500B6B03B /* Debug gcc42 */,
+ F9988AB60D814C7500B6B03B /* Debug llvmgcc42 */,
F95CC8AE09158F3100EA5ACE /* DebugNoFixZL */,
F99EE73B0BE835310060D4AF /* DebugUnthreaded */,
F93084370BB93D2800CD0B9E /* DebugMemCompile */,
@@ -2642,6 +2825,8 @@
F97AED1B0B660B2100310EA2 /* Debug64bit */,
F95CC8AD09158F3100EA5ACE /* Release */,
F91BCC4F093152310042A6BF /* ReleaseUniversal */,
+ F9988BB20D81586D00B6B03B /* ReleaseUniversal gcc42 */,
+ F9988BB60D81587400B6B03B /* ReleaseUniversal llvmgcc42 */,
F9EEED960C2FEFD300396116 /* ReleaseUniversal10.5SDK */,
F9DB62080B65ADA800A370FB /* ReleaseUniversal10.4uSDK */,
F9DB621F0B65AFDE00A370FB /* ReleasePPC10.3.9SDK */,
@@ -2654,6 +2839,8 @@
isa = XCConfigurationList;
buildConfigurations = (
F95CC8B109158F3100EA5ACE /* Debug */,
+ F9988AB30D814C6500B6B03B /* Debug gcc42 */,
+ F9988AB70D814C7500B6B03B /* Debug llvmgcc42 */,
F95CC8B309158F3100EA5ACE /* DebugNoFixZL */,
F99EE73D0BE835310060D4AF /* DebugUnthreaded */,
F93084380BB93D2800CD0B9E /* DebugMemCompile */,
@@ -2661,6 +2848,8 @@
F97AED1C0B660B2100310EA2 /* Debug64bit */,
F95CC8B209158F3100EA5ACE /* Release */,
F91BCC50093152310042A6BF /* ReleaseUniversal */,
+ F9988BB30D81586D00B6B03B /* ReleaseUniversal gcc42 */,
+ F9988BB70D81587400B6B03B /* ReleaseUniversal llvmgcc42 */,
F9EEED970C2FEFD300396116 /* ReleaseUniversal10.5SDK */,
F9DB62090B65ADA800A370FB /* ReleaseUniversal10.4uSDK */,
F9DB62200B65AFDE00A370FB /* ReleasePPC10.3.9SDK */,
@@ -2673,6 +2862,8 @@
isa = XCConfigurationList;
buildConfigurations = (
F95CC8B609158F3100EA5ACE /* Debug */,
+ F9988AB10D814C6500B6B03B /* Debug gcc42 */,
+ F9988AB50D814C7500B6B03B /* Debug llvmgcc42 */,
F95CC8B809158F3100EA5ACE /* DebugNoFixZL */,
F99EE7410BE835310060D4AF /* DebugUnthreaded */,
F930843A0BB93D2800CD0B9E /* DebugMemCompile */,
@@ -2680,6 +2871,8 @@
F97AED1E0B660B2100310EA2 /* Debug64bit */,
F95CC8B709158F3100EA5ACE /* Release */,
F91BCC51093152310042A6BF /* ReleaseUniversal */,
+ F9988BB10D81586D00B6B03B /* ReleaseUniversal gcc42 */,
+ F9988BB50D81587400B6B03B /* ReleaseUniversal llvmgcc42 */,
F9EEED990C2FEFD300396116 /* ReleaseUniversal10.5SDK */,
F9DB620A0B65ADA800A370FB /* ReleaseUniversal10.4uSDK */,
F9DB62210B65AFDE00A370FB /* ReleasePPC10.3.9SDK */,
@@ -2692,6 +2885,8 @@
isa = XCConfigurationList;
buildConfigurations = (
F97258A90A86873D00096C78 /* Debug */,
+ F9988AB40D814C6500B6B03B /* Debug gcc42 */,
+ F9988AB80D814C7500B6B03B /* Debug llvmgcc42 */,
F97258AB0A86873D00096C78 /* DebugNoFixZL */,
F99EE73F0BE835310060D4AF /* DebugUnthreaded */,
F93084390BB93D2800CD0B9E /* DebugMemCompile */,
@@ -2699,6 +2894,8 @@
F97AED1D0B660B2100310EA2 /* Debug64bit */,
F97258AA0A86873D00096C78 /* Release */,
F97258AC0A86873D00096C78 /* ReleaseUniversal */,
+ F9988BB40D81586D00B6B03B /* ReleaseUniversal gcc42 */,
+ F9988BB80D81587400B6B03B /* ReleaseUniversal llvmgcc42 */,
F9EEED980C2FEFD300396116 /* ReleaseUniversal10.5SDK */,
F97AED080B660A6C00310EA2 /* ReleaseUniversal10.4uSDK */,
F97AED0F0B660AA300310EA2 /* ReleasePPC10.3.9SDK */,
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);