JS_INLINE and WTF_INLINE should be visible from WebCore
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 2 Dec 2011 07:33:40 +0000 (07:33 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 2 Dec 2011 07:33:40 +0000 (07:33 +0000)
https://bugs.webkit.org/show_bug.cgi?id=73191

Source/JavaScriptCore:

- Moved Export related macro definitions from config.h to ExportMacros.h and JSExportMacros.h.
- Moved WTF_USE_JSC and WTF_USE_V8 from various config.h family to Platform.h.
- Replaced JS_EXPORTDATA in wtf moudule with newly introduced WTF_EXPORTDATA.

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

* JavaScriptCore.xcodeproj/project.pbxproj:
* config.h:
* runtime/JSExportMacros.h: Added.
* wtf/ExportMacros.h:
* wtf/Platform.h:
* wtf/WTFThreadData.h:
* wtf/text/AtomicString.h:
* wtf/text/StringStatics.cpp:

Source/JavaScriptGlue:

- Extracted export related macro definitions to ExportMacros.h and JSExportMacros.h
- Added forwarding headers which used in config.h

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

* ForwardingHeaders/runtime/JSExportMacros.h: Added.
* ForwardingHeaders/wtf/ExportMacros.h: Added.
* config.h:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

- Moved export related definitions from config.h
  to ExportMacros.h, JSExportMacros.h and PlatformExportMacros.h
- Added forwarding headers which are referred from config.h

No new tests. Only build related changes.

* ForwardingHeaders/runtime/JSExportMacros.h: Added.
* ForwardingHeaders/wtf/ExportMacros.h: Added.
* WebCore.xcodeproj/project.pbxproj:
* config.h:
* platform/PlatformExportMacros.h: Copied from Source/JavaScriptCore/wtf/ExportMacros.h.

Source/WebKit/cf:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* WebCoreSupport/WebInspectorClientCF.cpp:

Source/WebKit/mac:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* WebKitPrefix.h:

Source/WebKit/qt:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Added a INCLUDEPATH to make JSExportMacros.h visible.

* tests/MIMESniffing/MIMESniffing.pro

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* config.h:

Tools:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* DumpRenderTree/chromium/config.h:
* DumpRenderTree/config.h:
* TestWebKitAPI/config.h:
* WebKitTestRunner/config.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@101751 268f45cc-cd09-0410-ab3c-d52691b4dbfc

32 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
Source/JavaScriptCore/config.h
Source/JavaScriptCore/runtime/JSExportMacros.h [new file with mode: 0644]
Source/JavaScriptCore/wtf/ExportMacros.h
Source/JavaScriptCore/wtf/Platform.h
Source/JavaScriptCore/wtf/WTFThreadData.h
Source/JavaScriptCore/wtf/text/AtomicString.h
Source/JavaScriptCore/wtf/text/StringStatics.cpp
Source/JavaScriptGlue/ChangeLog
Source/JavaScriptGlue/ForwardingHeaders/runtime/JSExportMacros.h [new file with mode: 0644]
Source/JavaScriptGlue/ForwardingHeaders/wtf/ExportMacros.h [new file with mode: 0644]
Source/JavaScriptGlue/config.h
Source/WebCore/ChangeLog
Source/WebCore/ForwardingHeaders/runtime/JSExportMacros.h [new file with mode: 0644]
Source/WebCore/ForwardingHeaders/wtf/ExportMacros.h [new file with mode: 0644]
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/config.h
Source/WebCore/platform/PlatformExportMacros.h [new file with mode: 0644]
Source/WebKit/cf/ChangeLog
Source/WebKit/cf/WebCoreSupport/WebInspectorClientCF.cpp
Source/WebKit/mac/ChangeLog
Source/WebKit/mac/WebKitPrefix.h
Source/WebKit/qt/ChangeLog
Source/WebKit/qt/tests/MIMESniffing/MIMESniffing.pro
Source/WebKit2/ChangeLog
Source/WebKit2/config.h
Tools/ChangeLog
Tools/DumpRenderTree/chromium/config.h
Tools/DumpRenderTree/config.h
Tools/TestWebKitAPI/config.h
Tools/WebKitTestRunner/config.h

index 60c21b4..c36ce48 100644 (file)
@@ -1,3 +1,23 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        - Moved Export related macro definitions from config.h to ExportMacros.h and JSExportMacros.h.
+        - Moved WTF_USE_JSC and WTF_USE_V8 from various config.h family to Platform.h.
+        - Replaced JS_EXPORTDATA in wtf moudule with newly introduced WTF_EXPORTDATA.
+
+        Reviewed by Kevin Ollivier.
+
+        * JavaScriptCore.xcodeproj/project.pbxproj:
+        * config.h:
+        * runtime/JSExportMacros.h: Added.
+        * wtf/ExportMacros.h:
+        * wtf/Platform.h:
+        * wtf/WTFThreadData.h:
+        * wtf/text/AtomicString.h:
+        * wtf/text/StringStatics.cpp:
+
 2011-12-01  Michael Saboff  <msaboff@apple.com>
 
         Changes proposed for 73457 slow down Kraken json-parse-financial
index 79b6bf4..a4fd65d 100644 (file)
                A7A1F7AC0F252B3C00E184E2 /* ByteArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7A1F7AA0F252B3C00E184E2 /* ByteArray.cpp */; };
                A7A1F7AD0F252B3C00E184E2 /* ByteArray.h in Headers */ = {isa = PBXBuildFile; fileRef = A7A1F7AB0F252B3C00E184E2 /* ByteArray.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A7B48F490EE8936F00DCBDB6 /* ExecutableAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7B48DB60EE74CFC00DCBDB6 /* ExecutableAllocator.cpp */; };
