2009-06-07  David Kilzer  <ddkilzer@apple.com>

        Make JavaScriptCore compile for iPhone and iPhone Simulator

        Reviewed by Gavin Barraclough.

        * Configurations/Base.xcconfig: Split GCC_ENABLE_OBJC_GC on
        $(REAL_PLATFORM_NAME).  Added $(ARCHS_UNIVERSAL_IPHONE_OS) to
        VALID_ARCHS.  Added REAL_PLATFORM_NAME_iphoneos,
        REAL_PLATFORM_NAME_iphonesimulator, HAVE_DTRACE_iphoneos and
        HAVE_DTRACE_iphonesimulator variables.
        * Configurations/DebugRelase.xcconfig: Split ARCHS definition on
        $(REAL_PLATFORM_NAME).
        * Configurations/JavaScriptCore.xcconfig: Added
        EXPORTED_SYMBOLS_FILE_armv6 and EXPORTED_SYMBOLS_FILE_armv7
        variables.  Split OTHER_LDFLAGS into OTHER_LDFLAGS_BASE and
        OTHER_LDFLAGS_$(REAL_PLATFORM_NAME) since CoreServices.framework
        is only linked to on Mac OS X.
        * JavaScriptCore.xcodeproj/project.pbxproj: Removed references
        to CoreServices.framework since it's linked using OTHER_LDFLAGS
        in JavaScriptCore.xcconfig.
        * profiler/ProfilerServer.mm: Added #import for iPhone
        Simulator.
        (-[ProfilerServer init]): Conditionalize use of
        NSDistributedNotificationCenter to non-iPhone or iPhone
        Simulator.
        * wtf/FastMalloc.cpp:
        (WTF::TCMallocStats::): Build fix for iPhone and iPhone
        Simulator.
        * wtf/Platform.h: Defined PLATFORM(IPHONE) and
        PLATFORM(IPHONE_SIMULATOR).
        * wtf/ThreadingPthreads.cpp:
        (WTF::setThreadNameInternal): Build fix for iPhone and iPhone
        Simulator.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@44504 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JavaScriptCore/Configurations/Base.xcconfig b/JavaScriptCore/Configurations/Base.xcconfig
index aea38a3..db89a7b 100644
--- a/JavaScriptCore/Configurations/Base.xcconfig
+++ b/JavaScriptCore/Configurations/Base.xcconfig
@@ -28,7 +28,10 @@
 GCC_ENABLE_CPP_EXCEPTIONS = NO;
 GCC_ENABLE_CPP_RTTI = NO;
 GCC_ENABLE_OBJC_EXCEPTIONS = YES;
-GCC_ENABLE_OBJC_GC = supported;
+GCC_ENABLE_OBJC_GC = $(GCC_ENABLE_OBJC_GC_$(REAL_PLATFORM_NAME));
+GCC_ENABLE_OBJC_GC_iphoneos = NO;
+GCC_ENABLE_OBJC_GC_iphonesimulator = NO;
+GCC_ENABLE_OBJC_GC_macosx = supported;
 GCC_ENABLE_SYMBOL_SEPARATION = NO;
 GCC_FAST_OBJC_DISPATCH = YES;
 GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
@@ -46,7 +49,7 @@
 GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES;
 LINKER_DISPLAYS_MANGLED_NAMES = YES;
 PREBINDING = NO;
-VALID_ARCHS = i386 ppc x86_64 ppc64;
+VALID_ARCHS = i386 ppc x86_64 ppc64 $(ARCHS_UNIVERSAL_IPHONE_OS);
 WARNING_CFLAGS = $(WARNING_CFLAGS_$(CURRENT_ARCH));
 WARNING_CFLAGS_BASE = -Wall -Wextra -Wcast-align -Wcast-qual -Wchar-subscripts -Wextra-tokens -Wformat=2 -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings;
 WARNING_CFLAGS_ = $(WARNING_CFLAGS_BASE) -Wshorten-64-to-32;
@@ -60,6 +63,8 @@
 
 REAL_PLATFORM_NAME = $(REAL_PLATFORM_NAME_$(PLATFORM_NAME));
 REAL_PLATFORM_NAME_ = $(REAL_PLATFORM_NAME_macosx);
+REAL_PLATFORM_NAME_iphoneos = iphoneos;
+REAL_PLATFORM_NAME_iphonesimulator = iphonesimulator;
 REAL_PLATFORM_NAME_macosx = macosx;
 
 
@@ -94,6 +99,8 @@
 
 // HAVE_DTRACE is disabled on Leopard due to <rdar://problem/5628149>
 HAVE_DTRACE = $(HAVE_DTRACE_$(REAL_PLATFORM_NAME));
+HAVE_DTRACE_iphoneos = 1;
+HAVE_DTRACE_iphonesimulator = 0;
 HAVE_DTRACE_macosx = $(HAVE_DTRACE_macosx_$(MAC_OS_X_VERSION_MAJOR));
 HAVE_DTRACE_macosx_ = $(HAVE_DTRACE_macosx_1040);
 HAVE_DTRACE_macosx_1040 = 0;