Title: [226958] trunk/Source
Revision
226958
Author
[email protected]
Date
2018-01-15 15:49:02 -0800 (Mon, 15 Jan 2018)

Log Message

Improve use of ExportMacros
https://bugs.webkit.org/show_bug.cgi?id=181652

Reviewed by Konstantin Tokarev.

Source/bmalloc:

Disable BEXPORT on Linux ports.

* bmalloc/BExport.h: Check for BUSE(EXPORT_MACROS).
* bmalloc/BPlatform.h: Add BUSE(EXPORT_MACROS) and define it on macOS and iOS.

Source/_javascript_Core:

* API/JSBase.h: Update a comment.
* inspector/InspectorBackendDispatcher.h: Use a better, yet equivalent, WTF macro.
* runtime/JSExportMacros.h: Simplify the #defines in this file.

Source/WebCore:

Remove a comment.

* platform/PlatformExportMacros.h:

Source/WebCore/PAL:

Remove a comment.

* pal/ExportMacros.h:

Source/WTF:

* wtf/ExportMacros.h: Simplify the #defines in this file.
* wtf/Platform.h: Remove unneeded define. Remove comment that expects all ports to
  eventually enable the export macros. WPE will never want these. We don't currently want
  them for GTK either, though how we link GTK has been in flux recently.

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/API/JSBase.h (226957 => 226958)


--- trunk/Source/_javascript_Core/API/JSBase.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/_javascript_Core/API/JSBase.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -76,7 +76,7 @@
 #endif
 
 /* _javascript_ symbol exports */
-/* These rules should stay the same as in WebKit2/Shared/API/c/WKBase.h */
+/* These rules should stay the same as in WebKit/Shared/API/c/WKDeclarationSpecifiers.h */
 
 #undef JS_EXPORT
 #if defined(JS_NO_EXPORT)

Modified: trunk/Source/_javascript_Core/ChangeLog (226957 => 226958)


--- trunk/Source/_javascript_Core/ChangeLog	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-01-15 23:49:02 UTC (rev 226958)
@@ -1,3 +1,14 @@
+2018-01-15  Michael Catanzaro  <[email protected]>
+
+        Improve use of ExportMacros
+        https://bugs.webkit.org/show_bug.cgi?id=181652
+
+        Reviewed by Konstantin Tokarev.
+
+        * API/JSBase.h: Update a comment.
+        * inspector/InspectorBackendDispatcher.h: Use a better, yet equivalent, WTF macro.
+        * runtime/JSExportMacros.h: Simplify the #defines in this file.
+
 2018-01-15  JF Bastien  <[email protected]>
 
         Remove makePoisonedUnique

Modified: trunk/Source/_javascript_Core/inspector/InspectorBackendDispatcher.h (226957 => 226958)


--- trunk/Source/_javascript_Core/inspector/InspectorBackendDispatcher.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/_javascript_Core/inspector/InspectorBackendDispatcher.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -96,7 +96,7 @@
     void reportProtocolError(std::optional<long> relatedRequestId, CommonErrorCode, const String& errorMessage);
 
     template<typename T>
-    WTF_HIDDEN_DECLARATION
+    WTF_INTERNAL
     T getPropertyValue(JSON::Object*, const String& name, bool* out_optionalValueFound, T defaultValue, std::function<bool(JSON::Value&, T&)>, const char* typeName);
 
     int getInteger(JSON::Object*, const String& name, bool* valueFound);

Modified: trunk/Source/_javascript_Core/runtime/JSExportMacros.h (226957 => 226958)


--- trunk/Source/_javascript_Core/runtime/JSExportMacros.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/_javascript_Core/runtime/JSExportMacros.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -31,7 +31,6 @@
 
 #include <wtf/ExportMacros.h>
 
-// See note in wtf/Platform.h for more info on EXPORT_MACROS.
 #if USE(EXPORT_MACROS)
 
 #if defined(BUILDING_JavaScriptCore) || defined(STATICALLY_LINKED_WITH_JavaScriptCore)
@@ -40,30 +39,12 @@
 #define JS_EXPORT_PRIVATE WTF_IMPORT
 #endif
 
-#define JS_EXPORT_HIDDEN WTF_HIDDEN
+// FIXME: We should replace JS_EXPORTDATA with JS_EXPORT_PRIVATE.
 #define JS_EXPORTDATA JS_EXPORT_PRIVATE
-#define JS_EXPORTCLASS JS_EXPORT_PRIVATE
 
 #else // !USE(EXPORT_MACROS)
 
-#if USE(DECLSPEC_ATTRIBUTE)
-
-#if defined(BUILDING_JavaScriptCore) || defined(STATICALLY_LINKED_WITH_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)

Modified: trunk/Source/WTF/ChangeLog (226957 => 226958)