+               A7B4ACAF1484C9CE00B38A36 /* JSExportMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = A7B4ACAE1484C9CE00B38A36 /* JSExportMacros.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A7BC0C82140608B000B1BB71 /* CheckedArithmetic.h in Headers */ = {isa = PBXBuildFile; fileRef = A7BC0C81140608B000B1BB71 /* CheckedArithmetic.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A7C1E8E4112E72EF00A37F98 /* JITPropertyAccess32_64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7C1E8C8112E701C00A37F98 /* JITPropertyAccess32_64.cpp */; };
                A7C40C0A130B057D00D002A1 /* BlockStack.h in Headers */ = {isa = PBXBuildFile; fileRef = A7C40C07130B057D00D002A1 /* BlockStack.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A7F993600FD7325100A0B2D0 /* JSONObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7F9935E0FD7325100A0B2D0 /* JSONObject.cpp */; };
                A7FB60A4103F7DC20017A286 /* PropertyDescriptor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7FB60A3103F7DC20017A286 /* PropertyDescriptor.cpp */; };
                A7FB61001040C38B0017A286 /* PropertyDescriptor.h in Headers */ = {isa = PBXBuildFile; fileRef = A7FB604B103F5EAB0017A286 /* PropertyDescriptor.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               A7FEE67614837B32005DC1A6 /* ExportMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = A7A275F514837A8E001DBB39 /* ExportMacros.h */; settings = {ATTRIBUTES = (Private, ); }; };
                BC02E90D0E1839DB000F9297 /* ErrorConstructor.h in Headers */ = {isa = PBXBuildFile; fileRef = BC02E9050E1839DB000F9297 /* ErrorConstructor.h */; };
                BC02E90F0E1839DB000F9297 /* ErrorPrototype.h in Headers */ = {isa = PBXBuildFile; fileRef = BC02E9070E1839DB000F9297 /* ErrorPrototype.h */; };
                BC02E9110E1839DB000F9297 /* NativeErrorConstructor.h in Headers */ = {isa = PBXBuildFile; fileRef = BC02E9090E1839DB000F9297 /* NativeErrorConstructor.h */; };
                A79EDB0811531CD60019E912 /* JSObjectRefPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSObjectRefPrivate.h; sourceTree = "<group>"; };
                A7A1F7AA0F252B3C00E184E2 /* ByteArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ByteArray.cpp; sourceTree = "<group>"; };
                A7A1F7AB0F252B3C00E184E2 /* ByteArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ByteArray.h; sourceTree = "<group>"; };
+               A7A275F514837A8E001DBB39 /* ExportMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExportMacros.h; sourceTree = "<group>"; };
                A7A7EE7411B98B8D0065A14F /* ASTBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASTBuilder.h; sourceTree = "<group>"; };
                A7A7EE7711B98B8D0065A14F /* SyntaxChecker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SyntaxChecker.h; sourceTree = "<group>"; };
                A7B48DB50EE74CFC00DCBDB6 /* ExecutableAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExecutableAllocator.h; sourceTree = "<group>"; };
                A7B48DB60EE74CFC00DCBDB6 /* ExecutableAllocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExecutableAllocator.cpp; sourceTree = "<group>"; };
+               A7B4ACAE1484C9CE00B38A36 /* JSExportMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSExportMacros.h; sourceTree = "<group>"; };
                A7BC0C81140608B000B1BB71 /* CheckedArithmetic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CheckedArithmetic.h; sourceTree = "<group>"; };
                A7C1E8C8112E701C00A37F98 /* JITPropertyAccess32_64.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JITPropertyAccess32_64.cpp; sourceTree = "<group>"; };
                A7C225CC139981F100FF1662 /* KeywordLookupGenerator.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = KeywordLookupGenerator.py; sourceTree = "<group>"; };
                                D75AF59512F8CB9500FC0ADF /* DynamicAnnotations.cpp */,
                                D75AF59612F8CB9500FC0ADF /* DynamicAnnotations.h */,
                                5135FAD612D26856003C083B /* Encoder.h */,
+                               A7A275F514837A8E001DBB39 /* ExportMacros.h */,
                                E48E0F2C0F82151700A8CA37 /* FastAllocBase.h */,
                                65E217B908E7EECC0023E5F6 /* FastMalloc.cpp */,
                                65E217BA08E7EECC0023E5F6 /* FastMalloc.h */,
                                BC1167D80E19BCC9008066DD /* JSCell.h */,
                                9788FC221471AD0C0068CE2D /* JSDateMath.cpp */,
                                9788FC231471AD0C0068CE2D /* JSDateMath.h */,
+                               A7B4ACAE1484C9CE00B38A36 /* JSExportMacros.h */,
                                F692A85E0255597D01FF60F7 /* JSFunction.cpp */,
                                F692A85F0255597D01FF60F7 /* JSFunction.h */,
                                E18E3A570DF9278C00D90B34 /* JSGlobalData.cpp */,
                                BC18C4000E16F5CD00B34460 /* ExceptionHelpers.h in Headers */,
                                86CAFEE31035DDE60028A609 /* Executable.h in Headers */,
                                A766B44F0EE8DCD1009518CA /* ExecutableAllocator.h in Headers */,
