]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - config.h
JavaScriptCore-1097.3.3.tar.gz
[apple/javascriptcore.git] / config.h
index 66817612f6071240dd5d432e4aa98146f8ec807f..1e49c96bf832fcd64d12d6d6ccf72dba739df301 100644 (file)
--- a/config.h
+++ b/config.h
  */
 
 #if defined(HAVE_CONFIG_H) && HAVE_CONFIG_H
+#ifdef BUILDING_WITH_CMAKE
+#include "cmakeconfig.h"
+#else
 #include "autotoolsconfig.h"
 #endif
+#endif
 
 #include <wtf/Platform.h>
-
-#if PLATFORM(WIN_OS) && !defined(BUILDING_WX__) && !COMPILER(GCC)
-#if defined(BUILDING_JavaScriptCore) || defined(BUILDING_WTF)
-#define JS_EXPORTDATA __declspec(dllexport)
-#else
-#define JS_EXPORTDATA __declspec(dllimport)
+#include <wtf/ExportMacros.h>
+// WTF cannot depend on JSC even if USE(JSC).
+#if USE(JSC) && !defined(BUILDING_WTF)
+#include "JSExportMacros.h"
+#elif PLATFORM(CHROMIUM)
+// Chromium doesn't have runtime/ in its include paths.
+#include "runtime/JSExportMacros.h"
 #endif
-#else
-#define JS_EXPORTDATA
+
+#if OS(WINDOWS)
+
+#ifndef _WIN32_WINNT
+#define _WIN32_WINNT 0x0500
 #endif
 
-#if PLATFORM(WIN_OS)
+#ifndef WINVER
+#define WINVER 0x0500
+#endif
 
 // If we don't define these, they get defined in windef.h. 
 // We want to use std::min and std::max
 #define max max
 #define min min
 
-#if !COMPILER(MSVC7) && !PLATFORM(WINCE)
+#if !COMPILER(MSVC7_OR_LOWER) && !OS(WINCE)
 // We need to define this before the first #include of stdlib.h or it won't contain rand_s.
 #ifndef _CRT_RAND_S
 #define _CRT_RAND_S
 
 #endif
 
-#if PLATFORM(FREEBSD) || PLATFORM(OPENBSD)
-#define HAVE_PTHREAD_NP_H 1
-#endif
-
-/* FIXME: if all platforms have these, do they really need #defines? */
-#define HAVE_STDINT_H 1
-#define HAVE_STRING_H 1
-
 #define WTF_CHANGES 1
 
 #ifdef __cplusplus
 #endif
 
 // this breaks compilation of <QFontDatabase>, at least, so turn it off for now
-// Also generates errors on wx on Windows, because these functions
-// are used from wx headers. 
-#if !PLATFORM(QT) && !PLATFORM(WX)
+// Also generates errors on wx on Windows and QNX, because these functions
+// are used from wx and QNX headers. 
+#if !PLATFORM(QT) && !PLATFORM(WX) && !OS(QNX)
 #include <wtf/DisallowCType.h>
 #endif
 
+#if COMPILER(MSVC)
+#define SKIP_STATIC_CONSTRUCTORS_ON_MSVC 1
+#else
+#define SKIP_STATIC_CONSTRUCTORS_ON_GCC 1
+#endif