--- trunk/Source/WTF/ChangeLog	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WTF/ChangeLog	2018-01-15 23:49:02 UTC (rev 226958)
@@ -1,3 +1,15 @@
+2018-01-15  Michael Catanzaro  <[email protected]>
+
+        Improve use of ExportMacros
+        https://bugs.webkit.org/show_bug.cgi?id=181652
+
+        Reviewed by Konstantin Tokarev.
+
+        * wtf/ExportMacros.h: Simplify the #defines in this file.
+        * wtf/Platform.h: Remove unneeded define. Remove comment that expects all ports to
+          eventually enable the export macros. WPE will never want these. We don't currently want
+          them for GTK either, though how we link GTK has been in flux recently.
+
 2018-01-15  JF Bastien  <[email protected]>
 
         Remove makePoisonedUnique

Modified: trunk/Source/WTF/wtf/ExportMacros.h (226957 => 226958)


--- trunk/Source/WTF/wtf/ExportMacros.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WTF/wtf/ExportMacros.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -67,11 +67,6 @@
 
 #endif
 
-#if defined(BUILDING_WTF) || defined(STATICALLY_LINKED_WITH_WTF)
-#define WTF_IS_LINKED_IN_SAME_BINARY 1
-#endif
-
-// See note in wtf/Platform.h for more info on EXPORT_MACROS.
 #if USE(EXPORT_MACROS)
 
 #define WTF_EXPORT WTF_EXPORT_DECLARATION
@@ -78,42 +73,21 @@
 #define WTF_IMPORT WTF_IMPORT_DECLARATION
 #define WTF_HIDDEN WTF_IMPORT_DECLARATION
 
-// FIXME: When all ports are using the export macros, we should replace
-// WTF_EXPORTDATA with WTF_EXPORT_PRIVATE macros.
-#if defined(WTF_IS_LINKED_IN_SAME_BINARY)
-#define WTF_EXPORTDATA WTF_EXPORT
+#if defined(BUILDING_WTF) || defined(STATICALLY_LINKED_WITH_WTF)
+#define WTF_EXPORT_PRIVATE WTF_EXPORT
 #else
-#define WTF_EXPORTDATA WTF_IMPORT
+#define WTF_EXPORT_PRIVATE WTF_IMPORT
 #endif
 
 #else // !USE(EXPORT_MACROS)
 
-#if USE(DECLSPEC_ATTRIBUTE)
-#if defined(BUILDING_WTF) || defined(STATICALLY_LINKED_WITH_WTF)
-#define WTF_EXPORTDATA __declspec(dllexport)
-#else
-#define WTF_EXPORTDATA __declspec(dllimport)
-#endif
-#else // !OS(WINDOWS) || COMPILER(GCC_OR_CLANG)
-#define WTF_EXPORTDATA
-#endif
-
-#define WTF_EXPORTCLASS WTF_EXPORTDATA
-
 #define WTF_EXPORT
 #define WTF_IMPORT
 #define WTF_HIDDEN
+#define WTF_EXPORT_PRIVATE
 
 #endif // USE(EXPORT_MACROS)
 
-#if defined(WTF_IS_LINKED_IN_SAME_BINARY)
-#define WTF_EXPORT_PRIVATE WTF_EXPORT
-#else
-#define WTF_EXPORT_PRIVATE WTF_IMPORT
-#endif
-
+// FIXME: We should replace WTF_EXPORTDATA and WTF_EXPORT_STRING_API with WTF_EXPORT_PRIVATE.
+#define WTF_EXPORTDATA WTF_EXPORT_PRIVATE
 #define WTF_EXPORT_STRING_API WTF_EXPORT_PRIVATE
-
-#define WTF_EXPORT_HIDDEN WTF_HIDDEN
-
-#define HIDDEN_INLINE WTF_EXPORT_HIDDEN inline

Modified: trunk/Source/WTF/wtf/Platform.h (226957 => 226958)


--- trunk/Source/WTF/wtf/Platform.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WTF/wtf/Platform.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -1067,18 +1067,10 @@
 #include <wtf/glib/GTypedefs.h>
 #endif
 
-/* FIXME: This define won't be needed once #27551 is fully landed. However,
-   since most ports try to support sub-project independence, adding new headers
-   to WTF causes many ports to break, and so this way we can address the build
-   breakages one port at a time. */
 #if !defined(USE_EXPORT_MACROS) && (PLATFORM(COCOA) || OS(WINDOWS))
 #define USE_EXPORT_MACROS 1
 #endif
 
-#if !defined(USE_EXPORT_MACROS_FOR_TESTING) && (PLATFORM(GTK) || OS(WINDOWS))
-#define USE_EXPORT_MACROS_FOR_TESTING 1
-#endif
-
 #if PLATFORM(GTK) || PLATFORM(WPE)
 #define USE_UNIX_DOMAIN_SOCKETS 1
 #endif