+                               A7FEE67614837B32005DC1A6 /* ExportMacros.h in Headers */,
                                E48E0F2D0F82151700A8CA37 /* FastAllocBase.h in Headers */,
                                BC18C4020E16F5CD00B34460 /* FastMalloc.h in Headers */,
                                A7F19ECE11DD490900931E70 /* FixedArray.h in Headers */,
                                BC18C41D0E16F5CD00B34460 /* JSClassRef.h in Headers */,
                                BC18C41E0E16F5CD00B34460 /* JSContextRef.h in Headers */,
                                148CD1D8108CF902008163C6 /* JSContextRefPrivate.h in Headers */,
+                               A7B4ACAF1484C9CE00B38A36 /* JSExportMacros.h in Headers */,
                                BC18C41F0E16F5CD00B34460 /* JSFunction.h in Headers */,
                                BC18C4200E16F5CD00B34460 /* JSGlobalData.h in Headers */,
                                BC18C4210E16F5CD00B34460 /* JSGlobalObject.h in Headers */,
index 57a82f6..d778f63 100644 (file)
 #endif
 
 #include <wtf/Platform.h>
-
-/* See note in wtf/Platform.h for more info on EXPORT_MACROS. */
-#if USE(EXPORT_MACROS)
-
 #include <wtf/ExportMacros.h>
-
-#if defined(BUILDING_JavaScriptCore) || defined(BUILDING_WTF)
-#define WTF_EXPORT_PRIVATE WTF_EXPORT
-#define WTF_EXPORT_HIDDEN WTF_HIDDEN
-#define JS_EXPORT_PRIVATE WTF_EXPORT
-#define JS_EXPORT_HIDDEN WTF_HIDDEN
-#else
-#define WTF_EXPORT_PRIVATE WTF_IMPORT
-#define WTF_EXPORT_HIDDEN
-#define JS_EXPORT_PRIVATE WTF_IMPORT
-#define JS_EXPORT_HIDDEN
-#endif
-
-#define JS_EXPORTDATA JS_EXPORT_PRIVATE
-#define JS_EXPORTCLASS JS_EXPORT_PRIVATE
-
-#else /* !USE(EXPORT_MACROS) */
-
-#if !PLATFORM(CHROMIUM) && OS(WINDOWS) && !defined(BUILDING_WX__) && !COMPILER(GCC)
-#if defined(BUILDING_JavaScriptCore) || defined(BUILDING_WTF)
-#define JS_EXPORTDATA __declspec(dllexport)
-#else
-#define JS_EXPORTDATA __declspec(dllimport)
+// WTF cannot depend on JSC even if USE(JSC).
+#if USE(JSC) && !defined(BUILDING_WTF)
+#include "JSExportMacros.h"
 #endif
-#define JS_EXPORTCLASS JS_EXPORTDATA
-#else
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#endif
-
-#define WTF_EXPORT_PRIVATE
-#define WTF_EXPORT_HIDDEN
-#define JS_EXPORT_PRIVATE
-#define JS_EXPORT_HIDDEN
-
-#endif /* USE(EXPORT_MACROS) */
-
-#define WTF_INLINE WTF_EXPORT_HIDDEN inline
-#define JS_INLINE JS_EXPORT_HIDDEN inline
 
 #if OS(WINDOWS)
 
 #else
 #define SKIP_STATIC_CONSTRUCTORS_ON_GCC 1
 #endif
-
-#if PLATFORM(CHROMIUM)
-#if !defined(WTF_USE_V8)
-#define WTF_USE_V8 1
-#endif
-#endif /* PLATFORM(CHROMIUM) */
-
-#if !defined(WTF_USE_V8)
-#define WTF_USE_V8 0
-#endif /* !defined(WTF_USE_V8) */
-
-/* Using V8 implies not using JSC and vice versa */
-#define WTF_USE_JSC !WTF_USE_V8
diff --git a/Source/JavaScriptCore/runtime/JSExportMacros.h b/Source/JavaScriptCore/runtime/JSExportMacros.h
new file mode 100644 (file)
index 0000000..5712aff
--- /dev/null
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2011 Apple Inc.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ *
+ * This file handles shared library symbol export decorations. It is recommended
+ * that all WebKit projects use these definitions so that symbol exports work
+ * properly on all platforms and compilers that WebKit builds under.
+ */
+
+#ifndef JSExportMacros_h
+#define JSExportMacros_h
+
+#include <wtf/Platform.h>
+#include <wtf/ExportMacros.h>
+
+// See note in wtf/Platform.h for more info on EXPORT_MACROS.
+#if USE(EXPORT_MACROS)
+
+#if defined(BUILDING_JavaScriptCore)
+#define JS_EXPORT_PRIVATE WTF_EXPORT
+#else
+#define JS_EXPORT_PRIVATE WTF_IMPORT
+#endif
+
+#define JS_EXPORT_HIDDEN WTF_HIDDEN
+#define JS_EXPORTDATA JS_EXPORT_PRIVATE
+#define JS_EXPORTCLASS JS_EXPORT_PRIVATE
+
+#else // !USE(EXPORT_MACROS)
+
+#if !PLATFORM(CHROMIUM) && OS(WINDOWS) && !defined(BUILDING_WX__) && !COMPILER(GCC)
+
+#if defined(BUILDING_JavaScriptCore)
+#define JS_EXPORTDATA __declspec(dllexport)
+#else
+#define JS_EXPORTDATA __declspec(dllimport)
+#endif
+
+#define JS_EXPORTCLASS JS_EXPORTDATA
+
+#else // !PLATFORM...
+
+#define JS_EXPORTDATA
+#define JS_EXPORTCLASS
+
+#endif // !PLATFORM...
+
+#define JS_EXPORT_PRIVATE
+#define JS_EXPORT_HIDDEN
+
+#endif // USE(EXPORT_MACROS)
+
+#define JS_INLINE JS_EXPORT_HIDDEN inline
+
+#endif // JSExportMacros_h
index cc8a459..a0854b6 100644 (file)
@@ -32,6 +32,9 @@
 
 #include "Platform.h"
 
+// See note in wtf/Platform.h for more info on EXPORT_MACROS.
+#if USE(EXPORT_MACROS)
+
 #if !PLATFORM(CHROMIUM) && OS(WINDOWS) && !COMPILER(GCC)
 #define WTF_EXPORT __declspec(dllexport)
 #define WTF_IMPORT __declspec(dllimport)
 #define WTF_HIDDEN
 #endif
 
-#endif /* ExportMacros_h */
+#else // !USE(EXPORT_MACROS)
+
+#define WTF_EXPORT
+#define WTF_IMPORT
+#define WTF_HIDDEN
+
+#endif // USE(EXPORT_MACROS)
+
+#if defined(BUILDING_WTF)
+#define WTF_EXPORT_PRIVATE WTF_EXPORT
+#else
+#define WTF_EXPORT_PRIVATE WTF_IMPORT
+#endif
+
+#define WTF_EXPORTDATA WTF_EXPORT_PRIVATE
+#define WTF_EXPORT_HIDDEN WTF_HIDDEN
+#define WTF_INLINE WTF_EXPORT_HIDDEN inline
+
+#endif // ExportMacros_h
index be0c64e..40c9cbe 100644 (file)
 #define WTF_USE_COREAUDIO 1
 #endif
 
+#if PLATFORM(CHROMIUM)
+#if !defined(WTF_USE_V8)
+#define WTF_USE_V8 1
+#endif
+#endif /* PLATFORM(CHROMIUM) */
+
+#if !defined(WTF_USE_V8)
+#define WTF_USE_V8 0
+#endif /* !defined(WTF_USE_V8) */
+
+/* Using V8 implies not using JSC and vice versa */
+#define WTF_USE_JSC !WTF_USE_V8
+
+
 #endif /* WTF_Platform_h */
index 4d03e18..81b817f 100644 (file)
@@ -120,7 +120,7 @@ private:
     StackBounds m_stackBounds;
 #endif
 
-    static JS_EXPORTDATA ThreadSpecific<WTFThreadData>* staticData;
+    static WTF_EXPORTDATA ThreadSpecific<WTFThreadData>* staticData;
     friend WTFThreadData& wtfThreadData();
     friend class AtomicStringTable;
 };