Modified: trunk/Source/WebCore/ChangeLog (226957 => 226958)


--- trunk/Source/WebCore/ChangeLog	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WebCore/ChangeLog	2018-01-15 23:49:02 UTC (rev 226958)
@@ -1,3 +1,14 @@
+2018-01-15  Michael Catanzaro  <[email protected]>
+
+        Improve use of ExportMacros
+        https://bugs.webkit.org/show_bug.cgi?id=181652
+
+        Reviewed by Konstantin Tokarev.
+
+        Remove a comment.
+
+        * platform/PlatformExportMacros.h:
+
 2018-01-15  Konstantin Tokarev  <[email protected]>
 
         image-rendering should affect scaling of border-image

Modified: trunk/Source/WebCore/PAL/ChangeLog (226957 => 226958)


--- trunk/Source/WebCore/PAL/ChangeLog	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WebCore/PAL/ChangeLog	2018-01-15 23:49:02 UTC (rev 226958)
@@ -1,3 +1,14 @@
+2018-01-15  Michael Catanzaro  <[email protected]>
+
+        Improve use of ExportMacros
+        https://bugs.webkit.org/show_bug.cgi?id=181652
+
+        Reviewed by Konstantin Tokarev.
+
+        Remove a comment.
+
+        * pal/ExportMacros.h:
+
 2018-01-11  Keith Miller  <[email protected]>
 
         Rename ENABLE_ASYNC_ITERATION to ENABLE_JS_ASYNC_ITERATION

Modified: trunk/Source/WebCore/PAL/pal/ExportMacros.h (226957 => 226958)


--- trunk/Source/WebCore/PAL/pal/ExportMacros.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WebCore/PAL/pal/ExportMacros.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -31,7 +31,6 @@
 
 #include <wtf/ExportMacros.h>
 
-// See note in wtf/Platform.h for more info on EXPORT_MACROS.
 #if USE(EXPORT_MACROS)
 
 #if defined(BUILDING_PAL) || defined(STATICALLY_LINKED_WITH_PAL)

Modified: trunk/Source/WebCore/platform/PlatformExportMacros.h (226957 => 226958)


--- trunk/Source/WebCore/platform/PlatformExportMacros.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/WebCore/platform/PlatformExportMacros.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -31,7 +31,6 @@
 
 #include <wtf/ExportMacros.h>
 
-// See note in wtf/Platform.h for more info on EXPORT_MACROS.
 #if USE(EXPORT_MACROS)
 
 #if !PLATFORM(WIN)

Modified: trunk/Source/bmalloc/ChangeLog (226957 => 226958)


--- trunk/Source/bmalloc/ChangeLog	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/bmalloc/ChangeLog	2018-01-15 23:49:02 UTC (rev 226958)
@@ -1,3 +1,15 @@
+2018-01-15  Michael Catanzaro  <[email protected]>
+
+        Improve use of ExportMacros
+        https://bugs.webkit.org/show_bug.cgi?id=181652
+
+        Reviewed by Konstantin Tokarev.
+
+        Disable BEXPORT on Linux ports.
+
+        * bmalloc/BExport.h: Check for BUSE(EXPORT_MACROS).
+        * bmalloc/BPlatform.h: Add BUSE(EXPORT_MACROS) and define it on macOS and iOS.
+
 2017-12-20  Ting-Wei Lan  <[email protected]>
 
         Include stdio.h before using stderr and _IONBF

Modified: trunk/Source/bmalloc/bmalloc/BExport.h (226957 => 226958)


--- trunk/Source/bmalloc/bmalloc/BExport.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/bmalloc/bmalloc/BExport.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -25,5 +25,10 @@
 
 #pragma once
 
+#include "BPlatform.h"
+
+#if BUSE(EXPORT_MACROS)
 #define BEXPORT __attribute__((visibility("default")))
-
+#else
+#define BEXPORT
+#endif

Modified: trunk/Source/bmalloc/bmalloc/BPlatform.h (226957 => 226958)


--- trunk/Source/bmalloc/bmalloc/BPlatform.h	2018-01-15 22:56:24 UTC (rev 226957)
+++ trunk/Source/bmalloc/bmalloc/BPlatform.h	2018-01-15 23:49:02 UTC (rev 226958)
@@ -219,6 +219,10 @@
 #define BUSE_OS_LOG 1
 #endif
 
+#if !defined(BUSE_EXPORT_MACROS) && (BPLATFORM(MAC) || BPLATFORM(IOS))
+#define BUSE_EXPORT_MACROS 1
+#endif
+
 /* BUNUSED_PARAM */
 #if !defined(BUNUSED_PARAM)
 #define BUNUSED_PARAM(variable) (void)variable
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to