index 72c8cf4..43b38d1 100644 (file)
@@ -165,13 +165,13 @@ inline bool equalIgnoringCase(const String& a, const AtomicString& b) { return e
 // Define external global variables for the commonly used atomic strings.
 // These are only usable from the main thread.
 #ifndef ATOMICSTRING_HIDE_GLOBALS
-extern const JS_EXPORTDATA AtomicString nullAtom;
-extern const JS_EXPORTDATA AtomicString emptyAtom;
-extern const JS_EXPORTDATA AtomicString textAtom;
-extern const JS_EXPORTDATA AtomicString commentAtom;
-extern const JS_EXPORTDATA AtomicString starAtom;
-extern const JS_EXPORTDATA AtomicString xmlAtom;
-extern const JS_EXPORTDATA AtomicString xmlnsAtom;
+extern const WTF_EXPORTDATA AtomicString nullAtom;
+extern const WTF_EXPORTDATA AtomicString emptyAtom;
+extern const WTF_EXPORTDATA AtomicString textAtom;
+extern const WTF_EXPORTDATA AtomicString commentAtom;
+extern const WTF_EXPORTDATA AtomicString starAtom;
+extern const WTF_EXPORTDATA AtomicString xmlAtom;
+extern const WTF_EXPORTDATA AtomicString xmlnsAtom;
 
 inline AtomicString AtomicString::fromUTF8(const char* characters, size_t length)
 {
index 472d7c8..b6a02ae 100644 (file)
@@ -52,13 +52,13 @@ StringImpl* StringImpl::empty()
     return &emptyString;
 }
 
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, nullAtom)
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, emptyAtom, "")
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, textAtom, "#text")
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, commentAtom, "#comment")
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, starAtom, "*")
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, xmlAtom, "xml")
-JS_EXPORTDATA DEFINE_GLOBAL(AtomicString, xmlnsAtom, "xmlns")
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, nullAtom)
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, emptyAtom, "")
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, textAtom, "#text")
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, commentAtom, "#comment")
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, starAtom, "*")
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, xmlAtom, "xml")
+WTF_EXPORTDATA DEFINE_GLOBAL(AtomicString, xmlnsAtom, "xmlns")
 
 void AtomicString::init()
 {
index a50bad3..b696a74 100644 (file)
@@ -1,3 +1,17 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        - Extracted export related macro definitions to ExportMacros.h and JSExportMacros.h
+        - Added forwarding headers which used in config.h
+
+        Reviewed by Kevin Ollivier.
+
+        * ForwardingHeaders/runtime/JSExportMacros.h: Added.
+        * ForwardingHeaders/wtf/ExportMacros.h: Added.
+        * config.h:
+
 2011-11-29  David Levin  <levin@chromium.org>
 
         Add a way to revert a variable to its previous value after leaving a scope.
diff --git a/Source/JavaScriptGlue/ForwardingHeaders/runtime/JSExportMacros.h b/Source/JavaScriptGlue/ForwardingHeaders/runtime/JSExportMacros.h
new file mode 100644 (file)
index 0000000..7a71add
--- /dev/null
@@ -0,0 +1 @@
+#include <JavaScriptCore/JSExportMacros.h>
diff --git a/Source/JavaScriptGlue/ForwardingHeaders/wtf/ExportMacros.h b/Source/JavaScriptGlue/ForwardingHeaders/wtf/ExportMacros.h
new file mode 100644 (file)
index 0000000..50be070
--- /dev/null
@@ -0,0 +1 @@
+#include <JavaScriptCore/ExportMacros.h>
index 2e60237..6973b1e 100644 (file)
@@ -3,22 +3,5 @@
 #endif
 
 #include <wtf/Platform.h>
-
-#if PLATFORM(CHROMIUM)
-#if !defined(WTF_USE_V8)
-#define WTF_USE_V8 1
-#endif
-#endif /* PLATFORM(CHROMIUM) */
-
-#if !defined(WTF_USE_V8)
-#define WTF_USE_V8 0
-#endif /* !defined(WTF_USE_V8) */
-
-/* Using V8 implies not using JSC and vice versa */
-#define WTF_USE_JSC !WTF_USE_V8
-
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#define JS_EXPORT_PRIVATE
-#define WTF_EXPORT_PRIVATE
-
+#include <wtf/ExportMacros.h>
+#include <runtime/JSExportMacros.h>
index 3c29fa6..2899191 100644 (file)
@@ -1,3 +1,22 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        Reviewed by Kevin Ollivier.
+
+        - Moved export related definitions from config.h
+          to ExportMacros.h, JSExportMacros.h and PlatformExportMacros.h
+        - Added forwarding headers which are referred from config.h
+
+        No new tests. Only build related changes.
+
+        * ForwardingHeaders/runtime/JSExportMacros.h: Added.
+        * ForwardingHeaders/wtf/ExportMacros.h: Added.
+        * WebCore.xcodeproj/project.pbxproj:
+        * config.h:
+        * platform/PlatformExportMacros.h: Copied from Source/JavaScriptCore/wtf/ExportMacros.h.
+
 2011-12-01  Jon Lee  <jonlee@apple.com>
 
         [WK2] Add further support for notifications
diff --git a/Source/WebCore/ForwardingHeaders/runtime/JSExportMacros.h b/Source/WebCore/ForwardingHeaders/runtime/JSExportMacros.h
new file mode 100644 (file)
index 0000000..8912d6a
--- /dev/null
@@ -0,0 +1,4 @@
+#ifndef WebCore_FWD_JSExportMacros_h
+#define WebCore_FWD_JSExportMacros_h
+#include <JavaScriptCore/JSExportMacros.h>
+#endif
diff --git a/Source/WebCore/ForwardingHeaders/wtf/ExportMacros.h b/Source/WebCore/ForwardingHeaders/wtf/ExportMacros.h
new file mode 100644 (file)
index 0000000..b0b7e44
--- /dev/null
@@ -0,0 +1,4 @@
+#ifndef WebCore_FWD_ExportMacros_h
+#define WebCore_FWD_ExportMacros_h
+#include <JavaScriptCore/ExportMacros.h>
+#endif
index b3b21da..181e82c 100644 (file)
                A71878900B2D04AC00A16ECE /* DragControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = A718788F0B2D04AC00A16ECE /* DragControllerMac.mm */; };
                A71C30B81381265E00DBC351 /* ShadowInclusionSelector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A71C30B61381265E00DBC351 /* ShadowInclusionSelector.cpp */; };
                A71C30B91381265E00DBC351 /* ShadowInclusionSelector.h in Headers */ = {isa = PBXBuildFile; fileRef = A71C30B71381265E00DBC351 /* ShadowInclusionSelector.h */; };
+               A723F77B1484CA4C008C6DBE /* PlatformExportMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = A723F77A1484CA4C008C6DBE /* PlatformExportMacros.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A73F95FE12C97BFE0031AAF9 /* RoundedRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A73F95FC12C97BFE0031AAF9 /* RoundedRect.cpp */; };
                A73F95FF12C97BFE0031AAF9 /* RoundedRect.h in Headers */ = {isa = PBXBuildFile; fileRef = A73F95FD12C97BFE0031AAF9 /* RoundedRect.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A74BB76B13BDA86300FF7BF0 /* ExceptionCodePlaceholder.h in Headers */ = {isa = PBXBuildFile; fileRef = A74BB76A13BDA86300FF7BF0 /* ExceptionCodePlaceholder.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A71A70C911AFB02000989D6D /* HTMLMeterElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLMeterElement.idl; sourceTree = "<group>"; };
                A71C30B61381265E00DBC351 /* ShadowInclusionSelector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShadowInclusionSelector.cpp; sourceTree = "<group>"; };
                A71C30B71381265E00DBC351 /* ShadowInclusionSelector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShadowInclusionSelector.h; sourceTree = "<group>"; };
+               A723F77A1484CA4C008C6DBE /* PlatformExportMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlatformExportMacros.h; sourceTree = "<group>"; };
                A73F95FC12C97BFE0031AAF9 /* RoundedRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RoundedRect.cpp; sourceTree = "<group>"; };
                A73F95FD12C97BFE0031AAF9 /* RoundedRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RoundedRect.h; sourceTree = "<group>"; };
                A74BB76A13BDA86300FF7BF0 /* ExceptionCodePlaceholder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExceptionCodePlaceholder.h; sourceTree = "<group>"; };
                                BC772C4D0C4EB3040083285F /* MIMETypeRegistry.h */,
                                98EB1F941313FE0500D0E1EA /* NotImplemented.h */,
                                4B2708C50AF19EE40065127F /* Pasteboard.h */,
+                               A723F77A1484CA4C008C6DBE /* PlatformExportMacros.h */,
                                BC9585DF12F0989500755821 /* PlatformGestureEvent.h */,
                                935C476609AC4D4300A6AAB4 /* PlatformKeyboardEvent.h */,
                                932871BF0B20DEB70049035A /* PlatformMenuDescription.h */,
                                499B3EDD128DB50200E726C2 /* PlatformCAAnimation.h in Headers */,
                                499B3EC5128CCC4700E726C2 /* PlatformCALayer.h in Headers */,
                                493E5E0912D6420500020081 /* PlatformCALayerClient.h in Headers */,
+                               A723F77B1484CA4C008C6DBE /* PlatformExportMacros.h in Headers */,
                                BC9585E112F0989500755821 /* PlatformGestureEvent.h in Headers */,
                                935C476809AC4D4300A6AAB4 /* PlatformKeyboardEvent.h in Headers */,
                                932871C00B20DEB70049035A /* PlatformMenuDescription.h in Headers */,
index 4ba49c2..388db76 100644 (file)
 #include <WebCore/WebCoreHeaderDetection.h>
 #endif
 
-/* See note in wtf/Platform.h for more info on EXPORT_MACROS. */
-#if USE(EXPORT_MACROS)
-
 #include <wtf/ExportMacros.h>
-
-#if defined(BUILDING_JavaScriptCore) || defined(BUILDING_WTF)
-#define WTF_EXPORT_PRIVATE WTF_EXPORT
-#define JS_EXPORT_PRIVATE WTF_EXPORT
-#else
-#define WTF_EXPORT_PRIVATE WTF_IMPORT
-#define JS_EXPORT_PRIVATE WTF_IMPORT
+#if USE(JSC)
+#include <runtime/JSExportMacros.h>
 #endif
-
-#define JS_EXPORTDATA JS_EXPORT_PRIVATE
-#define JS_EXPORTCLASS JS_EXPORT_PRIVATE
-
-#if defined(BUILDING_WebCore) || defined(BUILDING_WebKit)
-#define WEBKIT_EXPORTDATA WTF_EXPORT
-#else
-#define WEBKIT_EXPORTDATA WTF_IMPORT
-#endif
-
-#else /* !USE(EXPORT_MACROS) */
-
-#if !PLATFORM(CHROMIUM) && OS(WINDOWS) && !defined(BUILDING_WX__) && !COMPILER(GCC)
-#if defined(BUILDING_JavaScriptCore) || defined(BUILDING_WTF)
-#define JS_EXPORTDATA __declspec(dllexport)
-#else
-#define JS_EXPORTDATA __declspec(dllimport)
-#endif
-#if defined(BUILDING_WebCore) || defined(BUILDING_WebKit)
-#define WEBKIT_EXPORTDATA __declspec(dllexport)
-#else
-#define WEBKIT_EXPORTDATA __declspec(dllimport)
-#endif
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-#define JS_EXPORTCLASS JS_EXPORTDATA
-#else
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#define WEBKIT_EXPORTDATA
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-#endif
-
-#endif /* USE(EXPORT_MACROS) */
+#include "PlatformExportMacros.h"
 
 #ifdef __APPLE__
 #define HAVE_FUNC_USLEEP 1
 
 #define WTF_USE_GOOGLEURL 1
 
-#if !defined(WTF_USE_V8)
-#define WTF_USE_V8 1
-#endif
-
 #endif /* PLATFORM(CHROMIUM) */
 
-#if !defined(WTF_USE_V8)
-#define WTF_USE_V8 0
-#endif /* !defined(WTF_USE_V8) */
-
-/* Using V8 implies not using JSC and vice versa */
-#if !defined(WTF_USE_JSC)
-#define WTF_USE_JSC !WTF_USE_V8
-#endif
-
 #if USE(CG)
 #ifndef CGFLOAT_DEFINED
 #ifdef __LP64__
diff --git a/Source/WebCore/platform/PlatformExportMacros.h b/Source/WebCore/platform/PlatformExportMacros.h
new file mode 100644 (file)
index 0000000..6c70813
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2011 Apple Inc.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ *
+ * This file handles shared library symbol export decorations. It is recommended
+ * that all WebKit projects use these definitions so that symbol exports work
+ * properly on all platforms and compilers that WebKit builds under.
+ */
+#ifndef PlatformExportMacros_h
+#define PlatformExportMacros_h
+
+#include <wtf/Platform.h>
+#include <wtf/ExportMacros.h>
+
+// See note in wtf/Platform.h for more info on EXPORT_MACROS.
+#if USE(EXPORT_MACROS)
+
+#if defined(BUILDING_WebCore) || defined(BUILDING_WebKit)
+#define WEBKIT_EXPORTDATA WTF_EXPORT
+#else
+#define WEBKIT_EXPORTDATA WTF_IMPORT
+#endif
+
+#else // !USE(EXPORT_MACROS)
+
+#if !PLATFORM(CHROMIUM) && OS(WINDOWS) && !defined(BUILDING_WX__) && !COMPILER(GCC)
+
+#if defined(BUILDING_WebCore) || defined(BUILDING_WebKit)
+#define WEBKIT_EXPORTDATA __declspec(dllexport)
+#else
+#define WEBKIT_EXPORTDATA __declspec(dllimport)
+#endif
+
+#else // !PLATFORM...
+
+#define WEBKIT_EXPORTDATA
+
+#endif // !PLATFORM...
+
+#endif // USE(EXPORT_MACROS)
+
+#endif // PlatformExportMacros_h
index 4a43c5b..c84515f 100644 (file)
@@ -1,3 +1,14 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        Reviewed by Kevin Ollivier.
+
+        Removed macro definitions which is now provided by Platform.h
+
+        * WebCoreSupport/WebInspectorClientCF.cpp:
+
 2011-08-03  Joseph Pecoraro  <joepeck@webkit.org>
 
         Web Inspector: Remove InspectorFrontendHost load/saveSessionSetting
index 847c784..80312b6 100644 (file)
 
 // FIXME: On Windows, we require all WebKit source files to include config.h
 // before including any other files. Failing to include config.h will leave
-// WTF_USE_CF and WTF_USE_JSC undefined, causing build failures in this 
+// WTF_USE_CF undefined, causing build failures in this 
 // file. But Mac doesn't have a config.h for WebKit, so we can't include the 
-// Windows one here. For now we can just define WTF_USE_CF,  WTF_USE_JSC, and
+// Windows one here. For now we can just define WTF_USE_CF and
 // WTF_USE_CFNETWORK manually, but we need a better long-term solution.
 #ifndef WTF_USE_CF
 #define WTF_USE_CF 1
 #endif
 
-#ifndef WTF_USE_JSC
-#define WTF_USE_JSC 1
-#endif
-
-// Leave these set to nothing until we switch Mac and Win ports over to 
-// using the export macros.
-#define JS_EXPORT_PRIVATE
-#define WTF_EXPORT_PRIVATE
-
-#if defined(WIN32) || defined(_WIN32)
-#ifndef WTF_USE_CFNETWORK
-#define WTF_USE_CFNETWORK 1
-#endif
-#if defined(BUILDING_JavaScriptCore) || defined(BUILDING_WTF)
-#define JS_EXPORTDATA __declspec(dllexport)
-#else
-#define JS_EXPORTDATA __declspec(dllimport)
-#endif
-#define JS_EXPORTCLASS JS_EXPORTDATA
-#else
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#endif
-
 #include "WebInspectorClient.h"
 
 #include <CoreFoundation/CoreFoundation.h>
index 6209a03..88c7b2c 100644 (file)
@@ -1,3 +1,14 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        Reviewed by Kevin Ollivier.
+
+        Removed macro definitions which is now provided by Platform.h
+
+        * WebKitPrefix.h:
+
 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
 
         Remove an unneeded argument from FrameLoaderClient::download
index 6d57815..7b79377 100644 (file)
@@ -71,24 +71,15 @@ typedef float CGFloat;
 #endif
 
 #include <wtf/Platform.h>
-
+#include <wtf/ExportMacros.h>
+#include <runtime/JSExportMacros.h>
+#include <WebCore/PlatformExportMacros.h>
 #include <WebCore/EmptyProtocolDefinitions.h>
 
-/* WebKit has no way to pull settings from WebCore/config.h for now */
-/* so we assume WebKit is always being compiled on top of JavaScriptCore */
-#define WTF_USE_JSC 1
-#define WTF_USE_V8 0
-
 /* Work around bug with C++ library that screws up Objective-C++ when exception support is disabled. */
 #undef try
 #undef catch
 
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#define WEBKIT_EXPORTDATA
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-
 #ifdef __cplusplus
 #include <wtf/FastMalloc.h>
 #endif
index 18ab324..bb72bd8 100644 (file)
@@ -1,3 +1,14 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        Reviewed by Kevin Ollivier.
+        
+        Added a INCLUDEPATH to make JSExportMacros.h visible.
+
+        * tests/MIMESniffing/MIMESniffing.pro
+
 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
 
         Remove an unneeded argument from FrameLoaderClient::download
index 4eba5c1..e960c0f 100644 (file)
@@ -9,7 +9,8 @@ HEADERS += \
 
 INCLUDEPATH += \
     ../../../../WebCore/platform/network \
-    ../../../../JavaScriptCore
+    ../../../../JavaScriptCore \
+    ../../../../JavaScriptCore/runtime
 
 debug {
     SOURCES += ../../../../JavaScriptCore/wtf/Assertions.cpp
index 6c1a1c4..c6e92a0 100644 (file)
@@ -1,3 +1,14 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        Reviewed by Kevin Ollivier.
+
+        Removed macro definitions which is now provided by Platform.h
+
+        * config.h:
+
 2011-12-01  Jon Lee  <jonlee@apple.com>
 
         [WK2] Add further support for notifications
index eb3bdaa..208641b 100644 (file)
 
 #include <wtf/DisallowCType.h>
 #include <wtf/Platform.h>
+#include <wtf/ExportMacros.h>
+#if USE(JSC)
+#include <runtime/JSExportMacros.h>
+#endif
 
 #ifdef __cplusplus
 #ifndef EXTERN_C_BEGIN
@@ -55,24 +59,7 @@ static const type& name() \
     return name##Value; \
 }
 
-#if defined (BUILDING_WITH_CMAKE)
-
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-
-#elif defined(BUILDING_QT__) || defined(BUILDING_GTK__)
-
-#define WTF_USE_JSC 1
-#define WTF_USE_V8 0
-
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-
-#elif defined(__APPLE__)
+#if defined(__APPLE__)
 
 #ifdef __OBJC__
 #define OBJC_CLASS @class
@@ -96,17 +83,6 @@ static const type& name() \
 #import <Cocoa/Cocoa.h>
 #endif
 
-/* WebKit has no way to pull settings from WebCore/config.h for now */
-/* so we assume WebKit is always being compiled on top of JavaScriptCore */
-#define WTF_USE_JSC 1
-#define WTF_USE_V8 0
-
-#define JS_EXPORTDATA
-#define JS_EXPORTCLASS
-#define WEBKIT_EXPORTDATA
-
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
 
 #include <WebCore/EmptyProtocolDefinitions.h>
 
index c5c05d6..a6f2591 100644 (file)
@@ -1,3 +1,17 @@
+2011-12-01  Hajime Morrita  <morrita@chromium.org>
+
+        JS_INLINE and WTF_INLINE should be visible from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=73191
+
+        Reviewed by Kevin Ollivier.
+
+        Removed macro definitions which is now provided by Platform.h
+
+        * DumpRenderTree/chromium/config.h:
+        * DumpRenderTree/config.h:
+        * TestWebKitAPI/config.h:
+        * WebKitTestRunner/config.h:
+
 2011-12-01  Hayato Ito  <hayato@chromium.org>
 
         Explicitly pass tolerance=0 to port.diff_image in case of RefTestMismatch failure.
index 79a79d8..57b3a54 100644 (file)
 #define DCHECK_NE(a, b) while (false && (a) != (b)) std::cerr
 
 #include <wtf/Platform.h>
+#include <wtf/ExportMacros.h>
 
 #if OS(WINDOWS) && !COMPILER(GCC)
 // Allow 'this' to be used in base member initializer list.
 #pragma warning(disable : 4355)
-// JS_EXPORTDATA is needed to inlucde wtf/WTFString.h.
-#define JS_EXPORTDATA __declspec(dllimport)
-#else
-#define JS_EXPORTDATA
 #endif
 
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-
 #endif // config_h
index 3c02cf0..d52cd84 100644 (file)
 #endif
 
 #include <wtf/Platform.h>
-
-/* See note in wtf/Platform.h for more info on EXPORT_MACROS. */
-#if USE(EXPORT_MACROS)
-
 #include <wtf/ExportMacros.h>
-
-#define WTF_EXPORT_PRIVATE WTF_IMPORT
-#define JS_EXPORT_PRIVATE WTF_IMPORT
-#define WEBKIT_EXPORTDATA WTF_IMPORT
-
-#define JS_EXPORTDATA JS_EXPORT_PRIVATE
-#define JS_EXPORTCLASS JS_EXPORT_PRIVATE
-
-#else /* !USE(EXPORT_MACROS) */
-
-#if OS(WINDOWS) && !COMPILER(GCC) && !defined(BUILDING_WX__)
-#define JS_EXPORTDATA __declspec(dllimport)
-#define WEBKIT_EXPORTDATA __declspec(dllimport)
-#else
-#define JS_EXPORTDATA
-#define WEBKIT_EXPORTDATA
+#if USE(JSC)
+#include <runtime/JSExportMacros.h>
 #endif
 
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-
-#endif /* USE(EXPORT_MACROS) */
-
 // On MSW, wx headers need to be included before windows.h is.
 // The only way we can always ensure this is if we include wx here.
 #if PLATFORM(WX)
index ba50126..b26a547 100644 (file)
  */
 
 #include <wtf/Platform.h>
+#include <wtf/ExportMacros.h>
+#if USE(JSC)
+#include <runtime/JSExportMacros.h>
+#endif
 
 #if __APPLE__
 
 
 #endif
 
-/* FIXME: Define these properly once USE(EXPORT_MACROS) is set for ports using this */
-#define JS_EXPORT_PRIVATE
-#define WTF_EXPORT_PRIVATE
-
-#define JS_EXPORTDATA
-
 #include <stdint.h>
 
 #if !PLATFORM(CHROMIUM)
index 38568ae..23a3ad7 100644 (file)
 #define WebKitTestRunner_config_h
 
 #include <wtf/Platform.h>
-
-/* See note in wtf/Platform.h for more info on EXPORT_MACROS. */
-#if USE(EXPORT_MACROS)
-
 #include <wtf/ExportMacros.h>
-
-#define WTF_EXPORT_PRIVATE WTF_IMPORT
-#define JS_EXPORT_PRIVATE WTF_IMPORT
-#define WEBKIT_EXPORTDATA WTF_IMPORT
-
-#define JS_EXPORTDATA JS_EXPORT_PRIVATE
-#define JS_EXPORTCLASS JS_EXPORT_PRIVATE
-
-#else /* !USE(EXPORT_MACROS) */
-
-#if OS(WINDOWS) && !COMPILER(GCC) && !defined(BUILDING_WX__)
-#define JS_EXPORTDATA __declspec(dllimport)
-#define WEBKIT_EXPORTDATA __declspec(dllimport)
-#else
-#define JS_EXPORTDATA
-#define WEBKIT_EXPORTDATA
+#if USE(JSC)
+#include <runtime/JSExportMacros.h>
 #endif
 
-#define WTF_EXPORT_PRIVATE
-#define JS_EXPORT_PRIVATE
-
-#endif /* USE(EXPORT_MACROS) */
-
 #if PLATFORM(WIN)
 #define WTF_USE_CF 1 
 #if defined(WIN_CAIRO)